几何模型可以导入 stl了

pull/1/head
剑古敛锋 2024-07-23 10:28:41 +08:00
parent 9df123afed
commit dab67df1e9
3 changed files with 19 additions and 2 deletions

View File

@ -2,8 +2,8 @@
#define GEOON true;
#define GEOOFF false;
#define GEOIMPORT "stp;step;igs;iges;brep"
#define GEOEXPORT "stp;step;igs;iges;brep"
#define GEOIMPORT "stp;step;igs;iges;brep;stl"
#define GEOEXPORT "stp;step;igs;iges;brep;stl"
namespace ConfigOption
{

View File

@ -7,6 +7,7 @@
#include "GeometryDataExchange/STEPdataExchange.h"
#include "GeometryDataExchange/GeometryThreadBase.h"
#include "ModuleBase/ThreadControl.h"
#include "GeometryDataExchange/STLdataExchange.h"
#include <QFileInfo>
namespace Command
@ -112,6 +113,12 @@ namespace Command
connect(brepReader, SIGNAL(ShowSetSig(Geometry::GeometrySet *, bool)), this, SIGNAL(showSet(Geometry::GeometrySet *, bool)));
emit tc->threadStart(); // emit brepReader->start();
}
else if(suffix=="stl"){
auto stlReader = new Geometry::STLdataExchange(fileName, Geometry::GEOMETRY_READ, _mw, _resSet);
ModuleBase::ThreadControl *tc = new ModuleBase::ThreadControl(stlReader);
connect(stlReader, SIGNAL(ShowSetSig(Geometry::GeometrySet *, bool)), this, SIGNAL(showSet(Geometry::GeometrySet *, bool)));
emit tc->threadStart(); // emit stlReader->start();
}
}
return true;
}
@ -143,6 +150,13 @@ namespace Command
connect(brepReader, SIGNAL(ShowSetSig(Geometry::GeometrySet *, bool)), this, SIGNAL(showSet(Geometry::GeometrySet *, bool)));
emit tc->threadStart(); // emit brepReader->start();
}
else if(suffix=="stl")
{
auto stlReader = new Geometry::STLdataExchange(_exportfile, Geometry::GEOMETRY_WRITE, _mw, _resSet);
ModuleBase::ThreadControl *tc = new ModuleBase::ThreadControl(stlReader);
connect(stlReader, SIGNAL(ShowSetSig(Geometry::GeometrySet *, bool)), this, SIGNAL(showSet(Geometry::GeometrySet *, bool)));
emit tc->threadStart(); // emit stlReader->start();
}
return true;
}

View File

@ -45,6 +45,7 @@
#include <QMenu>
#include "geometryViewData.h"
#include "geometryViewObject.h"
#include "Common/DebugLogger.h"
namespace MainWidget
{
@ -145,6 +146,7 @@ namespace MainWidget
void GeometryViewProvider::showGeoSet(Geometry::GeometrySet *set, bool render /*= true*/)
{
DebugInfo("showGeoSet start \n");
QList<vtkPolyData *> viewPolys = _viewData->transferToPoly(set);
vtkPolyData *facePoly = viewPolys.at(0);
vtkPolyData *edgePoly = viewPolys.at(1);
@ -200,6 +202,7 @@ namespace MainWidget
_geoViewHash.insert(set, viewObj);
if (render)
_preWindow->resetCamera();
DebugInfo("showGeoSet finish \n");
}
void GeometryViewProvider::showDatum(Geometry::GeometryDatum *datm)