7fd59977 |
1 | -- File: AIS_MultipleConnectedShape.cdl |
2 | -- Created: Tue Apr 22 17:40:03 1997 |
3 | -- Author: Guest Design |
4 | -- <g_design@hankox.paris1.matra-dtv.fr> |
5 | ---Copyright: Matra Datavision 1997 |
6 | |
7 | class MultipleConnectedShape from AIS inherits MultipleConnectedInteractive from AIS |
8 | |
9 | |
10 | ---Purpose: Constructs an Interactive Object connected to a list of |
11 | -- Interactive Objects having a Shape. These include |
12 | -- AIS_Shape, and AIS_ConnectedShape. |
13 | -- Presentation of Hidden parts is calculated automatically. |
14 | -- You define the Interactive Object by gathering |
15 | -- together several other object presentations as in |
16 | -- AIS_MultipleConnectedInteractive. |
17 | |
18 | uses |
19 | |
20 | PresentationManager3d from PrsMgr, |
21 | PresentationManager2d from PrsMgr, |
22 | GraphicObject from Graphic2d, |
23 | Shape from TopoDS, |
24 | Projector from Prs3d, |
25 | Presentation from Prs3d, |
26 | Selection from SelectMgr, |
27 | Integer from Standard, |
28 | Transformation from Geom, |
29 | KindOfInteractive from AIS |
30 | |
31 | raises |
32 | NotImplemented from Standard |
33 | |
34 | is |
35 | |
36 | Create (aShape : Shape from TopoDS) |
37 | returns mutable MultipleConnectedShape from AIS; |
38 | ---Purpose: Initializes the shape aShape, a multiple connected |
39 | -- Interactive Object grouping different |
40 | -- projector-dependent representations of an entity. |
41 | Type(me) returns KindOfInteractive from AIS |
42 | is redefined virtual; |
43 | |
44 | Signature(me) returns Integer from Standard |
45 | is redefined virtual; |
46 | |
47 | AcceptShapeDecomposition(me) |
48 | returns Boolean from Standard is redefined virtual; |
49 | ---Purpose: Returns true is shape decomposition is accepted. |
50 | |
51 | Set(me:mutable;ashap : Shape from TopoDS) is static; |
52 | ---Purpose: Constructs the reference shape ashap. |
53 | ---C++: inline |
54 | |
55 | Shape(me) returns Shape from TopoDS ; |
56 | ---Purpose: Returns the shape which is constructed in Set. |
57 | ---C++: inline |
58 | ---C++: return const& |
59 | |
60 | |
61 | Compute(me:mutable; |
62 | aProjector : Projector from Prs3d; |
63 | aPresentation: mutable Presentation from Prs3d) |
64 | is redefined virtual protected; |
65 | |
66 | Compute(me:mutable; |
67 | aProjector : Projector from Prs3d; |
68 | aTrsf : Transformation from Geom; |
69 | aPresentation: mutable Presentation from Prs3d) |
70 | is redefined virtual protected; |
71 | |
72 | ComputeSelection(me:mutable; aSelection :mutable Selection from SelectMgr; |
73 | aMode : Integer from Standard) |
74 | is redefined virtual protected; |
75 | |
76 | |
77 | |
78 | Compute(me:mutable; |
79 | aProjector : Projector from Prs3d; |
80 | aPresentation: mutable Presentation from Prs3d; |
81 | aShape : Shape from TopoDS) |
82 | is private; |
83 | |
84 | Compute(me:mutable; |
85 | aPresentationManager : PresentationManager3d from PrsMgr; |
86 | aPresentation : mutable Presentation from Prs3d; |
87 | aMode : Integer from Standard = 0) |
88 | ---Level: Internal |
89 | ---Purpose: this method is redefined virtual; |
90 | -- when the instance is connected to another |
91 | -- InteractiveObject,this method doesn't |
92 | -- compute anything, but just uses the |
93 | -- presentation of this last object, with |
94 | -- a transformation if there's one stored. |
95 | is redefined virtual private; |
96 | |
97 | Compute(me:mutable; |
98 | aPresentationManager: PresentationManager2d from PrsMgr; |
99 | aPresentation: mutable GraphicObject from Graphic2d; |
100 | aMode: Integer from Standard = 0) |
101 | ---Level: Internal |
102 | ---Purpose: this method should fill the presentation according to the |
103 | -- enumerated mode of the application and to the display parameter |
104 | -- of the application. |
105 | |
106 | raises NotImplemented from Standard |
107 | is redefined; |
108 | |
109 | fields |
110 | myShape : Shape from TopoDS; -- celle qui sert au compute Hidden lines et selection |
111 | end MultipleConnectedShape; |