1 -- File: BRepMesh_FastDiscretFace.cdl
2 -- Created: Tue Oct 28 14:10:54 2008
5 ---Copyright: Matra Datavision 2008
7 private class FastDiscretFace from BRepMesh inherits TShared from MMgt
9 ---Purpose: Algorithm to mesh a face with respect of the
10 -- frontier the deflection and by option the shared
14 uses Boolean from Standard,
15 Integer from Standard,
23 HSurface from BRepAdaptor,
25 DataStructureOfDelaun from BRepMesh,
26 DataMapOfVertexInteger from BRepMesh,
27 DataMapOfIntegerListOfXY from BRepMesh,
28 DataMapOfShapeReal from TopTools,
29 ListOfVertex from BRepMesh,
30 ClassifierPtr from BRepMesh,
31 Triangle from BRepMesh,
34 FaceAttribute from BRepMesh,
35 ListOfInteger from TColStd,
36 BaseAllocator from MeshDS,
37 DataMapOfIntegerPnt from BRepMesh,
38 IndexedMapOfInteger from TColStd,
39 IndexedMapOfReal from TColStd,
40 DataMapOfShapePairOfPolygon from BRepMesh,
41 Triangulation from Poly,
47 Create (theAngle : Real from Standard;
48 theWithShare : Boolean from Standard=Standard_True)
49 returns mutable FastDiscretFace from BRepMesh;
55 theFace : Face from TopoDS;
56 theAttrib : FaceAttribute from BRepMesh;
57 theMapDefle : DataMapOfShapeReal from TopTools)
62 theVert : Vertex from TopoDS;
63 theFace : Face from TopoDS;
64 theSFace : HSurface from BRepAdaptor) is private;
66 RestoreStructureFromTriangulation
68 theEdge : Edge from TopoDS;
69 theFace : Face from TopoDS;
70 theSurf : HSurface from BRepAdaptor;
71 theTrigu : Triangulation from Poly;
72 theDefEdge : Real from Standard;
73 theLoc : Location from TopLoc)
74 returns Boolean from Standard is protected;
77 InternalVertices (me : mutable;
78 theCaro : HSurface from BRepAdaptor;
79 theInternalV : in out ListOfVertex from BRepMesh;
80 theDefFace : Real from Standard;
81 theClassifier : ClassifierPtr from BRepMesh)
85 Control (me : mutable;
86 theCaro : HSurface from BRepAdaptor;
87 theDefFace : Real from Standard;
88 theInternalV : in out ListOfVertex from BRepMesh;
89 theBadTriangles : in out ListOfInteger from TColStd;
90 theNulTriangles : in out ListOfInteger from TColStd;
91 theTrigu : in out Delaun from BRepMesh;
92 theIsFirst : Boolean from Standard)
93 returns Real from Standard is static;
96 theV : Vertex from TopoDS;
97 theXY : Pnt2d from gp;
98 theIp : Integer from Standard;
99 theSFace : HSurface from BRepAdaptor;
100 theMinDist : Real from Standard;
101 theLocation2dMap: in out DataMapOfIntegerListOfXY from BRepMesh)
104 AddInShape (me: mutable;
105 theFace : Face from TopoDS;
106 theDefFace: Real from Standard)
113 theIndex : Integer from Standard)
114 ---Purpose: Gives the triangle of <Index>.
115 ---C++: return const &
116 returns Triangle from BRepMesh
120 theIndex : Integer from Standard)
121 ---Purpose: Gives the edge of index <Index>.
122 ---C++: return const &
123 returns Edge from BRepMesh
128 theIndex : Integer from Standard)
129 ---Purpose: Gives the vertex of <Index>.
130 ---C++: return const &
131 returns Vertex from BRepMesh
135 theIndex : Integer from Standard)
136 ---Purpose: Gives the location3d of the vertex of <Index>.
137 ---C++: return const &
142 myAngle : Real from Standard;
143 myWithShare : Boolean from Standard;
144 myVertices : DataMapOfVertexInteger from BRepMesh;
145 myInternaledges : DataMapOfShapePairOfPolygon from BRepMesh;
146 myNbLocat : Integer from Standard;
147 myLocation3d : DataMapOfIntegerPnt from BRepMesh;
148 myStructure : DataStructureOfDelaun from BRepMesh;
149 myListver : ListOfVertex from BRepMesh;
150 myVemap : IndexedMapOfInteger from TColStd;
151 myLocation2d : DataMapOfIntegerListOfXY from BRepMesh;
152 myAttrib : FaceAttribute from BRepMesh;
153 myInternalVerticesMode : Boolean from Standard; --mode to accounting internal vertices
154 myUParam : IndexedMapOfReal from TColStd;
155 myVParam : IndexedMapOfReal from TColStd;
156 myAllocator : BaseAllocator from MeshDS;