From 6bc3fcbb2abc99153cbcbd953de926ad927be8b5 Mon Sep 17 00:00:00 2001 From: jfa Date: Thu, 1 Nov 2012 09:04:40 +0000 Subject: [PATCH] Write STEP files in meters --- src/STEPExport/STEPExport.cxx | 53 +++++++++++++++++------------------ 1 file changed, 26 insertions(+), 27 deletions(-) diff --git a/src/STEPExport/STEPExport.cxx b/src/STEPExport/STEPExport.cxx index 4a0805c84..abe5c310a 100644 --- a/src/STEPExport/STEPExport.cxx +++ b/src/STEPExport/STEPExport.cxx @@ -18,13 +18,11 @@ // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// // File: STEPExport.cxx // Created: Wed May 19 14:53:52 2004 // Author: Pavel TELKOV -// -// + #include "utilities.h" #include @@ -63,36 +61,37 @@ extern "C" { -STEPEXPORT_EXPORT + STEPEXPORT_EXPORT int Export(const TopoDS_Shape& theShape, const TCollection_AsciiString& theFileName) { MESSAGE("Export STEP into file " << theFileName.ToCString()); - try - { - // Set "C" numeric locale to save numbers correctly - Kernel_Utils::Localizer loc; + try + { + // Set "C" numeric locale to save numbers correctly + Kernel_Utils::Localizer loc; - IFSelect_ReturnStatus status ; - //VRV: OCC 4.0 migration - STEPControl_Writer aWriter; - //VSR: 16/09/09: Convert to METERS - Interface_Static::SetCVal("xstep.cascade.unit","M"); - Interface_Static::SetIVal("write.step.nonmanifold", 1); -//JFA: PAL6162 status = aWriter.Transfer( theShape, STEPControl_ManifoldSolidBrep ); - status = aWriter.Transfer( theShape, STEPControl_AsIs ); - //VRV: OCC 4.0 migration - if ( status == IFSelect_RetDone ) + IFSelect_ReturnStatus status ; + //VRV: OCC 4.0 migration + STEPControl_Writer aWriter; + //VSR: 16/09/09: Convert to METERS + Interface_Static::SetCVal("xstep.cascade.unit","M"); + Interface_Static::SetCVal("write.step.unit", "M"); + Interface_Static::SetIVal("write.step.nonmanifold", 1); + //JFA: PAL6162 status = aWriter.Transfer( theShape, STEPControl_ManifoldSolidBrep ); + status = aWriter.Transfer( theShape, STEPControl_AsIs ); + //VRV: OCC 4.0 migration + if ( status == IFSelect_RetDone ) status = aWriter.Write( theFileName.ToCString() ); - // Return previous locale - if ( status == IFSelect_RetDone ) - return 1; - } - catch(Standard_Failure) - { - //THROW_SALOME_CORBA_EXCEPTION("Exception catched in STEPExport", SALOME::BAD_PARAM); - } - return 0; + // Return previous locale + if ( status == IFSelect_RetDone ) + return 1; + } + catch (Standard_Failure) + { + //THROW_SALOME_CORBA_EXCEPTION("Exception catched in STEPExport", SALOME::BAD_PARAM); + } + return 0; } } -- 2.39.2