1 -- File: DsgPrs_AnglePresentation.cdl
2 -- Created: Tue Feb 7 12:13:12 1995
3 -- Author: Arnaud BOUZY
5 -- Modifs by ROB : Added one Method to take into Account Units in
7 ---Copyright: Matra Datavision 1995
9 class AnglePresentation from DsgPrs
10 ---Purpose: A framework for displaying angles.
12 Presentation from Prs3d,
17 ExtendedString from TCollection,
18 ArrowSide from DsgPrs,
24 Add( myclass; aPresentation: Presentation from Prs3d;
25 aDrawer: Drawer from Prs3d;
26 aVal: Real from Standard;
27 aText: ExtendedString from TCollection;
28 aCircle: Circ from gp;
29 aPosition: Pnt from gp;
31 VminCircle: Circ from gp;
32 VmaxCircle: Circ from gp;
33 aArrowSize: Real from Standard );
34 ---Purpose: Draws the presenation of the full angle of a cone.
35 -- VminCircle - a circle at V parameter = Vmin
36 -- VmaxCircle - a circle at V parameter = Vmax
37 -- aCircle - a circle at V parameter from projection of aPosition to axis of the cone
40 Add( myclass; aPresentation: Presentation from Prs3d;
41 aDrawer: Drawer from Prs3d;
42 theval: Real from Standard;
43 CenterPoint : Pnt from gp;
44 AttachmentPoint1: Pnt from gp;
45 AttachmentPoint2: Pnt from gp;
48 OffsetPoint: Pnt from gp);
49 ---Purpose: Draws the representation of the angle
50 -- defined by dir1 and dir2, centered on
51 -- CenterPoint, using the offset point OffsetPoint.
52 -- Lines are drawn to points AttachmentPoint1 and AttachmentPoint2
55 Add( myclass; aPresentation: Presentation from Prs3d;
56 aDrawer: Drawer from Prs3d;
57 theval: Real from Standard;
58 thevalstring : ExtendedString from TCollection;
59 CenterPoint : Pnt from gp;
60 AttachmentPoint1: Pnt from gp;
61 AttachmentPoint2: Pnt from gp;
64 OffsetPoint: Pnt from gp);
65 ---Purpose: Same as above, but <thevalstring> contains conversion
66 -- in Session units....
67 Add( myclass; aPresentation: Presentation from Prs3d;
68 aDrawer: Drawer from Prs3d;
69 theval: Real from Standard;
70 thevalstring : ExtendedString from TCollection;
71 CenterPoint : Pnt from gp;
72 AttachmentPoint1: Pnt from gp;
73 AttachmentPoint2: Pnt from gp;
76 OffsetPoint: Pnt from gp;
77 ArrowSide : ArrowSide from DsgPrs);
78 ---Purpose: Same as above, may add one or
79 -- two Arrows according to <ArrowSide> value
81 Add( myclass; aPresentation: Presentation from Prs3d;
82 aDrawer: Drawer from Prs3d;
83 theval: Real from Standard;
84 thevalstring : ExtendedString from TCollection;
85 CenterPoint : Pnt from gp;
86 AttachmentPoint1: Pnt from gp;
87 AttachmentPoint2: Pnt from gp;
91 OffsetPoint: Pnt from gp);
92 ---Purpose: Same as above, but axisdir contains the axis direction
93 -- useful for Revol that can be opened with 180 degrees
95 Add( myclass; aPresentation : Presentation from Prs3d;
96 aDrawer : Drawer from Prs3d;
97 theval : Real from Standard;
98 thevalstring : ExtendedString from TCollection;
99 CenterPoint : Pnt from gp;
100 AttachmentPoint1 : Pnt from gp;
101 AttachmentPoint2 : Pnt from gp;
104 axisdir : Dir from gp;
105 isPlane : Boolean from Standard;
106 AxisOfSurf : Ax1 from gp;
107 OffsetPoint : Pnt from gp;
108 ArrowSide : ArrowSide from DsgPrs);
109 ---Purpose: Same as above,may add one or
110 -- two Arrows according to <ArrowSide> value
112 Add( myclass; aPresentation: Presentation from Prs3d;
113 aDrawer:Drawer from Prs3d;
114 theval: Real from Standard;
115 theCenter,AttachmentPoint1:Pnt from gp;
117 ArrowSide: ArrowSide from DsgPrs);
118 ---Purpose: simple representation of a poor lonesome angle dimension
119 -- Draw a line from <theCenter> to <AttachmentPoint1>, then operates
120 -- a rotation around the perpmay add one or
121 -- two Arrows according to <ArrowSide> value. The
122 -- attributes (color,arrowsize,...) are driven by the Drawer.
125 end AnglePresentation;