1 -- Created on: 2001-06-25
2 -- Created by: Michael KLOKOV
3 -- Copyright (c) 2001-2012 OPEN CASCADE SAS
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.
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.
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.
21 class ShellFaceClassifier from BOP inherits CompositeClassifier from BOP
26 --- The algorithm is to classify loops that
27 -- consist of faces and shells
37 BlockBuilder from BOP,
38 SolidClassifier from BOP,
39 DataMapOfShapeShape from TopTools
42 Create(theBlockBuilder: BlockBuilder from BOP)
43 returns ShellFaceClassifier from BOP;
45 --- Creates a classifier in 3D space, to compare
46 --- a face with a set of faces,
47 --- a shell with a set of faces,
48 --- a shell with a shell
52 --- Clears contents of internal state of the object
54 CompareShapes(me : in out;
55 B1 : Shape from TopoDS;
56 B2 : Shape from TopoDS)
57 returns State from TopAbs
60 --- Classify shape <B1> with shape <B2>
62 CompareElementToShape(me : in out;
63 E : Shape from TopoDS;
64 B : Shape from TopoDS)
66 returns State from TopAbs
69 --- Classify element <E> with shape <B>
71 ResetShape(me : in out;
72 B : Shape from TopoDS)
75 --- Prepare classification involving shape <B>
76 --- Calls ResetElement on first element of <B>
78 ResetElement(me : in out;
79 E : Shape from TopoDS)
82 --- Prepare classification involving element <E>.
84 CompareElement(me : in out;
85 E : Shape from TopoDS);
87 --- Add element <E> in the set of elements used in classification.
90 returns State from TopAbs
93 --- Returns state of classification of 2D point, defined by
94 --- ResetElement, with the current set of elements,
95 --- defined by Compare.
100 myFirstCompare: Boolean from Standard;
101 myPoint: Pnt from gp;
102 myShell: Shell from TopoDS;
103 myBuilder: Builder from BRep;
104 mySolidClassifier: SolidClassifier from BOP;
105 myFaceShellMap : DataMapOfShapeShape from TopTools;
107 end ShellFaceClassifier from BOP;