7fd59977 |
1 | -- File: TransferBRep_ShapeListBinder.cdl |
2 | -- Created: Mon Oct 3 10:50:11 1994 |
3 | -- Author: Christian CAILLET |
4 | -- <cky@stylox> |
5 | ---Copyright: Matra Datavision 1994 |
6 | |
7 | |
8 | class ShapeListBinder from TransferBRep inherits Binder from Transfer |
9 | |
10 | ---Purpose : This binder binds several (a list of) shapes with a starting |
11 | -- entity, when this entity itself corresponds to a simple list |
12 | -- of shapes. Each part is not seen as a sub-result of an |
13 | -- independant componant, but as an item of a built-in list |
14 | |
15 | uses CString, Type, |
16 | ShapeEnum from TopAbs, Shape from TopoDS , |
17 | Vertex from TopoDS, Edge from TopoDS, Wire from TopoDS, |
18 | Face from TopoDS, Shell from TopoDS, Solid from TopoDS, |
19 | CompSolid from TopoDS, Compound from TopoDS , |
20 | HSequenceOfShape from TopTools |
21 | |
22 | raises TypeMismatch, OutOfRange |
23 | |
24 | is |
25 | |
26 | Create returns mutable ShapeListBinder; |
27 | |
28 | Create (list : mutable HSequenceOfShape from TopTools) |
29 | returns mutable ShapeListBinder; |
30 | |
31 | IsMultiple (me) returns Boolean is redefined; |
32 | -- returns True if more than one result |
33 | |
34 | ResultType (me) returns Type; |
35 | -- returns TopoDS_Shape |
36 | |
37 | ResultTypeName (me) returns CString; |
38 | -- returns list(TopoDS_Shape) |
39 | |
40 | AddResult (me : mutable; res : Shape); |
41 | ---Purpose : Adds an item to the result list |
42 | |
43 | Result (me) returns HSequenceOfShape from TopTools; |
44 | |
45 | SetResult (me : mutable; num : Integer; res : Shape); |
46 | ---Purpose : Changes an already defined sub-result |
47 | |
48 | NbShapes (me) returns Integer; |
49 | |
50 | Shape (me; num : Integer) returns Shape |
51 | raises OutOfRange; |
52 | ---C++ : return const & |
53 | |
54 | ShapeType (me; num : Integer) returns ShapeEnum; |
55 | |
56 | -- different sub-types for the Result. Shape(num) returns a Shape |
57 | |
58 | Vertex (me; num : Integer) returns Vertex raises TypeMismatch, OutOfRange; |
59 | Edge (me; num : Integer) returns Edge raises TypeMismatch, OutOfRange; |
60 | Wire (me; num : Integer) returns Wire raises TypeMismatch, OutOfRange; |
61 | Face (me; num : Integer) returns Face raises TypeMismatch, OutOfRange; |
62 | Shell (me; num : Integer) returns Shell raises TypeMismatch, OutOfRange; |
63 | Solid (me; num : Integer) returns Solid raises TypeMismatch, OutOfRange; |
64 | CompSolid (me; num : Integer) returns CompSolid raises TypeMismatch, OutOfRange; |
65 | Compound (me; num : Integer) returns Compound raises TypeMismatch, OutOfRange; |
66 | |
67 | fields |
68 | |
69 | theres : HSequenceOfShape from TopTools; |
70 | |
71 | end ShapeListBinder; |