b311480e |
1 | -- Created on: 2000-05-18 |
2 | -- Created by: Peter KURNEV |
973c2be1 |
3 | -- Copyright (c) 2000-2014 OPEN CASCADE SAS |
b311480e |
4 | -- |
973c2be1 |
5 | -- This file is part of Open CASCADE Technology software library. |
b311480e |
6 | -- |
d5f74e42 |
7 | -- This library is free software; you can redistribute it and/or modify it under |
8 | -- the terms of the GNU Lesser General Public License version 2.1 as published |
973c2be1 |
9 | -- by the Free Software Foundation, with special exception defined in the file |
10 | -- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT |
11 | -- distribution for complete text of the license and disclaimer of any warranty. |
b311480e |
12 | -- |
973c2be1 |
13 | -- Alternatively, this file may be used under the terms of Open CASCADE |
14 | -- commercial license or contractual agreement. |
7fd59977 |
15 | |
16 | package IntTools |
17 | |
1e143abb |
18 | ---Purpose: Contains classes for intersection and classification |
19 | --- purposes and accompanying classes |
7fd59977 |
20 | uses |
21 | |
22 | TCollection, |
23 | TopoDS, |
24 | TopAbs, |
25 | TColStd, |
26 | BRepAdaptor, |
27 | BRepTopAdaptor, |
28 | SortTools, |
29 | TopTools, |
30 | math, |
31 | gp, |
32 | Bnd, |
33 | Adaptor3d, |
34 | GeomAdaptor, |
35 | Geom, |
36 | Geom2d, |
37 | GeomInt, |
38 | GeomAbs, |
39 | GeomAPI, |
40 | Extrema, |
41 | IntPatch, |
42 | IntSurf, |
43 | BRepClass3d, |
4f189102 |
44 | TColgp, |
3f524765 |
45 | MMgt, |
1e143abb |
46 | Geom2dHatch, |
47 | |
48 | BOPCol |
7fd59977 |
49 | |
50 | is |
1e143abb |
51 | class Context; |
52 | class ShrunkRange; |
53 | -- |
54 | class Range; |
55 | class CommonPrt; |
56 | class Root; |
57 | class Compare; |
58 | class CompareRange; |
7fd59977 |
59 | |
60 | class EdgeEdge; |
7fd59977 |
61 | |
62 | class EdgeFace; |
7fd59977 |
63 | |
64 | class FClass2d; |
7fd59977 |
65 | |
2a78ec6a |
66 | --class LineConstructor; |
7fd59977 |
67 | |
68 | ----- |
69 | class MarkedRangeSet; |
7fd59977 |
70 | |
7fd59977 |
71 | class BaseRangeSample; |
ff8178ef |
72 | |
7fd59977 |
73 | class CurveRangeSample; |
ff8178ef |
74 | |
7fd59977 |
75 | class SurfaceRangeSample; |
7fd59977 |
76 | |
77 | class CurveRangeLocalizeData; |
ff8178ef |
78 | |
7fd59977 |
79 | class SurfaceRangeLocalizeData; |
ff8178ef |
80 | |
7fd59977 |
81 | class BeanFaceIntersector; |
7fd59977 |
82 | |
ff8178ef |
83 | |
7fd59977 |
84 | class Curve; |
7fd59977 |
85 | |
86 | class PntOnFace; |
87 | class PntOn2Faces; |
88 | |
89 | class TopolTool; |
7fd59977 |
90 | |
91 | class FaceFace; |
7fd59977 |
92 | |
7fd59977 |
93 | class Tools; |
ff8178ef |
94 | |
7fd59977 |
95 | generic class CArray1; |
96 | --- |
7fd59977 |
97 | --- I n s t a n t i a t i o n s |
98 | --- |
99 | class SequenceOfPntOn2Faces instantiates |
1e143abb |
100 | Sequence from TCollection(PntOn2Faces from IntTools); |
7fd59977 |
101 | -- |
102 | class SequenceOfCurves instantiates |
1e143abb |
103 | Sequence from TCollection(Curve from IntTools); |
104 | |
7fd59977 |
105 | |
106 | class SequenceOfRanges instantiates |
1e143abb |
107 | Sequence from TCollection(Range from IntTools); |
7fd59977 |
108 | |
109 | class CArray1OfInteger instantiates |
1e143abb |
110 | CArray1(Integer from Standard); |
7fd59977 |
111 | |
112 | class CArray1OfReal instantiates |
1e143abb |
113 | CArray1(Real from Standard); |
114 | |
7fd59977 |
115 | class SequenceOfRoots instantiates |
1e143abb |
116 | Sequence from TCollection(Root from IntTools); |
117 | |
7fd59977 |
118 | class Array1OfRoots instantiates |
1e143abb |
119 | Array1 from TCollection (Root from IntTools); |
7fd59977 |
120 | |
121 | class Array1OfRange instantiates |
1e143abb |
122 | Array1 from TCollection (Range from IntTools); |
123 | |
7fd59977 |
124 | class QuickSort instantiates |
1e143abb |
125 | QuickSort from SortTools (Root from IntTools, |
126 | Array1OfRoots from IntTools, |
127 | Compare from IntTools); |
128 | |
7fd59977 |
129 | class QuickSortRange instantiates |
1e143abb |
130 | QuickSort from SortTools (Range from IntTools, |
131 | Array1OfRange from IntTools, |
132 | CompareRange from IntTools); |
7fd59977 |
133 | class SequenceOfCommonPrts instantiates |
1e143abb |
134 | Sequence from TCollection(CommonPrt from IntTools); |
135 | |
7fd59977 |
136 | class IndexedDataMapOfTransientAddress instantiates |
1e143abb |
137 | IndexedDataMap from TCollection(Transient from Standard, |
138 | Address from Standard, |
139 | MapTransientHasher from TColStd); |
7fd59977 |
140 | |
1e143abb |
141 | |
7fd59977 |
142 | class ListOfCurveRangeSample instantiates |
1e143abb |
143 | List from TCollection(CurveRangeSample from IntTools); |
7fd59977 |
144 | |
145 | class ListOfSurfaceRangeSample instantiates |
1e143abb |
146 | List from TCollection(SurfaceRangeSample from IntTools); |
7fd59977 |
147 | |
148 | class ListOfBox instantiates |
1e143abb |
149 | List from TCollection(Box from Bnd); |
150 | |
7fd59977 |
151 | class CurveRangeSampleMapHasher; |
ff8178ef |
152 | |
7fd59977 |
153 | class SurfaceRangeSampleMapHasher; |
154 | |
155 | class MapOfCurveSample instantiates |
1e143abb |
156 | Map from TCollection(CurveRangeSample from IntTools, |
7fd59977 |
157 | CurveRangeSampleMapHasher from IntTools); |
1e143abb |
158 | |
7fd59977 |
159 | class MapOfSurfaceSample instantiates |
1e143abb |
160 | Map from TCollection(SurfaceRangeSample from IntTools, |
161 | SurfaceRangeSampleMapHasher from IntTools); |
7fd59977 |
162 | |
163 | class DataMapOfCurveSampleBox instantiates |
1e143abb |
164 | DataMap from TCollection(CurveRangeSample from IntTools, |
165 | Box from Bnd, |
166 | CurveRangeSampleMapHasher from IntTools); |
7fd59977 |
167 | |
168 | class DataMapOfSurfaceSampleBox instantiates |
1e143abb |
169 | DataMap from TCollection(SurfaceRangeSample from IntTools, |
170 | Box from Bnd, |
171 | SurfaceRangeSampleMapHasher from IntTools); |
7fd59977 |
172 | ----------------------------------------------------- |
173 | -- Block of static functions |
174 | ----------------------------------------------------- |
175 | Length (E : Edge from TopoDS) |
1e143abb |
176 | returns Real from Standard; |
177 | ---Purpose: returns the length of the edge; |
7fd59977 |
178 | |
179 | RemoveIdenticalRoots (aSeq :out SequenceOfRoots from IntTools; |
1e143abb |
180 | anEpsT: Real from Standard); |
7fd59977 |
181 | ---Purpose: Remove from the sequence aSeq the Roots that have |
182 | -- values ti and tj such as |ti-tj] < anEpsT. |
183 | |
184 | SortRoots (aSeq :out SequenceOfRoots from IntTools; |
1e143abb |
185 | anEpsT: Real from Standard); |
7fd59977 |
186 | ---Purpose: Sort the sequence aSeq of the Roots to arrange the |
1e143abb |
187 | -- Roons in increasing order |
188 | |
7fd59977 |
189 | FindRootStates (aSeq :out SequenceOfRoots from IntTools; |
190 | anEpsNull: Real from Standard); |
191 | ---Purpose: Find the states (before and after) for each Root |
192 | -- from the sequence aSeq |
193 | |
194 | Parameter (P : Pnt from gp; |
1e143abb |
195 | Curve : Curve from Geom; |
196 | aParm : out Real from Standard) |
197 | returns Integer from Standard; |
7fd59977 |
198 | |
199 | GetRadius(C: Curve from BRepAdaptor; |
1e143abb |
200 | t1,t3:Real from Standard; |
201 | R:out Real from Standard) |
7fd59977 |
202 | returns Integer from Standard; |
1e143abb |
203 | |
7fd59977 |
204 | |
205 | PrepareArgs(C: in out Curve from BRepAdaptor; |
206 | tMax,tMin: Real from Standard; |
1e143abb |
207 | Discret : Integer from Standard; |
208 | Deflect : Real from Standard; |
209 | anArgs : out CArray1OfReal from IntTools) |
7fd59977 |
210 | returns Integer from Standard; |
211 | |
212 | end IntTools; |
213 | |
214 | |
215 | |