1 -- File: AIS_ConcentricRelation.cdl
2 -- Created: Thu Dec 5 10:28:03 1996
3 -- Author: Flore Lantheaume/Odile Olivier
4 -- <odl@sacadox.paris1.matra-dtv.fr>
5 ---Copyright: Matra Datavision 1996
10 class ConcentricRelation from AIS inherits Relation from AIS
12 ---Purpose: A framework to define a constraint by a relation of
13 -- concentricity between two or more interactive datums.
14 -- The display of this constraint is also defined.
15 -- A plane is used to create an axis along which the
16 -- relation of concentricity can be extended.
20 PresentationManager3d from PrsMgr,
21 Presentation from Prs3d,
22 Selection from SelectMgr,
27 Transformation from Geom,
28 PresentationManager2d from PrsMgr,
29 GraphicObject from Graphic2d ,
33 Create (aFShape : Shape from TopoDS;
34 aSShape : Shape from TopoDS;
35 aPlane : Plane from Geom)
36 ---Purpose: Constructs the display object for concentric relations
38 -- This object is defined by the two shapes, aFShape
39 -- and aSShape and the plane aPlane.
40 -- aPlane is provided to create an axis along which the
41 -- relation of concentricity can be extended.
42 returns mutable ConcentricRelation from AIS;
44 -- Methods from PresentableObject
47 aPresentationManager: PresentationManager3d from PrsMgr;
48 aPresentation : mutable Presentation from Prs3d;
49 aMode : Integer from Standard= 0)
50 is redefined static private;
53 aProjector: Projector from Prs3d;
54 aPresentation: mutable Presentation from Prs3d)
55 is redefined static private;
58 aPresentationManager: PresentationManager2d from PrsMgr;
59 aPresentation: mutable GraphicObject from Graphic2d;
60 aMode: Integer from Standard = 0)
61 is redefined static private;
64 aProjector : Projector from Prs3d;
65 aTrsf : Transformation from Geom;
66 aPresentation : mutable Presentation from Prs3d)
68 ---Purpose: computes the presentation according to a point of view
69 -- given by <aProjector>.
70 -- To be Used when the associated degenerated Presentations
71 -- have been transformed by <aTrsf> which is not a Pure
72 -- Translation. The HLR Prs can't be deducted automatically
73 -- WARNING :<aTrsf> must be applied
74 -- to the object to display before computation !!!
76 ComputeTwoEdgesConcentric(me:mutable;
77 aPresentationManager: Presentation from Prs3d)
80 ComputeEdgeVertexConcentric(me:mutable;
81 aPresentationManager: Presentation from Prs3d)
84 ComputeTwoVerticesConcentric(me:mutable;
85 aPresentationManager: Presentation from Prs3d)
88 -- Methods from SelectableObject
90 ComputeSelection(me : mutable;
91 aSelection : mutable Selection from SelectMgr;
92 aMode : Integer from Standard)
97 myCenter : Pnt from gp;
98 myRad : Real from Standard;
102 end ConcentricRelation;