mirror of
https://git.salome-platform.org/gitpub/modules/smesh.git
synced 2025-02-15 12:03:08 +05:00
QonvertFromQuadratic() not yet implemented
This commit is contained in:
parent
3b932ed49d
commit
f25106988f
@ -6029,54 +6029,6 @@ void SMESH_MeshEditor::ConvertToQuadratic(const bool theForce3d)
|
|||||||
//=======================================================================
|
//=======================================================================
|
||||||
bool SMESH_MeshEditor::ConvertFromQuadratic()
|
bool SMESH_MeshEditor::ConvertFromQuadratic()
|
||||||
{
|
{
|
||||||
SMESHDS_Mesh* meshDS = GetMeshDS();
|
|
||||||
SMDS_ElemIteratorPtr aElemItr = meshDS->elementsIterator();
|
|
||||||
while(aElemItr->more())
|
|
||||||
{
|
|
||||||
const SMDS_MeshElement* elem = aElemItr->next();
|
|
||||||
if(elem)
|
|
||||||
{
|
|
||||||
if(!elem->IsQuadratic())
|
|
||||||
continue;
|
|
||||||
|
|
||||||
int id = elem->GetID();
|
|
||||||
|
|
||||||
int nbNodes = elem->NbNodes();
|
|
||||||
vector<const SMDS_MeshNode *> aNds (nbNodes);
|
|
||||||
|
|
||||||
for(int i = 0; i < nbNodes; i++)
|
|
||||||
{
|
|
||||||
const SMDS_MeshNode* n = elem->GetNode(i);
|
|
||||||
if( elem->IsMediumNode( n ) )
|
|
||||||
meshDS->SMDS_Mesh::RemoveFreeElement( n );
|
|
||||||
else
|
|
||||||
aNds[i] = n;
|
|
||||||
}
|
|
||||||
|
|
||||||
SMDSAbs_ElementType aType = elem->GetType();
|
|
||||||
RemoveElemFromGroups (elem, meshDS);
|
|
||||||
meshDS->SMDS_Mesh::RemoveFreeElement(elem);
|
|
||||||
|
|
||||||
SMDS_MeshElement * NewElem = 0;
|
|
||||||
switch(aType)
|
|
||||||
{
|
|
||||||
case SMDSAbs_Edge:
|
|
||||||
NewElem = meshDS->AddEdgeWithID( ,id );
|
|
||||||
break;
|
|
||||||
case SMDSAbs_Face:
|
|
||||||
if( nbNds==3 )NewElem = meshDS->AddFaceWithID( ,id );
|
|
||||||
if( nbNds==4 )NewElem = meshDS->AddFaceWithID( ,id );
|
|
||||||
break;
|
|
||||||
case SMDSAbs_Volume:
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
AddToSameGroups(NewElem, elem, meshDS);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//=======================================================================
|
//=======================================================================
|
||||||
|
Loading…
Reference in New Issue
Block a user