cf4c5e1cc715d478f5ec8be7eaf674c5ef342dbd
[occt.git] / src / BRepMesh / BRepMesh_IncrementalMesh.cdl
1 -- File:        BRepMesh_IncrementalMesh.cdl
2 -- Created:     Tue Jun 20 10:19:28 1995
3 -- Author:      Stagiaire Alain JOURDAIN
4 --              <ajo@phobox>
5 ---Copyright:    Matra Datavision 1995
6
7
8 class IncrementalMesh from BRepMesh
9         inherits DiscretRoot from BRepMesh 
10         
11        ---Purpose: Builds the mesh of a shape with respect of their
12        --          correctly triangulated parts
13        --  
14
15
16 uses   
17     Box from Bnd,
18     Shape from TopoDS,
19     Face  from TopoDS,
20     Edge  from TopoDS,
21     MapOfShape  from TopTools,
22     IndexedDataMapOfShapeListOfShape from TopTools,
23     DataMapOfShapeReal from TopTools,
24     FastDiscret from BRepMesh,
25     Status      from BRepMesh
26
27 is      
28     Create
29         returns IncrementalMesh from BRepMesh;
30     ---C++: alias "Standard_EXPORT virtual ~BRepMesh_IncrementalMesh();"
31         
32     Create(S      : Shape   from TopoDS;
33            D      : Real    from Standard;
34            Relatif: Boolean from Standard = Standard_False;
35            Ang    : Real    from Standard = 0.5)
36            ---Purpose: if the  boolean    <Relatif>   is  True,    the
37            --          deflection used   for the polygonalisation   of
38            --          each edge will be <D> * Size of Edge.
39            --          the deflection used for the faces will be the maximum
40            --          deflection of their edges.
41        returns IncrementalMesh from BRepMesh;
42
43     SetRelative(me:out;  
44             theFlag : Boolean from Standard); 
45       
46     Relative(me)  
47         returns Boolean from Standard; 
48       
49     Init(me:out) 
50         is redefined protected;  
51      
52     Perform(me:out) 
53         is redefined; 
54      
55     Update(me:out;  
56             S : Shape from TopoDS)
57             ---Purpose: Builds the incremental mesh of the shape
58        is static; 
59        
60     IsModified(me) returns Boolean from Standard
61        is static; 
62      
63     Update(me : in out;
64               E  : Edge from TopoDS)
65             ---Purpose: Locate a correct discretisation if it exists
66             --          Set no one otherwise
67        is static private;
68      
69     Update(me : in out;
70               F  : Face from TopoDS) 
71             ---Purpose: if the face is  not correctly triangulated, or
72             --          if  one  of its edges  is  to be discretisated
73             --          correctly, the triangulation  of this face  is
74             --          built.
75         is static private;
76       
77     EchoStatus(me)
78       is static;
79         
80       
81 fields
82     myRelative   : Boolean     from Standard is protected;
83     myMap        : MapOfShape  from TopTools is protected;
84     myMesh       : FastDiscret from BRepMesh is protected;
85     myModified   : Boolean     from Standard is protected;
86     mymapedge    : DataMapOfShapeReal from TopTools is protected; 
87     myancestors  : IndexedDataMapOfShapeListOfShape from TopTools is protected;
88     mydtotale    : Real from Standard is protected;
89     myBox        : Box  from Bnd is protected;
90
91 end IncrementalMesh;
92
93
94
95