mirror of
https://git.salome-platform.org/gitpub/modules/smesh.git
synced 2025-01-28 03:30:32 +05:00
fix biquadratic quadratic pentahedron(18 nodes prism)
This commit is contained in:
parent
2077baef82
commit
09ff68516f
@ -493,6 +493,7 @@ Driver_Mesh::Status DriverMED_R_SMESHDS_Mesh::Perform()
|
||||
case ePYRA13: aNbNodes = 13; break;
|
||||
case ePENTA6: aNbNodes = 6; break;
|
||||
case ePENTA15: aNbNodes = 15; break;
|
||||
case ePENTA18: aNbNodes = 18; break;
|
||||
case eHEXA8: aNbNodes = 8; break;
|
||||
case eHEXA20: aNbNodes = 20; break;
|
||||
case eHEXA27: aNbNodes = 27; break;
|
||||
@ -811,6 +812,41 @@ Driver_Mesh::Status DriverMED_R_SMESHDS_Mesh::Perform()
|
||||
isRenum = anIsElemNum;
|
||||
}
|
||||
break;
|
||||
case ePENTA18:
|
||||
aNbNodes = 18;
|
||||
if(anIsElemNum)
|
||||
anElement = myMesh->AddVolumeWithID(aNodeIds[0], aNodeIds[1],
|
||||
aNodeIds[2], aNodeIds[3],
|
||||
aNodeIds[4], aNodeIds[5],
|
||||
aNodeIds[6], aNodeIds[7],
|
||||
aNodeIds[8], aNodeIds[9],
|
||||
aNodeIds[10], aNodeIds[11],
|
||||
aNodeIds[12], aNodeIds[13],
|
||||
aNodeIds[14], aNodeIds[15],
|
||||
aNodeIds[16], aNodeIds[17],
|
||||
aCellInfo->GetElemNum(iElem));
|
||||
if (!anElement) {
|
||||
anElement = myMesh->AddVolume(FindNode(myMesh,aNodeIds[0]),
|
||||
FindNode(myMesh,aNodeIds[1]),
|
||||
FindNode(myMesh,aNodeIds[2]),
|
||||
FindNode(myMesh,aNodeIds[3]),
|
||||
FindNode(myMesh,aNodeIds[4]),
|
||||
FindNode(myMesh,aNodeIds[5]),
|
||||
FindNode(myMesh,aNodeIds[6]),
|
||||
FindNode(myMesh,aNodeIds[7]),
|
||||
FindNode(myMesh,aNodeIds[8]),
|
||||
FindNode(myMesh,aNodeIds[9]),
|
||||
FindNode(myMesh,aNodeIds[10]),
|
||||
FindNode(myMesh,aNodeIds[11]),
|
||||
FindNode(myMesh,aNodeIds[12]),
|
||||
FindNode(myMesh,aNodeIds[13]),
|
||||
FindNode(myMesh,aNodeIds[14]),
|
||||
FindNode(myMesh,aNodeIds[15]),
|
||||
FindNode(myMesh,aNodeIds[16]),
|
||||
FindNode(myMesh,aNodeIds[17]));
|
||||
isRenum = anIsElemNum;
|
||||
}
|
||||
break;
|
||||
case eHEXA8:
|
||||
aNbNodes = 8;
|
||||
if(anIsElemNum)
|
||||
|
@ -703,7 +703,11 @@ Driver_Mesh::Status DriverMED_W_SMESHDS_Mesh::Perform()
|
||||
SMDSAbs_Volume));
|
||||
aTElemTypeDatas.push_back( TElemTypeData(anEntity,
|
||||
ePENTA15,
|
||||
nbElemInfo.NbPrisms( ORDER_QUADRATIC ),
|
||||
nbElemInfo.NbQuadPrisms(),
|
||||
SMDSAbs_Volume));
|
||||
aTElemTypeDatas.push_back( TElemTypeData(anEntity,
|
||||
ePENTA18,
|
||||
nbElemInfo.NbBiQuadPrisms(),
|
||||
SMDSAbs_Volume));
|
||||
aTElemTypeDatas.push_back( TElemTypeData(anEntity,
|
||||
eHEXA8,
|
||||
@ -943,7 +947,6 @@ Driver_Mesh::Status DriverMED_W_SMESHDS_Mesh::Perform()
|
||||
{
|
||||
// Treat standard types
|
||||
// ---------------------
|
||||
|
||||
// allocate data arrays
|
||||
PCellInfo aCellInfo = myMed->CrCellInfo( aMeshInfo,
|
||||
aElemTypeData->_entity,
|
||||
@ -955,7 +958,6 @@ Driver_Mesh::Status DriverMED_W_SMESHDS_Mesh::Perform()
|
||||
// build map of family numbers for this type
|
||||
if ( !isElemFamMapBuilt[ aElemTypeData->_smdsType ])
|
||||
{
|
||||
//cout << " fillElemFamilyMap()" << endl;
|
||||
fillElemFamilyMap( anElemFamMap, aFamilies, aElemTypeData->_smdsType );
|
||||
isElemFamMapBuilt[ aElemTypeData->_smdsType ] = true;
|
||||
}
|
||||
@ -993,10 +995,7 @@ Driver_Mesh::Status DriverMED_W_SMESHDS_Mesh::Perform()
|
||||
// store data in a file
|
||||
myMed->SetCellInfo(aCellInfo);
|
||||
}
|
||||
|
||||
} // loop on geom types
|
||||
|
||||
|
||||
}
|
||||
catch(const std::exception& exc) {
|
||||
INFOS("The following exception was caught:\n\t"<<exc.what());
|
||||
|
@ -27,7 +27,7 @@
|
||||
#ifdef WIN32
|
||||
#pragma warning(disable:4250)
|
||||
#endif
|
||||
|
||||
#include <utilities.h>
|
||||
namespace MED
|
||||
{
|
||||
//---------------------------------------------------------------
|
||||
|
@ -93,6 +93,7 @@ bool InitEntity2GeomSet()
|
||||
aGeomMAILLESet.insert(eTETRA10);
|
||||
aGeomMAILLESet.insert(ePYRA13);
|
||||
aGeomMAILLESet.insert(ePENTA15);
|
||||
aGeomMAILLESet.insert(ePENTA18);
|
||||
aGeomMAILLESet.insert(eHEXA20);
|
||||
aGeomMAILLESet.insert(eHEXA27);
|
||||
aGeomMAILLESet.insert(ePOLYEDRE);
|
||||
|
@ -279,6 +279,7 @@ SMESH_ActorDef::SMESH_ActorDef()
|
||||
aFilter->RegisterCellsWithType(VTK_QUADRATIC_HEXAHEDRON);
|
||||
aFilter->RegisterCellsWithType(VTK_TRIQUADRATIC_HEXAHEDRON);
|
||||
aFilter->RegisterCellsWithType(VTK_QUADRATIC_WEDGE);
|
||||
aFilter->RegisterCellsWithType(VTK_BIQUADRATIC_QUADRATIC_WEDGE);
|
||||
aFilter->RegisterCellsWithType(VTK_QUADRATIC_PYRAMID);
|
||||
aFilter->RegisterCellsWithType(VTK_CONVEX_POINT_SET);
|
||||
aFilter->RegisterCellsWithType(VTK_POLYHEDRON);
|
||||
@ -310,6 +311,7 @@ SMESH_ActorDef::SMESH_ActorDef()
|
||||
aFilter->RegisterCellsWithType(VTK_QUADRATIC_HEXAHEDRON);
|
||||
aFilter->RegisterCellsWithType(VTK_TRIQUADRATIC_HEXAHEDRON);
|
||||
aFilter->RegisterCellsWithType(VTK_QUADRATIC_WEDGE);
|
||||
aFilter->RegisterCellsWithType(VTK_BIQUADRATIC_QUADRATIC_WEDGE);
|
||||
aFilter->RegisterCellsWithType(VTK_QUADRATIC_PYRAMID);
|
||||
aFilter->RegisterCellsWithType(VTK_CONVEX_POINT_SET);
|
||||
aFilter->RegisterCellsWithType(VTK_POLYHEDRON);
|
||||
@ -1683,6 +1685,7 @@ void SMESH_ActorDef::SetEntityMode(unsigned int theMode)
|
||||
aFilter->RegisterCellsWithType(VTK_TRIQUADRATIC_HEXAHEDRON);
|
||||
aFilter->RegisterCellsWithType(VTK_QUADRATIC_PYRAMID);
|
||||
aFilter->RegisterCellsWithType(VTK_QUADRATIC_WEDGE);
|
||||
aFilter->RegisterCellsWithType(VTK_BIQUADRATIC_QUADRATIC_WEDGE);
|
||||
aFilter->RegisterCellsWithType(VTK_CONVEX_POINT_SET);
|
||||
aFilter->RegisterCellsWithType(VTK_POLYHEDRON);
|
||||
|
||||
@ -1696,6 +1699,7 @@ void SMESH_ActorDef::SetEntityMode(unsigned int theMode)
|
||||
aHltFilter->RegisterCellsWithType(VTK_QUADRATIC_HEXAHEDRON);
|
||||
aHltFilter->RegisterCellsWithType(VTK_TRIQUADRATIC_HEXAHEDRON);
|
||||
aHltFilter->RegisterCellsWithType(VTK_QUADRATIC_WEDGE);
|
||||
aHltFilter->RegisterCellsWithType(VTK_BIQUADRATIC_QUADRATIC_WEDGE);
|
||||
aHltFilter->RegisterCellsWithType(VTK_QUADRATIC_PYRAMID);
|
||||
aHltFilter->RegisterCellsWithType(VTK_CONVEX_POINT_SET);
|
||||
aHltFilter->RegisterCellsWithType(VTK_POLYHEDRON);
|
||||
|
@ -61,6 +61,7 @@ int SMDS_Downward::getCellDimension(unsigned char cellType)
|
||||
_cellDimension[VTK_TRIQUADRATIC_HEXAHEDRON] = 3;
|
||||
_cellDimension[VTK_WEDGE] = 3;
|
||||
_cellDimension[VTK_QUADRATIC_WEDGE] = 3;
|
||||
_cellDimension[VTK_BIQUADRATIC_QUADRATIC_WEDGE] = 3;
|
||||
_cellDimension[VTK_PYRAMID] = 3;
|
||||
_cellDimension[VTK_QUADRATIC_PYRAMID] = 3;
|
||||
_cellDimension[VTK_HEXAGONAL_PRISM] = 3;
|
||||
|
@ -1556,9 +1556,15 @@ SMDS_MeshVolume* SMDS_Mesh::AddVolumeFromVtkIdsWithID(const std::vector<vtkIdTyp
|
||||
case VTK_QUADRATIC_WEDGE:
|
||||
myInfo.myNbQuadPrisms++;
|
||||
break;
|
||||
case VTK_BIQUADRATIC_QUADRATIC_WEDGE:
|
||||
myInfo.myNbBiQuadPrisms++;
|
||||
break;
|
||||
case VTK_QUADRATIC_HEXAHEDRON:
|
||||
myInfo.myNbQuadHexas++;
|
||||
break;
|
||||
case VTK_TRIQUADRATIC_HEXAHEDRON:
|
||||
myInfo.myNbTriQuadHexas++;
|
||||
break;
|
||||
//#ifdef VTK_HAVE_POLYHEDRON
|
||||
case VTK_POLYHEDRON:
|
||||
myInfo.myNbPolyhedrons++;
|
||||
@ -4357,6 +4363,7 @@ SMDS_MeshVolume* SMDS_Mesh::AddVolume(const SMDS_MeshNode * n1,
|
||||
const SMDS_MeshNode * n2356,
|
||||
const SMDS_MeshNode * n1346)
|
||||
{
|
||||
//MESSAGE("AddVolume penta18");
|
||||
int ID = myElementIDFactory->GetFreeID();
|
||||
SMDS_MeshVolume * v =
|
||||
SMDS_Mesh::AddVolumeWithID(n1, n2, n3, n4, n5, n6, n12, n23, n31,
|
||||
@ -4376,6 +4383,7 @@ SMDS_MeshVolume* SMDS_Mesh::AddVolumeWithID(int n1, int n2, int n3,
|
||||
int n14,int n25,int n36,
|
||||
int n1245, int n2356, int n1346, int ID)
|
||||
{
|
||||
//MESSAGE("AddVolumeWithID penta18 " << ID);
|
||||
return SMDS_Mesh::AddVolumeWithID
|
||||
((SMDS_MeshNode*) myNodeIDFactory->MeshElement(n1) ,
|
||||
(SMDS_MeshNode*) myNodeIDFactory->MeshElement(n2) ,
|
||||
@ -4422,6 +4430,7 @@ SMDS_MeshVolume* SMDS_Mesh::AddVolumeWithID(const SMDS_MeshNode * n1,
|
||||
const SMDS_MeshNode * n1346,
|
||||
int ID)
|
||||
{
|
||||
//MESSAGE("AddVolumeWithID penta18 "<< ID);
|
||||
if (!n1 || !n2 || !n3 || !n4 || !n5 || !n6 || !n12 || !n23 ||
|
||||
!n31 || !n45 || !n56 || !n64 || !n14 || !n25 || !n36 || !n1245 || !n2356 || !n1346)
|
||||
return 0;
|
||||
@ -4430,7 +4439,7 @@ SMDS_MeshVolume* SMDS_Mesh::AddVolumeWithID(const SMDS_MeshNode * n1,
|
||||
return 0;
|
||||
}
|
||||
// --- retrieve nodes ID
|
||||
myNodeIds.resize(15);
|
||||
myNodeIds.resize(18);
|
||||
myNodeIds[0] = n1->getVtkId();
|
||||
myNodeIds[1] = n2->getVtkId();
|
||||
myNodeIds[2] = n3->getVtkId();
|
||||
|
@ -29,6 +29,7 @@
|
||||
#include "SMESH_SMDS.hxx"
|
||||
|
||||
#include "SMDS_MeshElement.hxx"
|
||||
#include<utilities.h>
|
||||
|
||||
class SMDS_EXPORT SMDS_MeshInfo
|
||||
{
|
||||
@ -144,26 +145,30 @@ inline SMDS_MeshInfo::SMDS_MeshInfo():
|
||||
// 15 *
|
||||
// 16 *
|
||||
// 17 *
|
||||
// 18 *
|
||||
// 19 *
|
||||
// 18 *
|
||||
// 19
|
||||
// 20 *
|
||||
// 21 *
|
||||
// 22 *
|
||||
// 23 *
|
||||
// 24 *
|
||||
// 25
|
||||
// 26
|
||||
// 21
|
||||
// 22
|
||||
// 23
|
||||
// 24
|
||||
// 25 *
|
||||
// 26 *
|
||||
// 27 *
|
||||
// 28 *
|
||||
// 29 *
|
||||
// 30 *
|
||||
// 31 *
|
||||
//
|
||||
// So to have a unique index for each type basing on nb of nodes, we use a shift:
|
||||
myShift.resize(SMDSAbs_NbElementTypes, 0);
|
||||
|
||||
myShift[ SMDSAbs_Face ] = +15;// 3->18, 4->19, etc.
|
||||
myShift[ SMDSAbs_Face ] = +22;// 3->25, 4->26, etc.
|
||||
myShift[ SMDSAbs_Edge ] = +14;// 2->16, 3->17
|
||||
myShift[ SMDSAbs_0DElement ] = +2; // 1->3
|
||||
myShift[ SMDSAbs_Ball ] = +1; // 1->2
|
||||
|
||||
myNb.resize( index( SMDSAbs_Volume,27 ) + 1, NULL);
|
||||
myNb.resize( index( SMDSAbs_Face,9 ) + 1, NULL);
|
||||
|
||||
myNb[ index( SMDSAbs_Node,1 )] = & myNbNodes;
|
||||
myNb[ index( SMDSAbs_0DElement,1 )] = & myNb0DElements;
|
||||
@ -187,6 +192,7 @@ inline SMDS_MeshInfo::SMDS_MeshInfo():
|
||||
myNb[ index( SMDSAbs_Volume, 12)] = & myNbHexPrism;
|
||||
myNb[ index( SMDSAbs_Volume, 13)] = & myNbQuadPyramids;
|
||||
myNb[ index( SMDSAbs_Volume, 15)] = & myNbQuadPrisms;
|
||||
myNb[ index( SMDSAbs_Volume, 18)] = & myNbBiQuadPrisms;
|
||||
myNb[ index( SMDSAbs_Volume, 20)] = & myNbQuadHexas;
|
||||
myNb[ index( SMDSAbs_Volume, 27)] = & myNbTriQuadHexas;
|
||||
}
|
||||
@ -282,7 +288,7 @@ SMDS_MeshInfo::NbPyramids(SMDSAbs_ElementOrder order) const
|
||||
|
||||
inline int // NbPrisms
|
||||
SMDS_MeshInfo::NbPrisms (SMDSAbs_ElementOrder order) const
|
||||
{ return order == ORDER_ANY ? myNbPrisms+myNbQuadPrisms : order == ORDER_LINEAR ? myNbPrisms : myNbQuadPrisms; }
|
||||
{ return order == ORDER_ANY ? myNbPrisms+myNbQuadPrisms+myNbBiQuadPrisms: order == ORDER_LINEAR ? myNbPrisms : myNbQuadPrisms+myNbBiQuadPrisms; }
|
||||
|
||||
inline int // NbHexPrisms
|
||||
SMDS_MeshInfo::NbHexPrisms (SMDSAbs_ElementOrder order) const
|
||||
@ -386,7 +392,8 @@ SMDS_MeshInfo::NbElementsOfGeom(SMDSAbs_GeometryType geom) const
|
||||
myNbQuadHexas +
|
||||
myNbTriQuadHexas);
|
||||
case SMDSGeom_PENTA: return (myNbPrisms +
|
||||
myNbQuadPrisms);
|
||||
myNbQuadPrisms +
|
||||
myNbBiQuadPrisms);
|
||||
case SMDSGeom_HEXAGONAL_PRISM: return myNbHexPrism;
|
||||
case SMDSGeom_POLYHEDRA: return myNbPolyhedrons;
|
||||
// Discrete:
|
||||
|
@ -170,6 +170,7 @@ int SMDS_VtkVolume::NbFaces() const
|
||||
case VTK_WEDGE:
|
||||
case VTK_QUADRATIC_PYRAMID:
|
||||
case VTK_QUADRATIC_WEDGE:
|
||||
case VTK_BIQUADRATIC_QUADRATIC_WEDGE:
|
||||
nbFaces = 5;
|
||||
break;
|
||||
case VTK_HEXAHEDRON:
|
||||
@ -240,6 +241,7 @@ int SMDS_VtkVolume::NbEdges() const
|
||||
break;
|
||||
case VTK_WEDGE:
|
||||
case VTK_QUADRATIC_WEDGE:
|
||||
case VTK_BIQUADRATIC_QUADRATIC_WEDGE:
|
||||
nbEdges = 9;
|
||||
break;
|
||||
case VTK_HEXAHEDRON:
|
||||
@ -468,6 +470,7 @@ bool SMDS_VtkVolume::IsQuadratic() const
|
||||
case VTK_QUADRATIC_TETRA:
|
||||
case VTK_QUADRATIC_PYRAMID:
|
||||
case VTK_QUADRATIC_WEDGE:
|
||||
case VTK_BIQUADRATIC_QUADRATIC_WEDGE:
|
||||
case VTK_QUADRATIC_HEXAHEDRON:
|
||||
case VTK_TRIQUADRATIC_HEXAHEDRON:
|
||||
return true;
|
||||
@ -498,6 +501,7 @@ bool SMDS_VtkVolume::IsMediumNode(const SMDS_MeshNode* node) const
|
||||
rankFirstMedium = 5; // medium nodes are of rank 5 to 12
|
||||
break;
|
||||
case VTK_QUADRATIC_WEDGE:
|
||||
case VTK_BIQUADRATIC_QUADRATIC_WEDGE:
|
||||
rankFirstMedium = 6; // medium nodes are of rank 6 to 14
|
||||
break;
|
||||
case VTK_QUADRATIC_HEXAHEDRON:
|
||||
@ -533,11 +537,12 @@ int SMDS_VtkVolume::NbCornerNodes() const
|
||||
vtkIdType aVtkType = grid->GetCellType(myVtkID);
|
||||
switch (aVtkType)
|
||||
{
|
||||
case VTK_QUADRATIC_TETRA: return 4;
|
||||
case VTK_QUADRATIC_PYRAMID: return 5;
|
||||
case VTK_QUADRATIC_WEDGE: return 6;
|
||||
case VTK_QUADRATIC_TETRA: return 4;
|
||||
case VTK_QUADRATIC_PYRAMID: return 5;
|
||||
case VTK_QUADRATIC_WEDGE:
|
||||
case VTK_BIQUADRATIC_QUADRATIC_WEDGE: return 6;
|
||||
case VTK_QUADRATIC_HEXAHEDRON:
|
||||
case VTK_TRIQUADRATIC_HEXAHEDRON: return 8;
|
||||
case VTK_TRIQUADRATIC_HEXAHEDRON: return 8;
|
||||
default:;
|
||||
}
|
||||
return NbNodes();
|
||||
@ -612,6 +617,7 @@ SMDSAbs_GeometryType SMDS_VtkVolume::GetGeomType() const
|
||||
break;
|
||||
case VTK_WEDGE:
|
||||
case VTK_QUADRATIC_WEDGE:
|
||||
case VTK_BIQUADRATIC_QUADRATIC_WEDGE:
|
||||
aType = SMDSGeom_PENTA;
|
||||
break;
|
||||
case VTK_HEXAHEDRON:
|
||||
|
@ -9230,7 +9230,7 @@ int SMESH_MeshEditor::convertElemToQuadratic(SMESHDS_SubMesh * theSm,
|
||||
SMESH_MesherHelper& theHelper,
|
||||
const bool theForce3d)
|
||||
{
|
||||
MESSAGE("convertElemToQuadratic");
|
||||
//MESSAGE("convertElemToQuadratic");
|
||||
int nbElem = 0;
|
||||
if( !theSm ) return nbElem;
|
||||
|
||||
@ -9338,7 +9338,6 @@ int SMESH_MeshEditor::convertElemToQuadratic(SMESHDS_SubMesh * theSm,
|
||||
case SMDSEntity_Penta:
|
||||
case SMDSEntity_Quad_Penta:
|
||||
case SMDSEntity_BiQuad_Penta:
|
||||
MESSAGE("--- " << aGeomType);
|
||||
NewElem = theHelper.AddVolume(nodes[0], nodes[1], nodes[2], nodes[3], nodes[4], nodes[5], id, theForce3d);
|
||||
break;
|
||||
case SMDSEntity_Hexa:
|
||||
@ -9369,7 +9368,7 @@ int SMESH_MeshEditor::convertElemToQuadratic(SMESHDS_SubMesh * theSm,
|
||||
|
||||
void SMESH_MeshEditor::ConvertToQuadratic(const bool theForce3d, const bool theToBiQuad)
|
||||
{
|
||||
MESSAGE("ConvertToQuadratic "<< theForce3d << " " << theToBiQuad);
|
||||
//MESSAGE("ConvertToQuadratic "<< theForce3d << " " << theToBiQuad);
|
||||
SMESHDS_Mesh* meshDS = GetMeshDS();
|
||||
|
||||
SMESH_MesherHelper aHelper(*myMesh);
|
||||
@ -9538,7 +9537,6 @@ void SMESH_MeshEditor::ConvertToQuadratic(const bool theForce3d, const bool theT
|
||||
case SMDSEntity_Penta:
|
||||
case SMDSEntity_Quad_Penta:
|
||||
case SMDSEntity_BiQuad_Penta:
|
||||
MESSAGE("--- " << type);
|
||||
NewVolume = aHelper.AddVolume(nodes[0], nodes[1], nodes[2],
|
||||
nodes[3], nodes[4], nodes[5], id, theForce3d);
|
||||
for ( size_t i = 15; i < nodes.size(); ++i ) // rm central nodes
|
||||
|
@ -4883,7 +4883,7 @@ namespace { // Structures used by FixQuadraticElements()
|
||||
void SMESH_MesherHelper::FixQuadraticElements(SMESH_ComputeErrorPtr& compError,
|
||||
bool volumeOnly)
|
||||
{
|
||||
MESSAGE("FixQuadraticElements " << volumeOnly);
|
||||
//MESSAGE("FixQuadraticElements " << volumeOnly);
|
||||
// setenv NO_FixQuadraticElements to know if FixQuadraticElements() is guilty of bad conversion
|
||||
if ( getenv("NO_FixQuadraticElements") )
|
||||
return;
|
||||
@ -4911,7 +4911,6 @@ void SMESH_MesherHelper::FixQuadraticElements(SMESH_ComputeErrorPtr& compError,
|
||||
}
|
||||
else { // fix nodes in the solid and its faces
|
||||
#ifdef _DEBUG_
|
||||
MESSAGE("FIX SOLID " << nbSolids-- << " #" << GetMeshDS()->ShapeToIndex(s.Current()));
|
||||
MSG("FIX SOLID " << nbSolids-- << " #" << GetMeshDS()->ShapeToIndex(s.Current()));
|
||||
#endif
|
||||
SMESH_MesherHelper h(*myMesh);
|
||||
|
@ -153,6 +153,7 @@ vtkIdType getCellType( const SMDSAbs_ElementType theType,
|
||||
else if ( theNbNodes == 20 ) return VTK_QUADRATIC_HEXAHEDRON;
|
||||
else if ( theNbNodes == 27 ) return VTK_TRIQUADRATIC_HEXAHEDRON;
|
||||
else if ( theNbNodes == 15 ) return VTK_QUADRATIC_WEDGE;
|
||||
else if ( theNbNodes == 18 ) return VTK_BIQUADRATIC_QUADRATIC_WEDGE;
|
||||
else if ( theNbNodes == 13 ) return VTK_QUADRATIC_PYRAMID;//VTK_CONVEX_POINT_SET;
|
||||
else return VTK_EMPTY_CELL;
|
||||
|
||||
|
@ -6057,18 +6057,22 @@ Please enter correct value and try again</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_21</source>
|
||||
<translation>OCTA12</translation>
|
||||
<translation>PENTA18</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_22</source>
|
||||
<translation>POLYEDRE</translation>
|
||||
<translation>OCTA12</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_23</source>
|
||||
<translation>QPOLYEDRE</translation>
|
||||
<translation>POLYEDRE</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_24</source>
|
||||
<translation>QPOLYEDRE</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_25</source>
|
||||
<translation>BALL</translation>
|
||||
</message>
|
||||
<message>
|
||||
|
@ -6036,18 +6036,22 @@ Entrez une valeur correcte et essayez de nouveau</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_21</source>
|
||||
<translation>OCTA12</translation>
|
||||
<translation>PENTA18</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_22</source>
|
||||
<translation>POLYEDRE</translation>
|
||||
<translation>OCTA12</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_23</source>
|
||||
<translation>QPOLYEDRE</translation>
|
||||
<translation>POLYEDRE</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_24</source>
|
||||
<translation>QPOLYEDRE</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_25</source>
|
||||
<translation>BALL</translation>
|
||||
</message>
|
||||
<message>
|
||||
|
@ -5848,104 +5848,108 @@
|
||||
<translation>エンティティの種類</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_0</source>
|
||||
<translation>POINT1</translation>
|
||||
<source>ENTITY_TYPE_0</source>
|
||||
<translation>NONE</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_1</source>
|
||||
<translation>POINT1</translation>
|
||||
<source>ENTITY_TYPE_1</source>
|
||||
<translation>POINT1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_2</source>
|
||||
<translation>SEG2</translation>
|
||||
<source>ENTITY_TYPE_2</source>
|
||||
<translation>SEG2</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_3</source>
|
||||
<translation>SEG3</translation>
|
||||
<source>ENTITY_TYPE_3</source>
|
||||
<translation>SEG3</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_4</source>
|
||||
<translation>TRIA3</translation>
|
||||
<source>ENTITY_TYPE_4</source>
|
||||
<translation>TRIA3</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_5</source>
|
||||
<translation>TRIA6</translation>
|
||||
<source>ENTITY_TYPE_5</source>
|
||||
<translation>TRIA6</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_6</source>
|
||||
<translation>QUAD4</translation>
|
||||
<source>ENTITY_TYPE_6</source>
|
||||
<translation>TRIA7</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_7</source>
|
||||
<translation>QUAD8</translation>
|
||||
<source>ENTITY_TYPE_7</source>
|
||||
<translation>QUAD4</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_8</source>
|
||||
<translation>QUAD9</translation>
|
||||
<source>ENTITY_TYPE_8</source>
|
||||
<translation>QUAD8</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_9</source>
|
||||
<translation>TETRA4</translation>
|
||||
<source>ENTITY_TYPE_9</source>
|
||||
<translation>QUAD9</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_10</source>
|
||||
<translation>TETRA10</translation>
|
||||
<source>ENTITY_TYPE_10</source>
|
||||
<translation>POLYGON</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_11</source>
|
||||
<translation>PYRA5</translation>
|
||||
<source>ENTITY_TYPE_11</source>
|
||||
<translation>QPOLYGON</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_12</source>
|
||||
<translation>PYRA13</translation>
|
||||
<source>ENTITY_TYPE_12</source>
|
||||
<translation>TETRA4</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_13</source>
|
||||
<translation>PENTA6</translation>
|
||||
<source>ENTITY_TYPE_13</source>
|
||||
<translation>TETRA10</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_14</source>
|
||||
<translation>PENTA15</translation>
|
||||
<source>ENTITY_TYPE_14</source>
|
||||
<translation>PYRA5</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_15</source>
|
||||
<translation>HEXA8</translation>
|
||||
<source>ENTITY_TYPE_15</source>
|
||||
<translation>PYRA13</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_16</source>
|
||||
<translation>HEXA20</translation>
|
||||
<source>ENTITY_TYPE_16</source>
|
||||
<translation>HEXA8</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_17</source>
|
||||
<translation>HEXA27</translation>
|
||||
<source>ENTITY_TYPE_17</source>
|
||||
<translation>HEXA20</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_18</source>
|
||||
<translation>OCTA12</translation>
|
||||
<source>ENTITY_TYPE_18</source>
|
||||
<translation>HEXA27</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_19</source>
|
||||
<translation>ポリゴン</translation>
|
||||
<source>ENTITY_TYPE_19</source>
|
||||
<translation>PENTA6</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_20</source>
|
||||
<translation>POLYEDRE</translation>
|
||||
<source>ENTITY_TYPE_20</source>
|
||||
<translation>PENTA15</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_21</source>
|
||||
<translation>[なし]</translation>
|
||||
<source>ENTITY_TYPE_21</source>
|
||||
<translation>PENTA18</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_22</source>
|
||||
<translation>ボール</translation>
|
||||
<source>ENTITY_TYPE_22</source>
|
||||
<translation>OCTA12</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_23</source>
|
||||
<translation>QPOLYEDRE</translation>
|
||||
<source>ENTITY_TYPE_23</source>
|
||||
<translation>POLYEDRE</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_24</source>
|
||||
<translation>ボール</translation>
|
||||
<source>ENTITY_TYPE_24</source>
|
||||
<translation>QPOLYEDRE</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>ENTITY_TYPE_25</source>
|
||||
<translation>BALL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>GEOM_TYPE</source>
|
||||
|
Loading…
Reference in New Issue
Block a user