summaryrefslogtreecommitdiff
path: root/src/BOP/BOP_ShellFaceClassifier.cdl
blob: 598fc4f7fe0e60a4a91d943802b351945aecd591 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
-- File:	BOP_ShellFaceClassifier.cdl
-- Created:	Mon Jun 25 15:33:06 2001
-- Author:	Michael KLOKOV
--		<mkk@kurox>
---Copyright:	 Matra Datavision 2001

class ShellFaceClassifier from BOP inherits CompositeClassifier from BOP


    	---Purpose:  
	
    	--- The  algorithm is to classify loops that  
    	--  consist of faces and shells
	--- 
    
uses
    
    Shape               from TopoDS,
    Shell               from TopoDS,
    State               from TopAbs,
    Pnt                 from gp,
    Builder             from BRep, 
    BlockBuilder        from BOP,
    SolidClassifier     from BOP,
    DataMapOfShapeShape from TopTools

is
    Create(theBlockBuilder: BlockBuilder from BOP)
    	returns ShellFaceClassifier from BOP;
    	---Purpose: 
    	--- Creates a classifier in 3D space, to compare
    	--- a face with a set of faces,
    	--- a shell with a set of faces,
    	--- a shell with a shell
    	---
    Clear(me: in out);
    	---Purpose:  
    	--- Clears  contents of internal state of the object     
    	---
    CompareShapes(me : in out;  
    	    	  B1 : Shape from TopoDS;  
    	    	  B2 : Shape from TopoDS)
    	returns State from TopAbs
    	is redefined;
    	---Purpose:  
    	--- Classify shape <B1> with shape <B2> 
    	---
    CompareElementToShape(me : in out;  
    	    	  E : Shape from TopoDS;  
    	    	  B : Shape from TopoDS)
    
    	returns State from TopAbs
	is redefined;
    	---Purpose:  
    	--- Classify element <E> with shape <B> 
    	---
    ResetShape(me : in out;  
    	          B : Shape from TopoDS)
    	is redefined;
    	---Purpose:  
    	--- Prepare classification involving shape <B>
    	--- Calls ResetElement on first element of <B> 
    	---
    ResetElement(me : in out;  
    	          E : Shape from TopoDS)
	is redefined;
    	---Purpose:  
    	--- Prepare classification involving element <E>. 
    	---
    CompareElement(me : in out;  
    	    	  E : Shape from TopoDS);
    	---Purpose:  
    	--- Add element <E> in the set of elements used in classification.
    	---
    State(me : in out)  
    	returns State from TopAbs
	is redefined;
    	---Purpose:  
    	--- Returns state of classification of 2D point, defined by 
    	--- ResetElement, with the current set of elements,  
    	--- defined by Compare. 
    	---
    
fields

    myFirstCompare:    Boolean from Standard;
    myPoint:           Pnt from gp;
    myShell:           Shell from TopoDS;
    myBuilder:         Builder from BRep;
    mySolidClassifier: SolidClassifier from BOP; 
    myFaceShellMap :   DataMapOfShapeShape from TopTools;

end ShellFaceClassifier from BOP;