1 -- Created on: 1998-01-22
2 -- Created by: Sergey ZARITCHNY
3 -- Copyright (c) 1998-1999 Matra Datavision
4 -- Copyright (c) 1999-2014 OPEN CASCADE SAS
6 -- This file is part of Open CASCADE Technology software library.
8 -- This library is free software; you can redistribute it and/or modify it under
9 -- the terms of the GNU Lesser General Public License version 2.1 as published
10 -- by the Free Software Foundation, with special exception defined in the file
11 -- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12 -- distribution for complete text of the license and disclaimer of any warranty.
14 -- Alternatively, this file may be used under the terms of Open CASCADE
15 -- commercial license or contractual agreement.
17 class MinRadiusDimension from AIS inherits EllipseRadiusDimension from AIS
19 ---Purpose:-- Ellipse Min radius dimension of a Shape which
20 -- can be Edge or Face (planar or cylindrical(surface of
21 -- extrusion or surface of offset))
32 Presentation from Prs3d,
33 PresentationManager3d from PrsMgr,
34 Selection from SelectMgr,
36 Transformation from Geom,
37 ExtendedString from TCollection,
38 ArrowSide from DsgPrs,
39 KindOfSurface from AIS,
40 KindOfDimension from AIS
43 raises ConstructionError from Standard
48 Create (aShape : Shape from TopoDS;
49 aVal : Real from Standard;
50 aText : ExtendedString from TCollection)
51 ---Purpose: Max Ellipse radius dimension
52 -- Shape can be edge , planar face or cylindrical face
54 returns MinRadiusDimension from AIS;
56 Create (aShape : Shape from TopoDS;
57 aVal : Real from Standard;
58 aText : ExtendedString from TCollection;
59 aPosition : Pnt from gp;
60 aSymbolPrs : ArrowSide from DsgPrs;
61 anArrowSize : Real from Standard = 0.0)
62 ---Purpose: Max Ellipse radius dimension with position
63 -- Shape can be edge , planar face or cylindrical face
65 returns MinRadiusDimension from AIS;
70 -- Methods from PresentableObject
73 aPresentationManager: PresentationManager3d from PrsMgr;
74 aPresentation : Presentation from Prs3d;
75 aMode : Integer from Standard= 0)
79 aProjector: Projector from Prs3d;
80 aPresentation: Presentation from Prs3d)
81 is redefined static private;
84 aProjector : Projector from Prs3d;
85 aTrsf : Transformation from Geom;
86 aPresentation : Presentation from Prs3d)
88 ---Purpose: computes the presentation according to a point of view
89 -- given by <aProjector>.
90 -- To be Used when the associated degenerated Presentations
91 -- have been transformed by <aTrsf> which is not a Pure
92 -- Translation. The HLR Prs can't be deducted automatically
93 -- WARNING :<aTrsf> must be applied
94 -- to the object to display before computation !!!
96 -- Methods from SelectableObject
98 ComputeSelection(me : mutable;
99 aSelection : Selection from SelectMgr;
100 aMode : Integer from Standard)
101 is redefined private;
104 -- Computation private methods
107 ComputeEllipse(me: mutable;
108 aPresentation : Presentation from Prs3d)
111 ComputeArcOfEllipse(me: mutable;
112 aPresentation : Presentation from Prs3d )
117 myApexP : Pnt from gp;
118 myApexN : Pnt from gp;
119 myEndOfArrow : Pnt from gp;
121 end MinRadiusDimension;