28 #ifndef StdMeshers_ProjectionUtils_HeaderFile
29 #define StdMeshers_ProjectionUtils_HeaderFile
35 #include <TopTools_DataMapOfShapeShape.hxx>
36 #include <TopTools_IndexedMapOfShape.hxx>
37 #include <TopTools_IndexedDataMapOfShapeListOfShape.hxx>
38 #include <TopoDS_Edge.hxx>
39 #include <TopoDS_Face.hxx>
40 #include <TopoDS_Vertex.hxx>
41 #include <gp_GTrsf.hxx>
42 #include <gp_GTrsf2d.hxx>
67 bool Bind(
const TopoDS_Shape& s1,
const TopoDS_Shape& s2 )
69 bool IsBound(
const TopoDS_Shape& s,
const bool isShape2=
false )
const
74 const TopoDS_Shape&
operator()(
const TopoDS_Shape& s,
const bool isShape2=
false )
const
86 namespace StdMeshers_ProjectionUtils
107 bool Solve(
const std::vector< gp_XY >& srcPnts,
108 const std::vector< gp_XY >& tgtPnts );
110 gp_XY
Transform(
const gp_Pnt2d& srcUV )
const;
127 bool Solve(
const std::vector< gp_XYZ > & srcPnts,
128 const std::vector< gp_XYZ > & tgtPnts );
130 gp_XYZ
Transform(
const gp_Pnt& srcP )
const;
151 const TopoDS_Shape& theShape2,
167 TopoDS_Vertex VV1[2],
168 const TopoDS_Face& face2,
169 TopoDS_Vertex VV2[2],
170 std::list< TopoDS_Edge > & edges1,
171 std::list< TopoDS_Edge > & edges2,
172 const bool isClosenessAssoc=
false);
192 const TopoDS_Shape& theShape2,
199 const TopoDS_Vertex& V1,
200 const TopoDS_Vertex& V2);
207 const TopoDS_Edge& edge,
208 const TopoDS_Face& face);
213 const TopoDS_Vertex& vertex);
224 const TopoDS_Edge& anEdge,
225 const TopoDS_Edge& fromEdge,
226 TopTools_IndexedMapOfShape* chain=0);
240 const TopoDS_Face& face2,
250 TopoDS_Shape
OuterShape(
const TopoDS_Face& face,
251 TopAbs_ShapeEnum type);
274 TopoDS_Shape srcShape,
282 std::list< TopoDS_Edge >* allBndEdges = 0 );