parent
118be4e60b
commit
dd879b9a3c
|
@ -323,6 +323,9 @@
|
|||
<height>25</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<number>-1000000000</number>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>1000</number>
|
||||
</property>
|
||||
|
@ -361,6 +364,9 @@
|
|||
<height>25</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<number>-1000000000</number>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>1000</number>
|
||||
</property>
|
||||
|
@ -399,6 +405,9 @@
|
|||
<height>25</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<number>-1000000000</number>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>1000</number>
|
||||
</property>
|
||||
|
@ -483,6 +492,9 @@
|
|||
<height>25</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<double>-10000000000000000139372116959414099130712064.000000000000000</double>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<double>10000000000000000139372116959414099130712064.000000000000000</double>
|
||||
</property>
|
||||
|
@ -521,6 +533,9 @@
|
|||
<height>25</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<double>-10000000000000000139372116959414099130712064.000000000000000</double>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<double>10000000000000000139372116959414099130712064.000000000000000</double>
|
||||
</property>
|
||||
|
@ -559,6 +574,9 @@
|
|||
<height>25</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<double>-10000000000000000139372116959414099130712064.000000000000000</double>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<double>1000.000000000000000</double>
|
||||
</property>
|
||||
|
@ -619,7 +637,7 @@
|
|||
</size>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<double>1.000000000000000</double>
|
||||
<double>0.000000000000000</double>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<double>1000.000000000000000</double>
|
||||
|
@ -660,7 +678,7 @@
|
|||
</size>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<double>1.000000000000000</double>
|
||||
<double>0.000000000000000</double>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<double>1000.000000000000000</double>
|
||||
|
@ -701,7 +719,7 @@
|
|||
</size>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<double>1.000000000000000</double>
|
||||
<double>0.000000000000000</double>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<double>1000.000000000000000</double>
|
||||
|
|
|
@ -1666,12 +1666,25 @@ namespace GUI {
|
|||
MeshData::MeshData* meshData = MeshData::MeshData::getInstance();
|
||||
QString kernalName, transformedName, setType, ids;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
for(QString compontId : qCompontIds) {
|
||||
meshSet = meshData->getMeshSetByID(compontId.toInt());
|
||||
if(!meshSet)
|
||||
continue;
|
||||
//meshSet->generateDisplayDataSet();
|
||||
vtkRela.SetData(meshSet->getDisplayDataSet());
|
||||
meshSet->generateDisplayDataSet();
|
||||
vtkSmartPointer<vtkDataSet> tempDisplayDataSet=meshSet->getDisplayDataSet();
|
||||
if(nullptr==tempDisplayDataSet){
|
||||
qDebug()<<"DisplayDataSet nullptr ";
|
||||
return ;
|
||||
}else{
|
||||
qDebug()<<"DisplayDataSet , cell count "+QString::number(tempDisplayDataSet->GetNumberOfCells());
|
||||
}
|
||||
|
||||
vtkRela.SetData(tempDisplayDataSet);
|
||||
vtkSmartPointer<vtkDataSet> transformed = vtkRela.StartTransform();
|
||||
meshKernal = new MeshData::MeshKernal;
|
||||
kernalName = QString("transfrom%1_%2").arg(meshSet->getName()).arg(meshKernal->getID());
|
||||
|
|
|
@ -14,7 +14,8 @@
|
|||
#include <QFileInfo>
|
||||
#include <QTextCodec>
|
||||
#include <vtkSTLWriter.h>
|
||||
|
||||
#include <QDebug>
|
||||
#include <vtkGeometryFilter.h>
|
||||
|
||||
namespace MeshData
|
||||
{
|
||||
|
@ -214,10 +215,17 @@ namespace MeshData
|
|||
}
|
||||
bool VTKdataExchange::writeSTL()
|
||||
{
|
||||
QFile infile(_fileName);
|
||||
if(infile.exists()){
|
||||
infile.remove();
|
||||
}
|
||||
|
||||
qDebug()<<" VTKdataExchange::writeSTL start ";
|
||||
QTextCodec *codec = QTextCodec::codecForName("GB18030");
|
||||
QByteArray ba = codec->fromUnicode(_fileName);
|
||||
vtkUnstructuredGrid *ungird = vtkUnstructuredGrid::New();
|
||||
vtkSmartPointer<vtkAppendFilter> filter = vtkSmartPointer<vtkAppendFilter>::New();
|
||||
// vtkSmartPointer<vtkAppendFilter> filter = vtkSmartPointer<vtkAppendFilter>::New();
|
||||
vtkSmartPointer<vtkGeometryFilter> cellToPointFilter = vtkSmartPointer<vtkGeometryFilter>::New();
|
||||
if (_modelId > 0)
|
||||
{
|
||||
MeshKernal *kernal = _meshData->getKernalByID(_modelId);
|
||||
|
@ -225,7 +233,7 @@ namespace MeshData
|
|||
{
|
||||
vtkDataSet *dataset = kernal->getMeshData();
|
||||
if (dataset != nullptr)
|
||||
filter->AddInputData(dataset);
|
||||
cellToPointFilter->AddInputData(dataset);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@ -240,17 +248,31 @@ namespace MeshData
|
|||
{
|
||||
vtkDataSet *dataset = kernal->getMeshData();
|
||||
if (dataset != nullptr)
|
||||
filter->AddInputData(dataset);
|
||||
cellToPointFilter->AddInputData(dataset);
|
||||
}
|
||||
}
|
||||
}
|
||||
filter->Update();
|
||||
ungird->CopyStructure(filter->GetOutput());
|
||||
cellToPointFilter->Update();
|
||||
// ungird->CopyStructure(filter->GetOutput());
|
||||
//
|
||||
// qDebug()<<"ungird , cell Count : "+QString::number(ungird->GetNumberOfCells());
|
||||
vtkSmartPointer<vtkPolyData> inpolyData=vtkSmartPointer<vtkPolyData>::New();
|
||||
inpolyData = cellToPointFilter->GetOutput();
|
||||
if(nullptr==inpolyData){
|
||||
qDebug()<<"inpolyData ,nullptr : ";
|
||||
}else{
|
||||
qDebug()<<"inpolyData , cell Count : "+QString::number(inpolyData->GetNumberOfCells());
|
||||
}
|
||||
vtkSmartPointer<vtkSTLWriter> writer = vtkSmartPointer<vtkSTLWriter>::New();
|
||||
writer->SetInputData(ungird);
|
||||
writer->SetInputConnection(cellToPointFilter->GetOutputPort());
|
||||
// writer->SetInputData(ungird);
|
||||
writer->SetFileTypeToBinary();
|
||||
writer->SetFileName(ba);
|
||||
writer->Write();
|
||||
qDebug()<<" VTKdataExchange::writeSTL finish !!!! "+ba;
|
||||
QFile outfile(_fileName);
|
||||
return outfile.exists();// 判断文件是否存在
|
||||
|
||||
return true;
|
||||
}
|
||||
bool VTKdataExchange::writeTecplot()
|
||||
|
|
Loading…
Reference in New Issue