b311480e |
1 | -- Created on: 1996-12-05 |
2 | -- Created by: Jean-Pierre COMBE/Odile Olivier |
3 | -- Copyright (c) 1996-1999 Matra Datavision |
973c2be1 |
4 | -- Copyright (c) 1999-2014 OPEN CASCADE SAS |
b311480e |
5 | -- |
973c2be1 |
6 | -- This file is part of Open CASCADE Technology software library. |
b311480e |
7 | -- |
d5f74e42 |
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 |
973c2be1 |
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. |
b311480e |
13 | -- |
973c2be1 |
14 | -- Alternatively, this file may be used under the terms of Open CASCADE |
15 | -- commercial license or contractual agreement. |
7fd59977 |
16 | |
17 | class PerpendicularRelation from AIS inherits Relation from AIS |
18 | ---Purpose: A framework to display constraints of perpendicularity |
19 | -- between two or more interactive datums. These |
20 | -- datums can be edges or faces. |
21 | uses Shape from TopoDS, |
22 | Presentation from Prs3d, |
23 | PresentationManager3d from PrsMgr, |
24 | Selection from SelectMgr, |
25 | Pnt from gp, |
26 | Dir from gp, |
27 | Projector from Prs3d, |
128cc8df |
28 | Transformation from Geom, |
7fd59977 |
29 | Plane from Geom |
30 | |
31 | is |
32 | Create (aFShape : Shape from TopoDS; |
33 | aSShape : Shape from TopoDS; |
34 | aPlane : Plane from Geom) |
35 | ---Purpose: Constructs an object to display constraints of |
36 | -- perpendicularity on shapes. |
37 | -- This object is defined by a first shape aFShape, a |
38 | -- second shape aSShape, and a plane aPlane. |
39 | -- aPlane is the plane of reference to show and test the |
40 | -- perpendicular relation between two shapes, at least |
41 | -- one of which has a revolved surface. |
6e33d3ce |
42 | returns PerpendicularRelation from AIS; |
7fd59977 |
43 | |
44 | Create (aFShape : Shape from TopoDS; |
45 | aSShape : Shape from TopoDS) |
46 | ---Purpose: Constructs an object to display constraints of |
47 | -- perpendicularity on shapes. |
48 | -- This object is defined by a first shape aFShape and a |
49 | -- second shape aSShape. |
6e33d3ce |
50 | returns PerpendicularRelation from AIS; |
7fd59977 |
51 | |
52 | -- -- Methods from PresentableObject |
53 | |
54 | Compute(me : mutable; |
55 | aPresentationManager: PresentationManager3d from PrsMgr; |
6e33d3ce |
56 | aPresentation : Presentation from Prs3d; |
7fd59977 |
57 | aMode : Integer from Standard= 0) |
58 | is redefined static private; |
59 | |
60 | Compute(me:mutable; |
61 | aProjector: Projector from Prs3d; |
6e33d3ce |
62 | aPresentation: Presentation from Prs3d) |
7fd59977 |
63 | is redefined static private; |
64 | |
7fd59977 |
65 | Compute(me : mutable; |
66 | aProjector : Projector from Prs3d; |
67 | aTrsf : Transformation from Geom; |
6e33d3ce |
68 | aPresentation : Presentation from Prs3d) |
7fd59977 |
69 | is redefined; |
70 | ---Purpose: computes the presentation according to a point of view |
71 | -- given by <aProjector>. |
72 | -- To be Used when the associated degenerated Presentations |
73 | -- have been transformed by <aTrsf> which is not a Pure |
74 | -- Translation. The HLR Prs can't be deducted automatically |
75 | -- WARNING :<aTrsf> must be applied |
76 | -- to the object to display before computation !!! |
77 | |
78 | -- Methods from SelectableObject |
79 | |
80 | ComputeSelection(me : mutable; |
6e33d3ce |
81 | aSelection : Selection from SelectMgr; |
7fd59977 |
82 | aMode : Integer from Standard)is private; |
83 | |
84 | |
85 | -- |
86 | -- Computation private methods |
87 | -- |
88 | |
89 | ComputeTwoFacesPerpendicular(me: mutable; |
6e33d3ce |
90 | aPresentation : Presentation from Prs3d) |
7fd59977 |
91 | is private; |
92 | |
93 | ComputeTwoEdgesPerpendicular(me: mutable; |
6e33d3ce |
94 | aPresentation : Presentation from Prs3d) |
7fd59977 |
95 | is private; |
96 | |
97 | |
98 | fields |
99 | |
100 | myFAttach : Pnt from gp; |
101 | mySAttach : Pnt from gp; |
102 | |
103 | end PerpendicularRelation; |
104 | |
105 | |