|  | @@ -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;
 | 
	
		
			
				|  |  |  }
 |