1 -- File : AIS2D_ProjShape.cdl
2 -- Created : April 2000
4 ---Copyright: Matra Datavision 2000
6 class ProjShape from AIS2D inherits InteractiveObject from AIS2D
8 ---Purpose: Constructs presentable and selectable projection of
9 -- TopoDS_Shape on the view plane
15 ListOfShape from TopTools,
16 Projector from HLRAlgo,
18 PolyAlgo from HLRBRep,
19 SetOfSegments from Graphic2d,
20 SetOfCurves from GGraphic2d
24 Create returns mutable ProjShape from AIS2D;
25 ---Purpose: Initializes the projected shape
27 Create( aProjector: Projector from HLRAlgo;
28 nbIsos: Integer from Standard = 3;
29 isPolyAlgo: Boolean from Standard = Standard_False;
30 visHL: Boolean from Standard = Standard_True )
31 returns mutable ProjShape from AIS2D;
32 ---Purpose: Initializes the projected shape with projector <aProjector>, number isolines <nbIsos>
34 Add( me: mutable; aShape: Shape from TopoDS );
36 ---Purpose: Adds <aShape> to the list of projected shapes.
38 SetProjector( me: mutable; aProjector: Projector from HLRAlgo );
40 ---Purpose: sets the projector <aProjector>
42 Projector( me ) returns Projector from HLRAlgo;
44 ---Purpose: Indicates the projector
46 SetNbIsos( me: mutable; aNbIsos: Integer from Standard );
50 SetPolyAlgo( me: mutable; aIsPoly: Boolean from Standard = Standard_False );
52 ---Purpose: sets the projection of the shape as a polyhedral
53 -- simplification of the shape if <aIsPoly> is True
55 SetHLMode( me: mutable; aIsHLM: Boolean from Standard = Standard_True );
57 ---Purpose: Sets the hidden line mode if <aIsHLM> is True
59 IsHLMode( me ) returns Boolean from Standard;
61 ---Purpose: Indicates the hidden lines are visible
63 GetNbIsos( me ) returns Integer from Standard;
65 ---Purpose: Indicates the number of isolines
67 GetIsPoly( me ) returns Boolean from Standard;
69 ---Purpose: Indicates the shape was extracted as Algo or PolyAlgo
71 GetPrimitives( me ) returns Line from Graphic2d;
73 ---Purpose: Returns the set of primitives are included into Shape,
74 -- except hidden lines
76 GetHLPrimitives( me ) returns Line from Graphic2d;
78 ---Purpose: Returns the set of hidden line primitives are included into Shape
80 ShowEdges( me: mutable;
81 aSharp, aSmooth, aSewn, anOutline, anIsoline: Boolean from Standard = Standard_True );
83 ---Purpose: Sets the flags for display of all types of edges
86 ----------------------------------------------------------------------------
87 ---Category: Private methods
89 CreateAlgo( me: mutable ) is private;
90 CreatePolyAlgo( me: mutable ) is private;
91 DrawSegments( me: mutable; aShape: Shape from TopoDS;
92 aSofS: in out SetOfSegments from Graphic2d ) is private;
93 DrawCurves( me: mutable; aShape: Shape from TopoDS;
94 aSofC: in out SetOfCurves from GGraphic2d ) is private;
96 ComputeShape( me: mutable ) is private;
100 myListOfShape : ListOfShape from TopTools;
101 myProjector : Projector from HLRAlgo;
102 myAlgo : Algo from HLRBRep;
103 myPolyAlgo : PolyAlgo from HLRBRep;
104 myNbIsos : Integer from Standard;
105 myIsPolyAlgo : Boolean from Standard;
106 myIsHiddenLine : Boolean from Standard;
107 myESharp : Boolean from Standard;
108 myESmooth : Boolean from Standard;
109 myESewn : Boolean from Standard;
110 myEOutline : Boolean from Standard;
111 myEIsoline : Boolean from Standard;
113 mySetOfSegments : SetOfSegments from Graphic2d;
114 myHSetOfSegments : SetOfSegments from Graphic2d;
115 mySetOfCurves : SetOfCurves from GGraphic2d;
116 myHSetOfCurves : SetOfCurves from GGraphic2d;