1 -- Created on: 2000-05-18
2 -- Created by: Peter KURNEV
3 -- Copyright (c) 2000-2014 OPEN CASCADE SAS
5 -- This file is part of Open CASCADE Technology software library.
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
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.
13 -- Alternatively, this file may be used under the terms of Open CASCADE
14 -- commercial license or contractual agreement.
18 ---Purpose: Contains classes for intersection and classification
19 --- purposes and accompanying classes
57 ---Purpose: class provides the Edge/Edge algorithm
60 ---Purpose: class provides the Edge/Face algorithm
63 ---Purpose: class provides classification of a point in a face
65 class LineConstructor;
66 ---Purpose: class provides post-processing of results of
67 --- surfaces intersection
71 ---Purpose: auxiliary class for range management
73 class BaseRangeSample;
74 ---Purpose: base class for range index management
76 class CurveRangeSample;
77 ---Purpose: class for range index management of curve
79 class SurfaceRangeSample;
80 ---Purpose: class for range index management of surface
82 class CurveRangeLocalizeData;
84 class SurfaceRangeLocalizeData;
86 class BeanFaceIntersector;
87 ---Purpose: class provides computing ranges of parameters
88 --- of edge/face intersection.
92 ---Purpose: class is a container of
101 ---Purpose: class redefines TopolTool from Adaptor3d
104 ---Purpose: class provides the Face/Face algorithm
108 ---Purpose: class is a container of usefull geometrical and
109 --- topological algorithms
111 generic class CArray1;
113 --- I n s t a n t i a t i o n s
115 class SequenceOfPntOn2Faces instantiates
116 Sequence from TCollection(PntOn2Faces from IntTools);
118 class SequenceOfCurves instantiates
119 Sequence from TCollection(Curve from IntTools);
122 class SequenceOfRanges instantiates
123 Sequence from TCollection(Range from IntTools);
125 class CArray1OfInteger instantiates
126 CArray1(Integer from Standard);
128 class CArray1OfReal instantiates
129 CArray1(Real from Standard);
131 class SequenceOfRoots instantiates
132 Sequence from TCollection(Root from IntTools);
134 class Array1OfRoots instantiates
135 Array1 from TCollection (Root from IntTools);
137 class Array1OfRange instantiates
138 Array1 from TCollection (Range from IntTools);
140 class QuickSort instantiates
141 QuickSort from SortTools (Root from IntTools,
142 Array1OfRoots from IntTools,
143 Compare from IntTools);
145 class QuickSortRange instantiates
146 QuickSort from SortTools (Range from IntTools,
147 Array1OfRange from IntTools,
148 CompareRange from IntTools);
149 class SequenceOfCommonPrts instantiates
150 Sequence from TCollection(CommonPrt from IntTools);
152 class IndexedDataMapOfTransientAddress instantiates
153 IndexedDataMap from TCollection(Transient from Standard,
154 Address from Standard,
155 MapTransientHasher from TColStd);
157 --modified by NIZHNY-MKK Wed Oct 5 18:06:39 2005
158 class ListOfCurveRangeSample instantiates
159 List from TCollection(CurveRangeSample from IntTools);
161 class ListOfSurfaceRangeSample instantiates
162 List from TCollection(SurfaceRangeSample from IntTools);
164 class ListOfBox instantiates
165 List from TCollection(Box from Bnd);
167 class CurveRangeSampleMapHasher;
168 ---Purpose: class for range index management of curve
170 class SurfaceRangeSampleMapHasher;
172 class MapOfCurveSample instantiates
173 Map from TCollection(CurveRangeSample from IntTools,
174 CurveRangeSampleMapHasher from IntTools);
176 class MapOfSurfaceSample instantiates
177 Map from TCollection(SurfaceRangeSample from IntTools,
178 SurfaceRangeSampleMapHasher from IntTools);
180 class DataMapOfCurveSampleBox instantiates
181 DataMap from TCollection(CurveRangeSample from IntTools,
183 CurveRangeSampleMapHasher from IntTools);
185 class DataMapOfSurfaceSampleBox instantiates
186 DataMap from TCollection(SurfaceRangeSample from IntTools,
188 SurfaceRangeSampleMapHasher from IntTools);
189 -----------------------------------------------------
190 -- Block of static functions
191 -----------------------------------------------------
192 Length (E : Edge from TopoDS)
193 returns Real from Standard;
194 ---Purpose: returns the length of the edge;
196 RemoveIdenticalRoots (aSeq :out SequenceOfRoots from IntTools;
197 anEpsT: Real from Standard);
198 ---Purpose: Remove from the sequence aSeq the Roots that have
199 -- values ti and tj such as |ti-tj] < anEpsT.
201 SortRoots (aSeq :out SequenceOfRoots from IntTools;
202 anEpsT: Real from Standard);
203 ---Purpose: Sort the sequence aSeq of the Roots to arrange the
204 -- Roons in increasing order
205 FindRootStates (aSeq :out SequenceOfRoots from IntTools;
206 anEpsNull: Real from Standard);
207 ---Purpose: Find the states (before and after) for each Root
208 -- from the sequence aSeq
210 Parameter (P : Pnt from gp;
211 Curve : Curve from Geom;
212 aParm : out Real from Standard)
213 returns Integer from Standard;
215 GetRadius(C: Curve from BRepAdaptor;
216 t1,t3:Real from Standard;
217 R:out Real from Standard)
218 returns Integer from Standard;
221 PrepareArgs(C: in out Curve from BRepAdaptor;
222 tMax,tMin: Real from Standard;
223 Discret : Integer from Standard;
224 Deflect : Real from Standard;
225 anArgs : out CArray1OfReal from IntTools)
226 returns Integer from Standard;