1 -- Created on: 1995-06-20
2 -- Created by: Stagiaire Alain JOURDAIN <ajo@phobox>
3 -- Copyright (c) 1995-1999 Matra Datavision
4 -- Copyright (c) 1999-2014 OPEN CASCADE SAS
6 -- This file is part of Open CASCADE Technology software library.
8 -- This library is free software; you can redistribute it and / or modify it
9 -- under the terms of the GNU Lesser General Public version 2.1 as published
10 -- by the Free Software Foundation, with special exception defined in the file
11 -- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12 -- distribution for complete text of the license and disclaimer of any warranty.
14 -- Alternatively, this file may be used under the terms of Open CASCADE
15 -- commercial license or contractual agreement.
17 class IncrementalMesh from BRepMesh
19 inherits DiscretRoot from BRepMesh
21 ---Purpose: Builds the mesh of a shape with respect of their
22 -- correctly triangulated parts
30 MapOfShape from TopTools,
31 IndexedDataMapOfShapeListOfShape from TopTools,
32 DataMapOfShapeReal from TopTools,
33 FastDiscret from BRepMesh,
35 PDiscretRoot from BRepMesh
39 returns IncrementalMesh from BRepMesh;
40 ---C++: alias "Standard_EXPORT virtual ~BRepMesh_IncrementalMesh();"
42 Create (S : Shape from TopoDS;
43 D : Real from Standard;
44 Relatif : Boolean from Standard = Standard_False;
45 Ang : Real from Standard = 0.5;
46 InParallel : Boolean from Standard = Standard_False)
47 returns IncrementalMesh from BRepMesh;
48 ---Purpose: If the boolean <Relatif> is True, the
49 -- deflection used for the polygonalisation of
50 -- each edge will be <D> * Size of Edge.
51 -- the deflection used for the faces will be the maximum
52 -- deflection of their edges.
54 SetRelative ( me : mutable;
55 theFlag : Boolean from Standard);
58 returns Boolean from Standard;
61 is redefined protected;
63 Perform (me : mutable)
67 S : Shape from TopoDS)
69 ---Purpose: Builds the incremental mesh of the shape
72 returns Boolean from Standard
78 ---Purpose: Locate a correct discretisation if it exists
79 -- Set no one otherwise
84 ---Purpose: If the face is not correctly triangulated, or
85 -- if one of its edges is to be discretisated
86 -- correctly, the triangulation of this face is
90 returns Integer from Standard
93 SetParallel ( me : mutable;
94 theInParallel : Boolean from Standard);
96 -- Request algorithm to launch in multiple threads to improve performance.
99 returns Boolean from Standard;
101 -- Returns the multi-threading usage flag.
107 theShape : Shape from TopoDS;
108 theDeflection : Real from Standard;
109 theAngle : Real from Standard;
110 theAlgo : out PDiscretRoot from BRepMesh)
111 returns Integer from Standard;
113 -- Plugin interface for the Mesh Factories.
115 IsParallelDefault (myclass)
116 returns Boolean from Standard;
118 -- Returns multi-threading usage flag set by default in
119 -- Discret() static method (thus applied only to Mesh Factories).
121 SetParallelDefault (myclass;
122 theInParallel : Boolean from Standard);
124 -- Setup multi-threading usage flag set by default in
125 -- Discret() static method (thus applied only to Mesh Factories).
128 myRelative : Boolean from Standard is protected;
129 myInParallel : Boolean from Standard is protected;
130 myMap : MapOfShape from TopTools is protected;
131 myMesh : FastDiscret from BRepMesh is protected;
132 myModified : Boolean from Standard is protected;
133 mymapedge : DataMapOfShapeReal from TopTools is protected;
134 myancestors : IndexedDataMapOfShapeListOfShape from TopTools is protected;
135 mydtotale : Real from Standard is protected;
136 myBox : Box from Bnd is protected;
137 myStatus : Integer from Standard is protected;