//
#include "StdMeshers_ProjectionUtils.hxx"
-#include "StdMeshers_ProjectionSource1D.hxx"
-#include "StdMeshers_ProjectionSource2D.hxx"
-#include "StdMeshers_ProjectionSource3D.hxx"
-
#include "SMDS_EdgePosition.hxx"
+#include "SMESHDS_Mesh.hxx"
#include "SMESH_Algo.hxx"
#include "SMESH_Block.hxx"
#include "SMESH_Gen.hxx"
#include "SMESH_HypoFilter.hxx"
#include "SMESH_Hypothesis.hxx"
#include "SMESH_Mesh.hxx"
+#include "SMESH_MeshAlgos.hxx"
#include "SMESH_MesherHelper.hxx"
#include "SMESH_subMesh.hxx"
#include "SMESH_subMeshEventListener.hxx"
-#include "SMESH_MeshAlgos.hxx"
+#include "StdMeshers_ProjectionSource1D.hxx"
+#include "StdMeshers_ProjectionSource2D.hxx"
+#include "StdMeshers_ProjectionSource3D.hxx"
#include "utilities.h"
const char* type[] ={"COMPOUND","COMPSOLID","SOLID","SHELL","FACE","WIRE","EDGE","VERTEX"};
BRepTools::Write( shape, SMESH_Comment("/tmp/") << type[shape.ShapeType()] << "_"
<< shape.TShape().operator->() << ".brep");
+ if ( !theMeshDS[0] ) {
+ show_shape( TopoDS_Shape(), "avoid warning: show_shape() defined but not used");
+ show_list( "avoid warning: show_list() defined but not used", list< TopoDS_Edge >() );
+ }
#endif
return false;
}
const gp_Pnt2d& uv,
const double& tol2d )
{
- TopoDS_Vertex VV[2];
- TopExp::Vertices( edge, VV[0], VV[1], true);
- gp_Pnt2d v1UV = BRep_Tool::Parameters( VV[vIndex], face);
+ TopoDS_Vertex V = SMESH_MesherHelper::IthVertex( vIndex, edge, /*CumOri=*/true );
+ gp_Pnt2d v1UV = BRep_Tool::Parameters( V, face);
double dist2d = v1UV.Distance( uv );
return dist2d < tol2d;
}
int nbE = FindFaceAssociation( face1, VV1, face2, VV2, edges1, edges2, isVCloseness );
if ( !nbE ) RETURN_BAD_RESULT("FindFaceAssociation() failed");
InsertAssociation( face1, face2, theMap ); // assoc faces
- MESSAGE("Assoc FACE " << theMesh1->GetMeshDS()->ShapeToIndex( face1 )<<
- " to " << theMesh2->GetMeshDS()->ShapeToIndex( face2 ));
+ // MESSAGE("Assoc FACE " << theMesh1->GetMeshDS()->ShapeToIndex( face1 )<<
+ // " to " << theMesh2->GetMeshDS()->ShapeToIndex( face2 ));
if ( nbE == 2 && (edge1.IsSame( edges1.front())) != (edge2.IsSame( edges2.front())))
{
reverseEdges( edges2, nbE );
v2e[0].UnBind( V[0] );
v2e[1].UnBind( V[1] );
InsertAssociation( e0, e1, theMap );
- MESSAGE("Assoc edge " << theMesh1->GetMeshDS()->ShapeToIndex( e0 )<<
- " to " << theMesh2->GetMeshDS()->ShapeToIndex( e1 ));
+ // MESSAGE("Assoc edge " << theMesh1->GetMeshDS()->ShapeToIndex( e0 )<<
+ // " to " << theMesh2->GetMeshDS()->ShapeToIndex( e1 ));
V[0] = GetNextVertex( e0, V[0] );
V[1] = GetNextVertex( e1, V[1] );
if ( !V[0].IsNull() ) {
InsertAssociation( V[0], V[1], theMap );
- MESSAGE("Assoc vertex " << theMesh1->GetMeshDS()->ShapeToIndex( V[0] )<<
- " to " << theMesh2->GetMeshDS()->ShapeToIndex( V[1] ));
+ // MESSAGE("Assoc vertex " << theMesh1->GetMeshDS()->ShapeToIndex( V[0] )<<
+ // " to " << theMesh2->GetMeshDS()->ShapeToIndex( V[1] ));
}
}
else if ( nbE0 == 2 )
InsertAssociation( e0b, e1b, theMap );
InsertAssociation( e0n, e1n, theMap );
InsertAssociation( v0n, v1n, theMap );
- MESSAGE("Assoc edge " << theMesh1->GetMeshDS()->ShapeToIndex( e0b )<<
- " to " << theMesh2->GetMeshDS()->ShapeToIndex( e1b ));
- MESSAGE("Assoc edge " << theMesh1->GetMeshDS()->ShapeToIndex( e0n )<<
- " to " << theMesh2->GetMeshDS()->ShapeToIndex( e1n ));
- MESSAGE("Assoc vertex " << theMesh1->GetMeshDS()->ShapeToIndex( v0n )<<
- " to " << theMesh2->GetMeshDS()->ShapeToIndex( v1n ));
+ // MESSAGE("Assoc edge " << theMesh1->GetMeshDS()->ShapeToIndex( e0b )<<
+ // " to " << theMesh2->GetMeshDS()->ShapeToIndex( e1b ));
+ // MESSAGE("Assoc edge " << theMesh1->GetMeshDS()->ShapeToIndex( e0n )<<
+ // " to " << theMesh2->GetMeshDS()->ShapeToIndex( e1n ));
+ // MESSAGE("Assoc vertex " << theMesh1->GetMeshDS()->ShapeToIndex( v0n )<<
+ // " to " << theMesh2->GetMeshDS()->ShapeToIndex( v1n ));
v2e[0].UnBind( V[0] );
v2e[1].UnBind( V[1] );
V[0] = v0n;
for ( ; eIt1 != edges1.end(); ++eIt1, ++eIt2 )
{
InsertAssociation( *eIt1, *eIt2, theMap );
- VV1[0] = TopExp::FirstVertex( *eIt1, true );
- VV2[0] = TopExp::FirstVertex( *eIt2, true );
+ VV1[0] = SMESH_MesherHelper::IthVertex( 0, *eIt1, true );
+ VV2[0] = SMESH_MesherHelper::IthVertex( 0, *eIt2, true );
InsertAssociation( VV1[0], VV2[0], theMap );
}
InsertAssociation( theShape1, theShape2, theMap );
InsertAssociation( VV1[ 0 ], VV2[ 0 ], theMap );
InsertAssociation( VV1[ 1 ], VV2[ 1 ], theMap );
- MESSAGE("Initial assoc VERT " << theMesh1->GetMeshDS()->ShapeToIndex( VV1[ 0 ] )<<
- " to " << theMesh2->GetMeshDS()->ShapeToIndex( VV2[ 0 ] )<<
- "\nand VERT " << theMesh1->GetMeshDS()->ShapeToIndex( VV1[ 1 ] )<<
- " to " << theMesh2->GetMeshDS()->ShapeToIndex( VV2[ 1 ] ));
+ // MESSAGE("Initial assoc VERT " << theMesh1->GetMeshDS()->ShapeToIndex( VV1[ 0 ] )<<
+ // " to " << theMesh2->GetMeshDS()->ShapeToIndex( VV2[ 0 ] )<<
+ // "\nand VERT " << theMesh1->GetMeshDS()->ShapeToIndex( VV1[ 1 ] )<<
+ // " to " << theMesh2->GetMeshDS()->ShapeToIndex( VV2[ 1 ] ));
if ( theShape1.ShapeType() == TopAbs_EDGE ) {
InsertAssociation( theShape1, theShape2, theMap );
return true;
string algoType = algo->GetName();
if ( algoType.substr(0, 11) != "Projection_")
- return gen->Compute( *mesh, shape, /*shapeOnly=*/true );
+ return gen->Compute( *mesh, shape, SMESH_Gen::SHAPE_ONLY );
// try to compute source mesh
srcMesh = mesh;
if ( MakeComputed( srcMesh->GetSubMesh( srcShape ), iterationNb + 1 ) &&
- gen->Compute( *mesh, shape, /*shapeOnly=*/true ))
+ gen->Compute( *mesh, shape, SMESH_Gen::SHAPE_ONLY ))
return sm->IsMeshComputed();
return false;