e9a60e5fdc2c582b7ea28af27228417320a83275
[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
26 is      
27     Create
28         returns IncrementalMesh from BRepMesh;
29     ---C++: alias "Standard_EXPORT virtual ~BRepMesh_IncrementalMesh();"
30         
31     Create(S      : Shape   from TopoDS;
32            D      : Real    from Standard;
33            Relatif: Boolean from Standard = Standard_False;
34            Ang    : Real    from Standard = 0.5)
35            ---Purpose: if the  boolean    <Relatif>   is  True,    the
36            --          deflection used   for the polygonalisation   of
37            --          each edge will be <D> * Size of Edge.
38            --          the deflection used for the faces will be the maximum
39            --          deflection of their edges.
40        returns IncrementalMesh from BRepMesh;
41
42     SetRelative(me:out;  
43             theFlag : Boolean from Standard); 
44       
45     Relative(me)  
46         returns Boolean from Standard; 
47       
48     Init(me:out) 
49         is redefined protected;  
50      
51     Perform(me:out) 
52         is redefined; 
53      
54     Update(me:out;  
55             S : Shape from TopoDS)
56             ---Purpose: Builds the incremental mesh of the shape
57        is static; 
58        
59     IsModified(me) returns Boolean from Standard
60        is static; 
61      
62     Update(me : in out;
63               E  : Edge from TopoDS)
64             ---Purpose: Locate a correct discretisation if it exists
65             --          Set no one otherwise
66        is static private;
67      
68     Update(me : in out;
69               F  : Face from TopoDS) 
70             ---Purpose: if the face is  not correctly triangulated, or
71             --          if  one  of its edges  is  to be discretisated
72             --          correctly, the triangulation  of this face  is
73             --          built.
74         is static private;
75         
76       
77 fields
78     myRelative   : Boolean     from Standard is protected;
79     myMap        : MapOfShape  from TopTools is protected;
80     myMesh       : FastDiscret from BRepMesh is protected;
81     myModified   : Boolean     from Standard is protected;
82     mymapedge    : DataMapOfShapeReal from TopTools is protected; 
83     myancestors  : IndexedDataMapOfShapeListOfShape from TopTools is protected;
84     mydtotale    : Real from Standard is protected;
85     myBox        : Box  from Bnd is protected;
86
87 end IncrementalMesh;
88
89
90
91