From 61462dcf973e6875e3f875d4c59d83f7f7eb789b Mon Sep 17 00:00:00 2001 From: Robert Osfield Date: Fri, 9 Dec 2016 17:29:55 +0000 Subject: [PATCH] Added support for reading from STEP (.stp) files. --- src/osgPlugins/iges/ReaderWriterIGES.cpp | 58 +++++++++++++++++++----- 1 file changed, 47 insertions(+), 11 deletions(-) diff --git a/src/osgPlugins/iges/ReaderWriterIGES.cpp b/src/osgPlugins/iges/ReaderWriterIGES.cpp index 96e432d1a..75f156764 100644 --- a/src/osgPlugins/iges/ReaderWriterIGES.cpp +++ b/src/osgPlugins/iges/ReaderWriterIGES.cpp @@ -52,6 +52,8 @@ #include #include +#include + #include #include #include @@ -81,6 +83,18 @@ namespace IGES { REGISTER_OSGPLUGIN(iges, ReaderWriterIGES) + ReaderWriterIGES::ReaderWriterIGES() + { + OSG_NOTICE<<"ReaderWriterIGES::ReaderWriterIGES()"<NewDocument("MDTV-XCAF", doc); - IGESCAFControl_Reader reader; - reader.SetColorMode(true); - reader.SetNameMode(true); - reader.SetLayerMode(true); - - //IGESControl_Reader Reader; - reader.ReadFile( (Standard_CString)filePath.c_str() ); - /// transfer data from reader to doc - if(!reader.Transfer(doc)) + std::string ext = osgDB::getLowerCaseFileExtension(filePath); + if (ext=="stp" || ext=="step") { - cout << "Cannot read any relevant data from the IGES file" << endl; - return NULL; + OSG_NOTICE<<"Using STEPCAFControl_Reader to read file : "<