mirror of
https://git.salome-platform.org/gitpub/modules/smesh.git
synced 2024-11-11 16:19:16 +05:00
Clean up of cout replaced by MESSAGE + minor corrections
This commit is contained in:
parent
ee7ca3d826
commit
a91b37ceb3
@ -25,6 +25,8 @@
|
||||
// Module : SMESH
|
||||
//
|
||||
|
||||
#include "utilities.h"
|
||||
|
||||
#include "SMESH_DriverMesh.hxx"
|
||||
|
||||
#include "SMESH_Mesh.hxx"
|
||||
@ -53,7 +55,8 @@ bool diffMEDFile(const std::string mesh_file1, const std::string mesh_file2, con
|
||||
}
|
||||
|
||||
std::string getMeshName(std::string mesh_file){
|
||||
std::unique_ptr<MEDFileUMesh> myMedMesh=MEDFileUMesh::New(mesh_file);
|
||||
// TODO: Memory leak but desctructor private check with AG
|
||||
MEDFileUMesh * myMedMesh = MEDFileUMesh::New(mesh_file);
|
||||
|
||||
return myMedMesh->getLevel0Mesh()->getName();
|
||||
}
|
||||
@ -70,7 +73,7 @@ std::string getMeshName(std::string mesh_file){
|
||||
int importMesh(const std::string mesh_file, SMESH_Mesh& aMesh){
|
||||
// TODO: change that as it depends on the language
|
||||
std::string mesh_name = getMeshName(mesh_file);
|
||||
std::cout << "Importing mesh from " << mesh_file << " mesh " << mesh_name2 << std::endl;
|
||||
MESSAGE("Importing mesh from " << mesh_file << " mesh " << mesh_name);
|
||||
int ret = aMesh.MEDToMesh(mesh_file.c_str(), mesh_name.c_str());
|
||||
return ret;
|
||||
}
|
||||
@ -86,8 +89,7 @@ int importMesh(const std::string mesh_file, SMESH_Mesh& aMesh){
|
||||
*/
|
||||
int exportMesh(const std::string mesh_file, SMESH_Mesh& aMesh, const std::string mesh_name){
|
||||
|
||||
// TODO: See how to get the name of the mesh. Is it usefull ?
|
||||
std::cout << "Exporting mesh to " << mesh_file << std::endl;
|
||||
MESSAGE("Exporting mesh to " << mesh_file);
|
||||
aMesh.ExportMED(mesh_file.c_str(), // theFile
|
||||
mesh_name.c_str(), // theMeshName
|
||||
false, // theAutoGroups
|
||||
|
@ -25,6 +25,7 @@
|
||||
// Module : SMESH
|
||||
//
|
||||
|
||||
#include <utilities.h>
|
||||
#include "SMESH_DriverShape.hxx"
|
||||
|
||||
// step include
|
||||
@ -53,22 +54,24 @@ namespace fs = boost::filesystem;
|
||||
*/
|
||||
int importSTEPShape(const std::string shape_file, TopoDS_Shape& aShape){
|
||||
|
||||
std::cout << "Importing STEP shape from " << shape_file << std::endl;
|
||||
MESSAGE("Importing STEP shape from " << shape_file);
|
||||
STEPControl_Reader reader;
|
||||
// Forcing Unit in meter
|
||||
Interface_Static::SetCVal("xstep.cascade.unit","M");
|
||||
Interface_Static::SetIVal("read.step.ideas", 1);
|
||||
Interface_Static::SetIVal("read.step.nonmanifold", 1);
|
||||
IFSelect_ReturnStatus aStat = reader.ReadFile(shape_file.c_str());
|
||||
if(aStat != IFSelect_RetDone)
|
||||
std::cout << "Reading error for " << shape_file << std::endl;
|
||||
if(aStat != IFSelect_RetDone){
|
||||
std::cerr << "Reading error for " << shape_file << std::endl;
|
||||
return true;
|
||||
}
|
||||
|
||||
int NbTrans = reader.TransferRoots();
|
||||
// There should be only one shape within the file
|
||||
assert(NbTrans==1);
|
||||
aShape = reader.OneShape();
|
||||
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -81,7 +84,7 @@ int importSTEPShape(const std::string shape_file, TopoDS_Shape& aShape){
|
||||
*/
|
||||
int exportSTEPShape(const std::string shape_file, const TopoDS_Shape& aShape){
|
||||
|
||||
std::cout << "Exporting STEP shape to " << shape_file << std::endl;
|
||||
MESSAGE("Exporting STEP shape to " << shape_file);
|
||||
|
||||
STEPControl_Writer aWriter;
|
||||
// Forcing Unit in meter
|
||||
@ -90,14 +93,17 @@ int exportSTEPShape(const std::string shape_file, const TopoDS_Shape& aShape){
|
||||
Interface_Static::SetIVal("write.step.nonmanifold", 1);
|
||||
|
||||
IFSelect_ReturnStatus aStat = aWriter.Transfer(aShape,STEPControl_AsIs);
|
||||
if(aStat != IFSelect_RetDone)
|
||||
std::cout << "Transfer error for " << shape_file << std::endl;
|
||||
if(aStat != IFSelect_RetDone){
|
||||
std::cerr << "Transfer error for " << shape_file << std::endl;
|
||||
return true;
|
||||
}
|
||||
|
||||
aStat = aWriter.Write(shape_file.c_str());
|
||||
|
||||
if(aStat != IFSelect_RetDone)
|
||||
std::cout << "Writing error for " << shape_file << std::endl;
|
||||
|
||||
if(aStat != IFSelect_RetDone){
|
||||
std::cerr << "Writing error for " << shape_file << std::endl;
|
||||
return true;
|
||||
}
|
||||
return aStat;
|
||||
}
|
||||
|
||||
@ -111,11 +117,11 @@ int exportSTEPShape(const std::string shape_file, const TopoDS_Shape& aShape){
|
||||
*/
|
||||
int importBREPShape(const std::string shape_file, TopoDS_Shape& aShape){
|
||||
|
||||
std::cout << "Importing BREP shape from " << shape_file << std::endl;
|
||||
MESSAGE("Importing BREP shape from " << shape_file);
|
||||
BRep_Builder builder;
|
||||
BRepTools::Read(aShape, shape_file.c_str(), builder);
|
||||
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -128,10 +134,10 @@ int importBREPShape(const std::string shape_file, TopoDS_Shape& aShape){
|
||||
*/
|
||||
int exportBREPShape(const std::string shape_file, const TopoDS_Shape& aShape){
|
||||
|
||||
std::cout << "Exporting BREP shape to " << shape_file << std::endl;
|
||||
MESSAGE("Exporting BREP shape to " << shape_file);
|
||||
BRepTools::Write(aShape, shape_file.c_str());
|
||||
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -150,8 +156,8 @@ int importShape(const std::string shape_file, TopoDS_Shape& aShape){
|
||||
} else if (type == ".step"){
|
||||
return importSTEPShape(shape_file, aShape);
|
||||
} else {
|
||||
std::cout << "Unknow format: " << type << std::endl;
|
||||
return false;
|
||||
std::cerr << "Unknow format: " << type << std::endl;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@ -171,7 +177,7 @@ int exportShape(const std::string shape_file, const TopoDS_Shape& aShape){
|
||||
} else if (type == ".step"){
|
||||
return exportSTEPShape(shape_file, aShape);
|
||||
} else {
|
||||
std::cout << "Unknow format: " << type << std::endl;
|
||||
return false;
|
||||
std::cerr << "Unknow format: " << type << std::endl;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -48,7 +48,6 @@
|
||||
#include <TopoDS_Iterator.hxx>
|
||||
|
||||
#include "memoire.h"
|
||||
#include <chrono>
|
||||
#include <functional>
|
||||
|
||||
#ifdef WIN32
|
||||
@ -249,8 +248,7 @@ bool SMESH_Gen::Compute(SMESH_Mesh & aMesh,
|
||||
|
||||
TopAbs_ShapeEnum previousShapeType = TopAbs_VERTEX;
|
||||
int nbThreads = aMesh.GetNbThreads();
|
||||
auto begin = std::chrono::high_resolution_clock::now();
|
||||
std::cout << "Running mesh with threads: " << nbThreads << " mesher: " << aMesh.GetMesherNbThreads() << std::endl;
|
||||
MESSAGE("Running mesh with threads: " << nbThreads << " mesher: " << aMesh.GetMesherNbThreads());
|
||||
|
||||
|
||||
smIt = shapeSM->getDependsOnIterator(includeSelf, !complexShapeFirst);
|
||||
@ -267,7 +265,6 @@ bool SMESH_Gen::Compute(SMESH_Mesh & aMesh,
|
||||
aMesh.SetNbThreads(0);
|
||||
else
|
||||
aMesh.SetNbThreads(nbThreads);
|
||||
//DEBUG std::cout << "Shape Type" << shapeType << " previous" << previousShapeType << std::endl;
|
||||
if ((aMesh.IsParallel()||nbThreads!=0) && shapeType != previousShapeType) {
|
||||
// Waiting for all threads for the previous type to end
|
||||
aMesh.wait();
|
||||
@ -312,8 +309,6 @@ bool SMESH_Gen::Compute(SMESH_Mesh & aMesh,
|
||||
shapeSM, aShapeOnly, allowedSubShapes,
|
||||
aShapesId));
|
||||
} else {
|
||||
auto begin2 = std::chrono::high_resolution_clock::now();
|
||||
|
||||
compute_function(1 ,smToCompute, computeEvent,
|
||||
shapeSM, aShapeOnly, allowedSubShapes,
|
||||
aShapesId);
|
||||
@ -333,13 +328,6 @@ bool SMESH_Gen::Compute(SMESH_Mesh & aMesh,
|
||||
}
|
||||
|
||||
aMesh.GetMeshDS()->Modified();
|
||||
auto end = std::chrono::high_resolution_clock::now();
|
||||
auto elapsed = std::chrono::duration_cast<std::chrono::nanoseconds>(end - begin);
|
||||
std::cout << "Time for All: " << elapsed.count()*1e-9 << std::endl;
|
||||
|
||||
// Pool of thread for computation
|
||||
if(aMesh.IsParallel())
|
||||
aMesh.DeletePoolThreads();
|
||||
|
||||
return ret;
|
||||
}
|
||||
@ -351,7 +339,6 @@ bool SMESH_Gen::Compute(SMESH_Mesh & aMesh,
|
||||
// the most complex shapes and collect sub-meshes with algos that
|
||||
// DO support sub-meshes
|
||||
// ================================================================
|
||||
auto begin = std::chrono::high_resolution_clock::now();
|
||||
list< SMESH_subMesh* > smWithAlgoSupportingSubmeshes[4]; // for each dim
|
||||
|
||||
// map to sort sm with same dim algos according to dim of
|
||||
@ -547,11 +534,7 @@ bool SMESH_Gen::Compute(SMESH_Mesh & aMesh,
|
||||
continue;
|
||||
sm->SetAllowedSubShapes( fillAllowed( shapeSM, aShapeOnly, allowedSubShapes ));
|
||||
setCurrentSubMesh( sm );
|
||||
auto begin = std::chrono::high_resolution_clock::now();
|
||||
sm->ComputeStateEngine( computeEvent );
|
||||
auto end = std::chrono::high_resolution_clock::now();
|
||||
auto elapsed = std::chrono::duration_cast<std::chrono::nanoseconds>(end - begin);
|
||||
std::cout << "Time for seq:alldim:compute: " << elapsed.count()*1e-9 << std::endl;
|
||||
|
||||
setCurrentSubMesh( NULL );
|
||||
sm->SetAllowedSubShapes( nullptr );
|
||||
@ -565,9 +548,6 @@ bool SMESH_Gen::Compute(SMESH_Mesh & aMesh,
|
||||
// mesh the rest sub-shapes starting from vertices
|
||||
// -----------------------------------------------
|
||||
ret = Compute( aMesh, aShape, aFlags | UPWARD, aDim, aShapesId, allowedSubShapes );
|
||||
auto end = std::chrono::high_resolution_clock::now();
|
||||
auto elapsed = std::chrono::duration_cast<std::chrono::nanoseconds>(end - begin);
|
||||
std::cout << "Time for All: " << elapsed.count()*1e-9 << std::endl;
|
||||
|
||||
}
|
||||
|
||||
|
@ -174,13 +174,11 @@ namespace
|
||||
#ifndef WIN32
|
||||
void deleteMeshDS(SMESHDS_Mesh* meshDS)
|
||||
{
|
||||
//cout << "deleteMeshDS( " << meshDS << endl;
|
||||
delete meshDS;
|
||||
}
|
||||
#else
|
||||
static void* deleteMeshDS(void* meshDS)
|
||||
{
|
||||
//cout << "deleteMeshDS( " << meshDS << endl;
|
||||
SMESHDS_Mesh* m = (SMESHDS_Mesh*)meshDS;
|
||||
if(m) {
|
||||
delete m;
|
||||
@ -240,10 +238,12 @@ SMESH_Mesh::~SMESH_Mesh()
|
||||
pthread_t thread;
|
||||
int result=pthread_create(&thread, NULL, deleteMeshDS, (void*)_meshDS);
|
||||
#endif
|
||||
|
||||
//fs::remove_all(tmp_folder);
|
||||
|
||||
}
|
||||
|
||||
if(_pool)
|
||||
DeletePoolThreads();
|
||||
if (!MYDEBUG)
|
||||
fs::remove_all(tmp_folder);
|
||||
}
|
||||
|
||||
//================================================================================
|
||||
@ -541,7 +541,7 @@ int SMESH_Mesh::MEDToMesh(const char* theFileName, const char* theMeshName)
|
||||
Driver_Mesh::Status status = myReader.Perform();
|
||||
#ifdef _DEBUG_
|
||||
SMESH_ComputeErrorPtr er = myReader.GetError();
|
||||
if ( er && !er->IsOK() ) std::cout << er->myComment << std::endl;
|
||||
if ( er && !er->IsOK() ) MESSAGE(er->myComment);
|
||||
#endif
|
||||
|
||||
// Reading groups (sub-meshes are out of scope of MED import functionality)
|
||||
@ -1770,7 +1770,6 @@ double SMESH_Mesh::GetComputeProgress() const
|
||||
rate = algo->GetProgressByTic();
|
||||
computedCost += algoDoneCost + rate * algoNotDoneCost;
|
||||
}
|
||||
// cout << "rate: "<<rate << " algoNotDoneCost: " << algoNotDoneCost << endl;
|
||||
}
|
||||
|
||||
// get cost of already treated sub-meshes
|
||||
@ -1791,9 +1790,6 @@ double SMESH_Mesh::GetComputeProgress() const
|
||||
}
|
||||
}
|
||||
}
|
||||
// cout << "Total: " << totalCost
|
||||
// << " computed: " << computedCost << " progress: " << computedCost / totalCost
|
||||
// << " nbElems: " << GetMeshDS()->GetMeshInfo().NbElements() << endl;
|
||||
return computedCost / totalCost;
|
||||
}
|
||||
|
||||
|
@ -28,7 +28,7 @@
|
||||
|
||||
#include "SMDS_EdgePosition.hxx"
|
||||
#include "SMDS_FaceOfNodes.hxx"
|
||||
#include "SMDS_FacePosition.hxx"
|
||||
#include "SMDS_FacePosition.hxx"
|
||||
#include "SMDS_IteratorOnIterators.hxx"
|
||||
#include "SMDS_VolumeTool.hxx"
|
||||
#include "SMESHDS_Mesh.hxx"
|
||||
@ -100,7 +100,7 @@ SMESH_MesherHelper::SMESH_MesherHelper(SMESH_Mesh& theMesh)
|
||||
|
||||
//=======================================================================
|
||||
//function : ~SMESH_MesherHelper
|
||||
//purpose :
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
|
||||
SMESH_MesherHelper::~SMESH_MesherHelper()
|
||||
@ -425,7 +425,7 @@ bool SMESH_MesherHelper::GetNodeUVneedInFaceNode(const TopoDS_Face& F) const
|
||||
|
||||
//=======================================================================
|
||||
//function : IsMedium
|
||||
//purpose :
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
|
||||
bool SMESH_MesherHelper::IsMedium(const SMDS_MeshNode* node,
|
||||
@ -583,7 +583,7 @@ bool SMESH_MesherHelper::toCheckPosOnShape(int shapeID ) const
|
||||
|
||||
void SMESH_MesherHelper::setPosOnShapeValidity(int shapeID, bool ok ) const
|
||||
{
|
||||
std::map< int,bool >::iterator sh_ok =
|
||||
std::map< int,bool >::iterator sh_ok =
|
||||
((SMESH_MesherHelper*)this)->myNodePosShapesValidity.insert( make_pair( shapeID, ok)).first;
|
||||
if ( !ok )
|
||||
sh_ok->second = ok;
|
||||
@ -591,7 +591,7 @@ void SMESH_MesherHelper::setPosOnShapeValidity(int shapeID, bool ok ) const
|
||||
|
||||
//=======================================================================
|
||||
//function : ToFixNodeParameters
|
||||
//purpose : Enables fixing node parameters on EDGEs and FACEs in
|
||||
//purpose : Enables fixing node parameters on EDGEs and FACEs in
|
||||
// GetNodeU(...,check=true), GetNodeUV(...,check=true), CheckNodeUV() and
|
||||
// CheckNodeU() in case if a node lies on a shape set via SetSubShape().
|
||||
// Default is False
|
||||
@ -943,7 +943,7 @@ namespace
|
||||
{
|
||||
gp_XY AverageUV(const gp_XY& uv1, const gp_XY& uv2) { return ( uv1 + uv2 ) / 2.; }
|
||||
gp_XY_FunPtr(Added); // define gp_XY_Added pointer to function calling gp_XY::Added(gp_XY)
|
||||
gp_XY_FunPtr(Subtracted);
|
||||
gp_XY_FunPtr(Subtracted);
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
@ -967,9 +967,9 @@ gp_XY SMESH_MesherHelper::ApplyIn2D(Handle(Geom_Surface) surface,
|
||||
return fun(uv1,uv2);
|
||||
|
||||
// move uv2 not far than half-period from uv1
|
||||
double u2 =
|
||||
double u2 =
|
||||
uv2.X()+(isUPeriodic ? ShapeAnalysis::AdjustByPeriod(uv2.X(),uv1.X(),surface->UPeriod()) :0);
|
||||
double v2 =
|
||||
double v2 =
|
||||
uv2.Y()+(isVPeriodic ? ShapeAnalysis::AdjustByPeriod(uv2.Y(),uv1.Y(),surface->VPeriod()) :0);
|
||||
|
||||
// execute operation
|
||||
@ -1038,8 +1038,8 @@ gp_XY SMESH_MesherHelper::GetMiddleUV(const Handle(Geom_Surface)& surface,
|
||||
//=======================================================================
|
||||
|
||||
gp_XY SMESH_MesherHelper::GetCenterUV(const gp_XY& uv1,
|
||||
const gp_XY& uv2,
|
||||
const gp_XY& uv3,
|
||||
const gp_XY& uv2,
|
||||
const gp_XY& uv3,
|
||||
const gp_XY& uv12,
|
||||
const gp_XY& uv23,
|
||||
const gp_XY& uv31,
|
||||
@ -1370,7 +1370,7 @@ const SMDS_MeshNode* SMESH_MesherHelper::GetCentralNode(const SMDS_MeshNode* n1,
|
||||
TBiQuad keyOfMap(n1,n2,n3,n4);
|
||||
std::map<TBiQuad, const SMDS_MeshNode* >::iterator itMapCentralNode;
|
||||
itMapCentralNode = myMapWithCentralNode.find( keyOfMap );
|
||||
if ( itMapCentralNode != myMapWithCentralNode.end() )
|
||||
if ( itMapCentralNode != myMapWithCentralNode.end() )
|
||||
{
|
||||
return (*itMapCentralNode).second;
|
||||
}
|
||||
@ -1385,9 +1385,9 @@ const SMDS_MeshNode* SMESH_MesherHelper::GetCentralNode(const SMDS_MeshNode* n1,
|
||||
|
||||
std::map< int, int > faceId2nbNodes;
|
||||
std::map< int, int > ::iterator itMapWithIdFace;
|
||||
|
||||
|
||||
SMESHDS_Mesh* meshDS = GetMeshDS();
|
||||
|
||||
|
||||
// check if a face lies on a FACE, i.e. its all corner nodes lie either on the FACE or
|
||||
// on sub-shapes of the FACE
|
||||
if ( GetMesh()->HasShapeToMesh() )
|
||||
@ -1545,7 +1545,7 @@ const SMDS_MeshNode* SMESH_MesherHelper::GetCentralNode(const SMDS_MeshNode* n1,
|
||||
TBiQuad keyOfMap(n1,n2,n3);
|
||||
std::map<TBiQuad, const SMDS_MeshNode* >::iterator itMapCentralNode;
|
||||
itMapCentralNode = myMapWithCentralNode.find( keyOfMap );
|
||||
if ( itMapCentralNode != myMapWithCentralNode.end() )
|
||||
if ( itMapCentralNode != myMapWithCentralNode.end() )
|
||||
{
|
||||
return (*itMapCentralNode).second;
|
||||
}
|
||||
@ -1560,9 +1560,9 @@ const SMDS_MeshNode* SMESH_MesherHelper::GetCentralNode(const SMDS_MeshNode* n1,
|
||||
|
||||
std::map< int, int > faceId2nbNodes;
|
||||
std::map< int, int > ::iterator itMapWithIdFace;
|
||||
|
||||
|
||||
SMESHDS_Mesh* meshDS = GetMeshDS();
|
||||
|
||||
|
||||
// check if a face lies on a FACE, i.e. its all corner nodes lie either on the FACE or
|
||||
// on sub-shapes of the FACE
|
||||
if ( GetMesh()->HasShapeToMesh() )
|
||||
@ -2004,7 +2004,7 @@ SMDS_MeshEdge* SMESH_MesherHelper::AddEdge(const SMDS_MeshNode* n1,
|
||||
const bool force3d)
|
||||
{
|
||||
SMESHDS_Mesh * meshDS = GetMeshDS();
|
||||
|
||||
|
||||
SMDS_MeshEdge* edge = 0;
|
||||
if (myCreateQuadratic) {
|
||||
const SMDS_MeshNode* n12 = GetMediumNode(n1,n2,force3d);
|
||||
@ -2467,7 +2467,7 @@ SMDS_MeshVolume* SMESH_MesherHelper::AddVolume(const SMDS_MeshNode* n1,
|
||||
const SMDS_MeshNode* n10,
|
||||
const SMDS_MeshNode* n11,
|
||||
const SMDS_MeshNode* n12,
|
||||
const smIdType id,
|
||||
const smIdType id,
|
||||
bool /*force3d*/)
|
||||
{
|
||||
SMESHDS_Mesh * meshDS = GetMeshDS();
|
||||
@ -3206,7 +3206,7 @@ bool SMESH_MesherHelper::IsSubShape( const TopoDS_Shape& shape,
|
||||
|
||||
//=======================================================================
|
||||
//function : IsSubShape
|
||||
//purpose :
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
|
||||
bool SMESH_MesherHelper::IsSubShape( const TopoDS_Shape& shape, SMESH_Mesh* aMesh )
|
||||
@ -3221,7 +3221,7 @@ bool SMESH_MesherHelper::IsSubShape( const TopoDS_Shape& shape, SMESH_Mesh* aMes
|
||||
|
||||
//=======================================================================
|
||||
//function : IsBlock
|
||||
//purpose :
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
|
||||
bool SMESH_MesherHelper::IsBlock( const TopoDS_Shape& shape )
|
||||
@ -3324,7 +3324,7 @@ double SMESH_MesherHelper::GetAngle( const TopoDS_Edge & theE1,
|
||||
if ( ++nbLoops > 10 )
|
||||
{
|
||||
#ifdef _DEBUG_
|
||||
cout << "SMESH_MesherHelper::GetAngle(): Captured in a sigularity" << endl;
|
||||
MESSAGE("SMESH_MesherHelper::GetAngle(): Captured in a singularity");
|
||||
#endif
|
||||
return angle;
|
||||
}
|
||||
@ -3404,7 +3404,7 @@ TopoDS_Vertex SMESH_MesherHelper::IthVertex( const bool is2nd,
|
||||
|
||||
//================================================================================
|
||||
/*!
|
||||
* \brief Return type of shape contained in a group
|
||||
* \brief Return type of shape contained in a group
|
||||
* \param group - a shape of type TopAbs_COMPOUND
|
||||
* \param avoidCompound - not to return TopAbs_COMPOUND
|
||||
*/
|
||||
@ -3464,13 +3464,13 @@ SMESH_MesherHelper:: MType SMESH_MesherHelper::IsQuadraticMesh()
|
||||
NbAllEdgsAndFaces = myMesh->NbEdges() + myMesh->NbFaces();
|
||||
if ( NbAllEdgsAndFaces == 0 )
|
||||
return SMESH_MesherHelper::LINEAR;
|
||||
|
||||
|
||||
//Quadratic faces and edges
|
||||
NbQuadFacesAndEdgs = myMesh->NbEdges(ORDER_QUADRATIC) + myMesh->NbFaces(ORDER_QUADRATIC);
|
||||
|
||||
//Linear faces and edges
|
||||
NbFacesAndEdges = myMesh->NbEdges(ORDER_LINEAR) + myMesh->NbFaces(ORDER_LINEAR);
|
||||
|
||||
|
||||
if (NbAllEdgsAndFaces == NbQuadFacesAndEdgs) {
|
||||
//Quadratic mesh
|
||||
return SMESH_MesherHelper::QUADRATIC;
|
||||
@ -4120,7 +4120,7 @@ namespace { // Structures used by FixQuadraticElements()
|
||||
}
|
||||
}
|
||||
else if ( _sides.size() < 4 )
|
||||
return thePrevLen;
|
||||
return thePrevLen;
|
||||
|
||||
// propagate to adjacent faces till limit step or boundary
|
||||
double len1 = thePrevLen + (theLink->MiddlePnt() - _sides[iL1]->MiddlePnt()).Modulus();
|
||||
@ -4210,7 +4210,7 @@ namespace { // Structures used by FixQuadraticElements()
|
||||
void QLink::SetContinuesFaces() const
|
||||
{
|
||||
// x0 x - QLink, [-|] - QFace, v - volume
|
||||
// v0 | v1
|
||||
// v0 | v1
|
||||
// | Between _faces of link x2 two vertical faces are continues
|
||||
// x1----x2-----x3 and two horizontal faces are continues. We set vertical faces
|
||||
// | to _faces[0] and _faces[1] and horizontal faces to
|
||||
@ -4317,7 +4317,7 @@ namespace { // Structures used by FixQuadraticElements()
|
||||
}
|
||||
return isStraight;
|
||||
}
|
||||
|
||||
|
||||
//================================================================================
|
||||
/*!
|
||||
* \brief Move medium nodes of vertical links of pentahedrons adjacent by side faces
|
||||
@ -4446,13 +4446,13 @@ namespace { // Structures used by FixQuadraticElements()
|
||||
while ( startLink != linksEnd) // loop on columns
|
||||
{
|
||||
// We suppose we have a rectangular structure like shown here. We have found a
|
||||
// corner of the rectangle (startCorner) and a boundary link sharing
|
||||
// |/ |/ | the startCorner (startLink). We are going to loop on rows of the
|
||||
// --o---o---o structure making several chains at once. One chain (columnChain)
|
||||
// |\ | /| starts at startLink and continues upward (we look at the structure
|
||||
// \ | \ | / | from such point that startLink is on the bottom of the structure).
|
||||
// \| \|/ | While going upward we also fill horizontal chains (rowChains) we
|
||||
// --o---o---o encounter.
|
||||
// corner of the rectangle (startCorner) and a boundary link sharing
|
||||
// |/ |/ | the startCorner (startLink). We are going to loop on rows of the
|
||||
// --o---o---o structure making several chains at once. One chain (columnChain)
|
||||
// |\ | /| starts at startLink and continues upward (we look at the structure
|
||||
// \ | \ | / | from such point that startLink is on the bottom of the structure).
|
||||
// \| \|/ | While going upward we also fill horizontal chains (rowChains) we
|
||||
// --o---o---o encounter.
|
||||
// /|\ |\ |
|
||||
// / | \ | \ | startCorner
|
||||
// | \| \|,'
|
||||
@ -4715,7 +4715,7 @@ namespace { // Structures used by FixQuadraticElements()
|
||||
continue;
|
||||
gp_XYZ edgeDir = SMESH_TNodeXYZ( nOnEdge[0] ) - SMESH_TNodeXYZ( nOnEdge[1] );
|
||||
gp_XYZ edgeNorm = faceNorm ^ edgeDir;
|
||||
n = theHelper.GetMediumNode( nOnEdge[0], nOnEdge[1], true ); // find n, not create
|
||||
n = theHelper.GetMediumNode( nOnEdge[0], nOnEdge[1], true ); // find n, not create
|
||||
gp_XYZ pN0 = SMESH_TNodeXYZ( nOnEdge[0] );
|
||||
gp_XYZ pMedium = SMESH_TNodeXYZ( n ); // on-edge node location
|
||||
gp_XYZ pFaceN = SMESH_TNodeXYZ( nOnFace ); // on-face node location
|
||||
@ -5440,7 +5440,7 @@ void SMESH_MesherHelper::FixQuadraticElements(SMESH_ComputeErrorPtr& compError,
|
||||
{
|
||||
uv[ i ] = GetNodeUV( F, nodes[i], nodes[8], &checkUV );
|
||||
// as this method is used after mesh generation, UV of nodes is not
|
||||
// updated according to bending links, so we update
|
||||
// updated according to bending links, so we update
|
||||
if ( i > 3 && nodes[i]->GetPosition()->GetTypeOfPosition() == SMDS_TOP_FACE )
|
||||
CheckNodeUV( F, nodes[i], uv[ i ], 2*tol, /*force=*/true );
|
||||
}
|
||||
@ -5475,7 +5475,7 @@ void SMESH_MesherHelper::FixQuadraticElements(SMESH_ComputeErrorPtr& compError,
|
||||
{
|
||||
uv[ i ] = GetNodeUV( F, nodes[i], nodes[(i+1)%3], &uvOK );
|
||||
// as this method is used after mesh generation, UV of nodes is not
|
||||
// updated according to bending links, so we update
|
||||
// updated according to bending links, so we update
|
||||
if ( nodes[i]->GetPosition()->GetTypeOfPosition() == SMDS_TOP_FACE )
|
||||
CheckNodeUV( F, nodes[i], uv[ i ], 2*tol, /*force=*/true );
|
||||
}
|
||||
@ -5542,16 +5542,16 @@ void SMESH_MesherHelper::FixQuadraticElements(SMESH_ComputeErrorPtr& compError,
|
||||
pointsOnShapes[ SMESH_Block::ID_Ex11 ] = SMESH_TNodeXYZ( hexNodes[ 13 ] );
|
||||
pointsOnShapes[ SMESH_Block::ID_E0y1 ] = SMESH_TNodeXYZ( hexNodes[ 12 ] );
|
||||
pointsOnShapes[ SMESH_Block::ID_E1y1 ] = SMESH_TNodeXYZ( hexNodes[ 14 ] );
|
||||
pointsOnShapes[ SMESH_Block::ID_E00z ] = SMESH_TNodeXYZ( hexNodes[ 16 ] );
|
||||
pointsOnShapes[ SMESH_Block::ID_E10z ] = SMESH_TNodeXYZ( hexNodes[ 19 ] );
|
||||
pointsOnShapes[ SMESH_Block::ID_E01z ] = SMESH_TNodeXYZ( hexNodes[ 17 ] );
|
||||
pointsOnShapes[ SMESH_Block::ID_E00z ] = SMESH_TNodeXYZ( hexNodes[ 16 ] );
|
||||
pointsOnShapes[ SMESH_Block::ID_E10z ] = SMESH_TNodeXYZ( hexNodes[ 19 ] );
|
||||
pointsOnShapes[ SMESH_Block::ID_E01z ] = SMESH_TNodeXYZ( hexNodes[ 17 ] );
|
||||
pointsOnShapes[ SMESH_Block::ID_E11z ] = SMESH_TNodeXYZ( hexNodes[ 18 ] );
|
||||
|
||||
pointsOnShapes[ SMESH_Block::ID_Fxy0 ] = SMESH_TNodeXYZ( hexNodes[ 20 ] );
|
||||
pointsOnShapes[ SMESH_Block::ID_Fxy1 ] = SMESH_TNodeXYZ( hexNodes[ 25 ] );
|
||||
pointsOnShapes[ SMESH_Block::ID_Fx0z ] = SMESH_TNodeXYZ( hexNodes[ 21 ] );
|
||||
pointsOnShapes[ SMESH_Block::ID_Fx1z ] = SMESH_TNodeXYZ( hexNodes[ 23 ] );
|
||||
pointsOnShapes[ SMESH_Block::ID_F0yz ] = SMESH_TNodeXYZ( hexNodes[ 24 ] );
|
||||
pointsOnShapes[ SMESH_Block::ID_Fx0z ] = SMESH_TNodeXYZ( hexNodes[ 21 ] );
|
||||
pointsOnShapes[ SMESH_Block::ID_Fx1z ] = SMESH_TNodeXYZ( hexNodes[ 23 ] );
|
||||
pointsOnShapes[ SMESH_Block::ID_F0yz ] = SMESH_TNodeXYZ( hexNodes[ 24 ] );
|
||||
pointsOnShapes[ SMESH_Block::ID_F1yz ] = SMESH_TNodeXYZ( hexNodes[ 22 ] );
|
||||
|
||||
gp_XYZ nCenterParams(0.5, 0.5, 0.5), nCenterCoords;
|
||||
@ -5588,8 +5588,5 @@ void SMESH_MesherHelper::WriteShape(const TopoDS_Shape& s)
|
||||
{
|
||||
const char* name = "/tmp/shape.brep";
|
||||
BRepTools::Write( s, name );
|
||||
#ifdef _DEBUG_
|
||||
std::cout << name << std::endl;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
@ -1583,7 +1583,7 @@ bool SMESH_subMesh::ComputeStateEngine(compute_event event)
|
||||
_computeError = SMESH_ComputeError::Worst( _computeError, algo->GetComputeError() );
|
||||
}
|
||||
catch ( ::SMESH_ComputeError& comperr ) {
|
||||
cout << " SMESH_ComputeError caught" << endl;
|
||||
MESSAGE(" SMESH_ComputeError caught");
|
||||
if ( !_computeError ) _computeError = SMESH_ComputeError::New();
|
||||
*_computeError = comperr;
|
||||
}
|
||||
|
@ -6645,8 +6645,6 @@ CORBA::Boolean SMESH_Gen_i::IsApplicable ( const char* theAlgoType,
|
||||
|
||||
SMESH_CATCH( SMESH::doNothing );
|
||||
|
||||
#ifdef _DEBUG_
|
||||
cout << "SMESH_Gen_i::IsApplicable(): exception in " << ( theAlgoType ? theAlgoType : "") << endl;
|
||||
#endif
|
||||
MESSAGE("SMESH_Gen_i::IsApplicable(): exception in " << ( theAlgoType ? theAlgoType : ""));
|
||||
return true;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user