X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FDriverUNV%2FDriverUNV_W_SMDS_Mesh.cxx;h=639cedf9cab78629ae8c5c4ec552fccd9dada8f0;hp=13ca2e262682e268d87af41e14851c22106debed;hb=0b4f557c95428aa7025773eef95eef5796a1e74a;hpb=b0a908c0d20341651771d0249fb10882f54b2aad diff --git a/src/DriverUNV/DriverUNV_W_SMDS_Mesh.cxx b/src/DriverUNV/DriverUNV_W_SMDS_Mesh.cxx index 13ca2e262..639cedf9c 100644 --- a/src/DriverUNV/DriverUNV_W_SMDS_Mesh.cxx +++ b/src/DriverUNV/DriverUNV_W_SMDS_Mesh.cxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2014 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2019 CEA/DEN, EDF R&D, OPEN CASCADE // // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS @@ -25,9 +25,6 @@ #include "DriverUNV_W_SMDS_Mesh.h" #include "SMDS_Mesh.hxx" -#include "SMDS_QuadraticEdge.hxx" -#include "SMDS_QuadraticFaceOfNodes.hxx" -#include "SMDS_PolyhedralVolumeOfNodes.hxx" #include "SMESHDS_GroupBase.hxx" #include "utilities.h" @@ -44,27 +41,16 @@ using namespace std; using namespace UNV; -namespace{ - typedef std::vector TConnect; - - int GetConnect(const SMDS_ElemIteratorPtr& theNodesIter, - TConnect& theConnect) - { - theConnect.clear(); - for(; theNodesIter->more();){ - const SMDS_MeshElement* anElem = theNodesIter->next(); - theConnect.push_back(anElem->GetID()); - } - return theConnect.size(); - } - -} - Driver_Mesh::Status DriverUNV_W_SMDS_Mesh::Perform() { Kernel_Utils::Localizer loc; Status aResult = DRS_OK; +#if defined(WIN32) && defined(UNICODE) + std::wstring aFile = Kernel_Utils::utf8_decode_s(myFile); + std::ofstream out_stream(aFile.c_str()); +#else std::ofstream out_stream(myFile.c_str()); +#endif try{ UNV164::Write( out_stream ); // unit system @@ -75,7 +61,6 @@ Driver_Mesh::Status DriverUNV_W_SMDS_Mesh::Perform() TDataSet aDataSet2411; // Storing SMDS nodes to the UNV file //----------------------------------- - MESSAGE("Perform - myMesh->NbNodes() = "<NbNodes()); SMDS_NodeIteratorPtr aNodesIter = myMesh->nodesIterator(); TRecord aRec; while ( aNodesIter->more() ) @@ -87,16 +72,13 @@ Driver_Mesh::Status DriverUNV_W_SMDS_Mesh::Perform() aRec.coord[2] = aNode->Z(); aDataSet2411.push_back( aRec ); } - MESSAGE("Perform - aDataSet2411.size() = "<NbEdges() = "<NbEdges()); if(myMesh->NbEdges()){ SMDS_EdgeIteratorPtr anIter = myMesh->edgesIterator(); while( anIter->more() ) @@ -119,10 +101,8 @@ Driver_Mesh::Status DriverUNV_W_SMDS_Mesh::Perform() } aDataSet2412.push_back(aRec); } - MESSAGE("Perform - aDataSet2412.size() = "<NbFaces() = "<NbFaces()); if ( myMesh->NbFaces() ) { SMDS_FaceIteratorPtr anIter = myMesh->facesIterator(); @@ -151,10 +131,8 @@ Driver_Mesh::Status DriverUNV_W_SMDS_Mesh::Perform() } aDataSet2412.push_back(aRec); } - MESSAGE("Perform - aDataSet2412.size() = "<NbVolumes() = "<NbVolumes()); if ( myMesh->NbVolumes() ) { SMDS_VolumeIteratorPtr anIter = myMesh->volumesIterator(); @@ -183,7 +161,7 @@ Driver_Mesh::Status DriverUNV_W_SMDS_Mesh::Perform() aRec.fe_descriptor_id = anId; aRec.node_labels.reserve(aNbNodes); SMDS_NodeIteratorPtr aNodesIter = anElem->nodesIteratorToUNV(); - while ( aNodesIter->more() && aRec.node_labels.size() < aNbNodes ) + while ( aNodesIter->more() && (int)aRec.node_labels.size() < aNbNodes ) { const SMDS_MeshElement* aNode = aNodesIter->next(); aRec.node_labels.push_back(aNode->GetID()); @@ -191,7 +169,6 @@ Driver_Mesh::Status DriverUNV_W_SMDS_Mesh::Perform() aDataSet2412.push_back(aRec); } } - MESSAGE("Perform - aDataSet2412.size() = "<