#16843 EDF 19340 - wrong quadratic mesh
This commit is contained in:
parent
b4604c35c9
commit
7a1c6f7661
@ -891,7 +891,7 @@ bool NETGENPluginGUI_HypothesisCreator::storeParamsToHypo( const NetgenHypothesi
|
|||||||
|
|
||||||
rh->SetKeepExistingEdges ( h_data.myKeepExistingEdges );
|
rh->SetKeepExistingEdges ( h_data.myKeepExistingEdges );
|
||||||
rh->SetMakeGroupsOfSurfaces ( h_data.myMakeGroupsOfSurfaces );
|
rh->SetMakeGroupsOfSurfaces ( h_data.myMakeGroupsOfSurfaces );
|
||||||
rh->SetFixedEdgeGroup ( 0 );
|
//rh->SetFixedEdgeGroup ( -1 );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
for ( QMapIterator<QString,QString> i(myLocalSizeMap); i.hasNext(); )
|
for ( QMapIterator<QString,QString> i(myLocalSizeMap); i.hasNext(); )
|
||||||
|
@ -263,7 +263,17 @@ bool NETGENPlugin_NETGEN_3D::Compute(SMESH_Mesh& aMesh,
|
|||||||
|
|
||||||
const SMESHDS_SubMesh * aSubMeshDSFace = proxyMesh->GetSubMesh( aShapeFace );
|
const SMESHDS_SubMesh * aSubMeshDSFace = proxyMesh->GetSubMesh( aShapeFace );
|
||||||
if ( !aSubMeshDSFace ) continue;
|
if ( !aSubMeshDSFace ) continue;
|
||||||
|
|
||||||
SMDS_ElemIteratorPtr iteratorElem = aSubMeshDSFace->GetElements();
|
SMDS_ElemIteratorPtr iteratorElem = aSubMeshDSFace->GetElements();
|
||||||
|
if ( _quadraticMesh &&
|
||||||
|
dynamic_cast< const SMESH_ProxyMesh::SubMesh*>( aSubMeshDSFace ))
|
||||||
|
{
|
||||||
|
// add medium nodes of proxy triangles to helper (#16843)
|
||||||
|
while ( iteratorElem->more() )
|
||||||
|
helper.AddTLinks( static_cast< const SMDS_MeshFace* >( iteratorElem->next() ));
|
||||||
|
|
||||||
|
iteratorElem = aSubMeshDSFace->GetElements();
|
||||||
|
}
|
||||||
while ( iteratorElem->more() ) // loop on elements on a geom face
|
while ( iteratorElem->more() ) // loop on elements on a geom face
|
||||||
{
|
{
|
||||||
// check mesh face
|
// check mesh face
|
||||||
@ -612,6 +622,13 @@ bool NETGENPlugin_NETGEN_3D::Compute(SMESH_Mesh& aMesh,
|
|||||||
StdMeshers_QuadToTriaAdaptor* Adaptor = new StdMeshers_QuadToTriaAdaptor;
|
StdMeshers_QuadToTriaAdaptor* Adaptor = new StdMeshers_QuadToTriaAdaptor;
|
||||||
Adaptor->Compute(aMesh);
|
Adaptor->Compute(aMesh);
|
||||||
proxyMesh.reset( Adaptor );
|
proxyMesh.reset( Adaptor );
|
||||||
|
|
||||||
|
if ( aHelper->IsQuadraticMesh() )
|
||||||
|
{
|
||||||
|
SMDS_ElemIteratorPtr fIt = proxyMesh->GetFaces();
|
||||||
|
while( fIt->more())
|
||||||
|
aHelper->AddTLinks( static_cast< const SMDS_MeshFace* >( fIt->next() ));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// maps nodes to ng ID
|
// maps nodes to ng ID
|
||||||
|
Loading…
Reference in New Issue
Block a user