#include "SMDS_FacePosition.hxx"
#include "SMDS_MeshElement.hxx"
#include "SMDS_MeshNode.hxx"
+#include "SMESHDS_Mesh.hxx"
#include "SMESH_Block.hxx"
#include "SMESH_Comment.hxx"
#include "SMESH_Gen.hxx"
}
else if (strcmp("TrianglePreference", aHyp->GetName()) == 0){
isFirstParams = false;
- myTrianglePreference = true;
+ myTrianglePreference = true;
}
else {
isFirstParams = false;
if (isFirstParams) {
if (strcmp("QuadranglePreference", aHyp->GetName()) == 0) {
myQuadranglePreference = true;
- myTrianglePreference = false;
+ myTrianglePreference = false;
myQuadType = QUAD_STANDARD;
}
else if (strcmp("TrianglePreference", aHyp->GetName()) == 0){
myQuadranglePreference = false;
- myTrianglePreference = true;
+ myTrianglePreference = true;
myQuadType = QUAD_STANDARD;
}
}
- else {
- const StdMeshers_QuadrangleParams* aHyp2 =
- (const StdMeshers_QuadrangleParams*)aHyp;
+ else if (const StdMeshers_QuadrangleParams* aHyp2 =
+ dynamic_cast<const StdMeshers_QuadrangleParams*>( aHyp ))
+ {
myTriaVertexID = aHyp2->GetTriaVertex();
if (!myQuadranglePreference && !myTrianglePreference) { // priority of hypos
//=============================================================================
/*!
- *
+ *
*/
//=============================================================================
int stop = 0;
if ( quad->side[3].grid->Edge(0).IsNull() ) // left side is simulated one
{
- // quad divided at I but not at J, as nbvertic==nbright==2
- stop++; // we stop at a second node
+ if ( nbright == 2 ) // quad divided at I but not at J (2D_mesh_QuadranglePreference_01/B1)
+ stop++; // we stop at a second node
}
else
{
}
// for each node of the up edge find nearest node
// in the first row of the regular grid and link them
- for ( ; i > stop; i--) {
+ for ( ; i > stop; i--)
+ {
a = uv_e2[i].node;
b = uv_e2[i - 1].node;
gp_Pnt pb = SMESH_TNodeXYZ( b );
}
}
} else {
- if (quad->nbNodeOut(3) && nbhoriz == 2) {
-// MESSAGE("left edge is out");
+ if (quad->nbNodeOut(3) && nbhoriz == 2)
+ {
int g = nbvertic - 1; // last processed node in the grid
int stop = 0;
i = quad->side[ QUAD_LEFT_SIDE ].to-1; // nbleft - 1;
UVPtStruct nullUVPtStruct;
nullUVPtStruct.node = 0;
- nullUVPtStruct.x = nullUVPtStruct.y = nullUVPtStruct.u = nullUVPtStruct.y = 0;
+ nullUVPtStruct.x = nullUVPtStruct.y = nullUVPtStruct.u = nullUVPtStruct.v = 0;
nullUVPtStruct.param = 0;