7fd59977 |
1 | -- File: AIS_MinRadiusDimension.cdl |
2 | -- Created: Thu Jan 22 08:58:42 1998 |
3 | -- Author: Sergey ZARITCHNY |
4 | -- <szy@androx.nnov.matra-dtv.fr> |
5 | ---Copyright: Matra Datavision 1998 |
6 | |
7 | |
8 | class MinRadiusDimension from AIS inherits EllipseRadiusDimension from AIS |
9 | |
10 | ---Purpose:-- Ellipse Min radius dimension of a Shape which |
11 | -- can be Edge or Face (planar or cylindrical(surface of |
12 | -- extrusion or surface of offset)) |
13 | |
14 | uses |
15 | |
16 | Shape from TopoDS, |
17 | Elips from gp, |
18 | Pnt from gp, |
19 | Pln from gp, |
20 | Ellipse from Geom, |
21 | Plane from Geom, |
22 | Surface from Geom, |
23 | Presentation from Prs3d, |
24 | PresentationManager3d from PrsMgr, |
25 | Selection from SelectMgr, |
26 | Projector from Prs3d, |
27 | Transformation from Geom, |
28 | PresentationManager2d from PrsMgr, |
29 | GraphicObject from Graphic2d, |
30 | ExtendedString from TCollection, |
31 | ArrowSide from DsgPrs, |
32 | KindOfSurface from AIS, |
33 | KindOfDimension from AIS |
34 | |
35 | |
36 | raises ConstructionError from Standard |
37 | |
38 | is |
39 | |
40 | |
41 | Create (aShape : Shape from TopoDS; |
42 | aVal : Real from Standard; |
43 | aText : ExtendedString from TCollection) |
44 | ---Purpose: Max Ellipse radius dimension |
45 | -- Shape can be edge , planar face or cylindrical face |
46 | -- |
47 | returns mutable MinRadiusDimension from AIS; |
48 | |
49 | Create (aShape : Shape from TopoDS; |
50 | aVal : Real from Standard; |
51 | aText : ExtendedString from TCollection; |
52 | aPosition : Pnt from gp; |
53 | aSymbolPrs : ArrowSide from DsgPrs; |
54 | anArrowSize : Real from Standard = 0.0) |
55 | ---Purpose: Max Ellipse radius dimension with position |
56 | -- Shape can be edge , planar face or cylindrical face |
57 | -- |
58 | returns mutable MinRadiusDimension from AIS; |
59 | |
60 | |
61 | |
62 | |
63 | -- Methods from PresentableObject |
64 | |
65 | Compute(me : mutable; |
66 | aPresentationManager: PresentationManager3d from PrsMgr; |
67 | aPresentation : mutable Presentation from Prs3d; |
68 | aMode : Integer from Standard= 0) |
69 | is redefined private; |
70 | |
71 | Compute(me:mutable; |
72 | aProjector: Projector from Prs3d; |
73 | aPresentation: mutable Presentation from Prs3d) |
74 | is redefined static private; |
75 | |
76 | Compute(me:mutable; |
77 | aPresentationManager: PresentationManager2d from PrsMgr; |
78 | aPresentation: mutable GraphicObject from Graphic2d; |
79 | aMode: Integer from Standard = 0) |
80 | is redefined static private; |
81 | |
82 | Compute(me : mutable; |
83 | aProjector : Projector from Prs3d; |
84 | aTrsf : Transformation from Geom; |
85 | aPresentation : mutable Presentation from Prs3d) |
86 | is redefined; |
87 | ---Purpose: computes the presentation according to a point of view |
88 | -- given by <aProjector>. |
89 | -- To be Used when the associated degenerated Presentations |
90 | -- have been transformed by <aTrsf> which is not a Pure |
91 | -- Translation. The HLR Prs can't be deducted automatically |
92 | -- WARNING :<aTrsf> must be applied |
93 | -- to the object to display before computation !!! |
94 | |
95 | -- Methods from SelectableObject |
96 | |
97 | ComputeSelection(me : mutable; |
98 | aSelection : mutable Selection from SelectMgr; |
99 | aMode : Integer from Standard) |
100 | is redefined private; |
101 | |
102 | -- |
103 | -- Computation private methods |
104 | -- |
105 | |
106 | ComputeEllipse(me: mutable; |
107 | aPresentation : mutable Presentation from Prs3d) |
108 | is private; |
109 | |
110 | ComputeArcOfEllipse(me: mutable; |
111 | aPresentation : mutable Presentation from Prs3d ) |
112 | is private; |
113 | |
114 | fields |
115 | |
116 | myApexP : Pnt from gp; |
117 | myApexN : Pnt from gp; |
118 | myEndOfArrow : Pnt from gp; |
119 | |
120 | end MinRadiusDimension; |