b311480e |
1 | -- Created on: 2000-11-21 |
2 | -- Created by: Peter KURNEV |
3 | -- Copyright (c) 2000-2012 OPEN CASCADE SAS |
4 | -- |
5 | -- The content of this file is subject to the Open CASCADE Technology Public |
6 | -- License Version 6.5 (the "License"). You may not use the content of this file |
7 | -- except in compliance with the License. Please obtain a copy of the License |
8 | -- at http://www.opencascade.org and read it completely before using this file. |
9 | -- |
10 | -- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its |
11 | -- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France. |
12 | -- |
13 | -- The Original Code and all software distributed under the License is |
14 | -- distributed on an "AS IS" basis, without warranty of any kind, and the |
15 | -- Initial Developer hereby disclaims all such warranties, including without |
16 | -- limitation, any warranties of merchantability, fitness for a particular |
17 | -- purpose or non-infringement. Please see the License for the specific terms |
18 | -- and conditions governing the rights and limitations under the License. |
19 | |
7fd59977 |
20 | |
21 | |
22 | class SSInterference from BOPTools |
23 | inherits ShapeShapeInterference from BOPTools |
24 | |
25 | ---Purpose: class for storing a Face/Face interference |
26 | --- Each F/F interference contains information about |
27 | --- 1. myPBs - PaveBlocks (made from edges from the faces |
28 | --- that are IN-2D or ON-2D; |
29 | --- 2. myCurves- Sequence of curves of intersection; |
30 | --- 3. myTangentFacesFlag - The BOOL flag indicates that |
31 | --- the faces are SD in terms of the F/F Intersector. |
32 | --- 4. mySenseFlag - value that is equal +1 or -1 depending |
33 | --- on scalar product between normals to each face. This |
34 | --- valie is valid for the SDF only. |
35 | --- 5. myAlonePnts - contains 3D-points that are place |
36 | --- of intersection between the two faces |
37 | --- 6. myAloneVertices - contains indices of vertices |
38 | --- that correspond to the points myAlonePnts; |
39 | --- |
40 | |
41 | uses |
42 | |
43 | PaveBlock from BOPTools, |
44 | PaveSet from BOPTools, |
45 | ListOfPaveBlock from BOPTools, |
46 | SequenceOfCurves from BOPTools, |
47 | IndexedDataMapOfIntegerState from BOPTools, |
48 | |
49 | SequenceOfCurves from IntTools, |
50 | SequenceOfPntOn2Faces from IntTools, |
51 | |
52 | ListOfInteger from TColStd |
53 | -- |
54 | is |
55 | Create |
56 | returns SSInterference from BOPTools; |
57 | ---Purpose: |
58 | --- Empty constructor |
59 | --- |
60 | Create (anIndex1: Integer from Standard; |
61 | anIndex2: Integer from Standard; |
62 | aTolR3D : Real from Standard; |
63 | aTolR2D : Real from Standard; |
64 | aCurves : SequenceOfCurves from IntTools; |
65 | aPnts : SequenceOfPntOn2Faces from IntTools) |
66 | returns SSInterference from BOPTools; |
67 | ---Purpose: |
68 | --- Constructor |
69 | --- anIndex1, |
70 | --- anIndex2 see BOPTools_ShapeShapeInterference for details |
71 | --- aTolR3D - value of tolerance to reach in 3D-space |
72 | --- aTolR2D - value of tolerance to reach in 2D-space |
73 | --- aCurves see IntTools_Curve for details, please |
74 | --- |
75 | AppendBlock(me:out; |
76 | aPB:PaveBlock from BOPTools); |
77 | ---Purpose: |
78 | --- Modifier |
79 | --- |
80 | PaveBlocks(me) |
81 | returns ListOfPaveBlock from BOPTools; |
82 | ---C++: return const & |
83 | ---Purpose: |
84 | --- Selector |
85 | --- |
86 | NewPaveSet(me:out) |
87 | returns PaveSet from BOPTools; |
88 | ---C++: return & |
89 | ---Purpose: |
90 | --- Selector |
91 | --- |
92 | TolR3D (me) |
93 | returns Real from Standard; |
94 | ---Purpose: |
95 | --- Selector |
96 | --- |
97 | TolR2D (me) |
98 | returns Real from Standard; |
99 | ---Purpose: |
100 | --- Selector |
101 | --- |
102 | Curves(me:out) |
103 | returns SequenceOfCurves from BOPTools; |
104 | ---C++: return & |
105 | ---Purpose: |
106 | --- Selector |
107 | --- |
108 | SetTangentFacesFlag(me:out; |
109 | aFlag:Boolean from Standard); |
110 | ---Purpose: |
111 | --- Modifier |
112 | --- |
113 | IsTangentFaces(me) |
114 | returns Boolean from Standard; |
115 | ---Purpose: |
116 | --- Selector |
117 | --- |
118 | SetSenseFlag (me:out; |
119 | aFlag:Integer from Standard); |
120 | ---Purpose: |
121 | --- Modifier |
122 | --- |
123 | SenseFlag (me) |
124 | returns Integer from Standard; |
125 | ---Purpose: |
126 | --- Selector |
127 | --- |
128 | SetStatesMap(me:out; |
129 | aStatesMap: IndexedDataMapOfIntegerState from BOPTools); |
130 | ---Purpose: |
131 | --- Modifier |
132 | --- |
133 | StatesMap(me) |
134 | returns IndexedDataMapOfIntegerState from BOPTools; |
135 | ---C++: return const & |
136 | ---Purpose: |
137 | --- Selector |
138 | --- |
139 | SetAlonePnts(me:out; |
140 | aPnts:SequenceOfPntOn2Faces from IntTools); |
141 | ---Purpose: |
142 | --- Modifier |
143 | --- |
144 | AlonePnts(me) |
145 | returns SequenceOfPntOn2Faces from IntTools; |
146 | ---C++: return const & |
147 | ---Purpose: |
148 | --- Selector |
149 | --- |
150 | AloneVertices(me:out) |
151 | returns ListOfInteger from TColStd; |
152 | ---C++: return & |
153 | ---Purpose: |
154 | --- Selector |
155 | --- |
156 | --modified by NIZNHY-PKV Fri Jun 30 10:05:36 2006f |
157 | SetSharedEdges(me:out; |
158 | aLS:ListOfInteger from TColStd); |
159 | ---Purpose: |
160 | --- Modifier |
161 | --- |
162 | SharedEdges(me) |
163 | returns ListOfInteger from TColStd; |
164 | ---C++: return const & |
165 | ---Purpose: |
166 | --- Selector |
167 | --- |
168 | --modified by NIZNHY-PKV Fri Jun 30 10:05:41 2006t |
169 | |
170 | fields |
171 | |
172 | myPBs : ListOfPaveBlock from BOPTools is protected; |
173 | myNewPaveSet : PaveSet from BOPTools is protected; |
174 | myTolR3D : Real from Standard is protected; |
175 | myTolR2D : Real from Standard is protected; |
176 | |
177 | myCurves : SequenceOfCurves from BOPTools is protected; |
178 | myAlonePnts : SequenceOfPntOn2Faces from IntTools is protected; |
179 | myAloneVertices : ListOfInteger from TColStd is protected; |
180 | |
181 | myTangentFacesFlag : Boolean from Standard is protected; |
182 | mySenseFlag : Integer from Standard is protected; |
183 | myStatesMap : IndexedDataMapOfIntegerState from BOPTools is protected; |
184 | --modified by NIZNHY-PKV Fri Jun 30 10:02:27 2006f |
185 | mySharedEdges : ListOfInteger from TColStd is protected; |
186 | --modified by NIZNHY-PKV Fri Jun 30 10:02:34 2006 |
187 | end SSInterference; |