|
@@ -25,6 +25,8 @@ handlePool::handlePool(QTabWidget *w)
|
|
|
this->w=w;
|
|
|
map_contourdisplay.clear();
|
|
|
map_linedisplay.clear();
|
|
|
+ map_vectordisplay.clear();
|
|
|
+ map_solidsdisplay.clear();
|
|
|
qmapManager.clear();
|
|
|
qmapRender.clear();
|
|
|
qmapResultmanager.clear();
|
|
@@ -45,6 +47,8 @@ handlePool::~handlePool()
|
|
|
qDeleteAll(qmapManager);
|
|
|
qDeleteAll(map_contourdisplay);
|
|
|
qDeleteAll(map_linedisplay);
|
|
|
+ qDeleteAll(map_vectordisplay);
|
|
|
+ qDeleteAll(map_solidsdisplay);
|
|
|
qDeleteAll(qmapResultmanager);
|
|
|
contour_sendrange_flag = false;
|
|
|
line_sendrange_flag = false;
|
|
@@ -136,6 +140,11 @@ void handlePool::operateRender(vtkJsonObject* object,QVTKRenderer* render_)
|
|
|
cout<<"please import tecplot result first!"<<endl;
|
|
|
}
|
|
|
return;
|
|
|
+ }else if(object->action == "SolidSurfaceDisplay"){//显示实体表面
|
|
|
+ if(!result_solidsurfacedisplay(object,render_)){
|
|
|
+ cout<<"please import tecplot result first!"<<endl;
|
|
|
+ }
|
|
|
+ return;
|
|
|
}
|
|
|
send_picture(object,render_);//发送图片
|
|
|
}
|
|
@@ -267,7 +276,7 @@ bool handlePool::resultImport(vtkJsonObject *object_, QVTKRenderer *renderer_)
|
|
|
rsMeshManager->InitWidgetsParameter();
|
|
|
renderer_->ZoomToExtents();
|
|
|
}
|
|
|
-
|
|
|
+/*********************************************/
|
|
|
ContourDisplayW *contourdw = new ContourDisplayW();//云图窗口参数初始化
|
|
|
rsMeshManager->SetCotourWidget(contourdw);
|
|
|
rsMeshManager->SetWidgetRange();
|
|
@@ -279,6 +288,9 @@ bool handlePool::resultImport(vtkJsonObject *object_, QVTKRenderer *renderer_)
|
|
|
VectorW *vecdW = new VectorW();//矢量窗口初始化参数
|
|
|
rsMeshManager->SetVectorWidget(vecdW);
|
|
|
|
|
|
+ SolidSurfaceWidget* solidfW = new SolidSurfaceWidget();//实体表面窗口初始化参数
|
|
|
+ rsMeshManager->SetSurfaceSolidWidget(solidfW);
|
|
|
+/********************************************/
|
|
|
renderer_->widgetFlag = QVTKRenderer::WidgetModel::ResultModel;//设置当前窗口模型状态
|
|
|
if(qmapResultmanager.contains(object_->proId)){//加载不同的结果文件
|
|
|
delete qmapResultmanager.value(object_->proId);
|
|
@@ -291,6 +303,7 @@ bool handlePool::resultImport(vtkJsonObject *object_, QVTKRenderer *renderer_)
|
|
|
emit sendImg_handlePoolToSendstate(object_->ToJson("importResult_contour",buildResultImport_msg("Contour",rsMeshManager)));//发送云图结果数据
|
|
|
emit sendImg_handlePoolToSendstate(object_->ToJson("importResult_line",buildResultImport_msg("Line",rsMeshManager)));//发送等值线结果数据
|
|
|
emit sendImg_handlePoolToSendstate(object_->ToJson("importResult_vector",buildResultImport_msg("Vector",rsMeshManager)));//发送矢量结果数据
|
|
|
+ emit sendImg_handlePoolToSendstate(object_->ToJson("importResult_solidsurface",buildResultImport_msg("Solidsurface",rsMeshManager)));//发送矢量结果数据
|
|
|
send_picture(object_,renderer_);
|
|
|
return true;
|
|
|
}
|
|
@@ -358,7 +371,7 @@ bool handlePool::result_linedisplay(vtkJsonObject *object_,QVTKRenderer* render_
|
|
|
* @brief: analysis msg about vectordisplay
|
|
|
* @param: object and render
|
|
|
* @ret: bool
|
|
|
- * @birth: created by czmm in 20230504
|
|
|
+ * @birth: created by czm in 20230504
|
|
|
*/
|
|
|
bool handlePool::result_vectordisplay(vtkJsonObject *object_, QVTKRenderer *render_)
|
|
|
{
|
|
@@ -377,6 +390,29 @@ bool handlePool::result_vectordisplay(vtkJsonObject *object_, QVTKRenderer *rend
|
|
|
return true;
|
|
|
}
|
|
|
|
|
|
+/*
|
|
|
+ * @brief: analysis msg about solidsurfacedisplay
|
|
|
+ * @param: object and render
|
|
|
+ * @ret: bool
|
|
|
+ * @birth: created by czm in 20230505
|
|
|
+ */
|
|
|
+bool handlePool::result_solidsurfacedisplay(vtkJsonObject *object_, QVTKRenderer *render_)
|
|
|
+{
|
|
|
+ SolidSurface *solidfdis = NULL;
|
|
|
+ if(!qmapResultmanager.contains(object_->proId))return false;
|
|
|
+ render_ = qmapRender[object_->proId];
|
|
|
+ if(map_solidsdisplay.contains(object_->proId)){
|
|
|
+ solidfdis = map_solidsdisplay[object_->proId];//to do
|
|
|
+ }else{
|
|
|
+ solidfdis = new SolidSurface(qmapResultmanager[object_->proId]->resultMeshManager_);
|
|
|
+ map_solidsdisplay.insert(object_->proId,solidfdis);
|
|
|
+ }
|
|
|
+ solidfdis->solidsurfce_execute(object_);
|
|
|
+
|
|
|
+ send_picture(object_,render_);
|
|
|
+ return true;
|
|
|
+}
|
|
|
+
|
|
|
/*
|
|
|
* @brief: save the tecplot filename into QStringList
|
|
|
* @param: filePath
|
|
@@ -469,6 +505,16 @@ QMap<QString,string> handlePool::buildResultImport_msg(QString type,ResultMeshMa
|
|
|
msg = to_string(cmanager->vectorWidget_->current_scalefactor);
|
|
|
map_tmp.insert("scaleFactor",msg);
|
|
|
msg.clear();
|
|
|
+ }else if(type == "Solidsurface"){
|
|
|
+ map_tmp.insert("r",to_string(cmanager->solidSurfaceW_->number_r));
|
|
|
+ map_tmp.insert("g",to_string(cmanager->solidSurfaceW_->number_g));
|
|
|
+ map_tmp.insert("b",to_string(cmanager->solidSurfaceW_->number_b));;
|
|
|
+ map_tmp.insert("transparency",to_string(cmanager->solidSurfaceW_->GetTransparency()));
|
|
|
+ if(cmanager->solidSurfaceW_->GetShowHideState()){
|
|
|
+ map_tmp.insert("showHideState",QString("true").toStdString());
|
|
|
+ }else{
|
|
|
+ map_tmp.insert("showHideState",QString("false").toStdString());
|
|
|
+ }
|
|
|
}
|
|
|
return map_tmp;
|
|
|
}
|