|  | @@ -8,7 +8,6 @@
 | 
	
		
			
				|  |  |   */
 | 
	
		
			
				|  |  |  handlePool::handlePool(QObject *parent) : QObject(parent)
 | 
	
		
			
				|  |  |  {
 | 
	
		
			
				|  |  | -    jsonObject = new vtkJsonObject();
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  /*
 | 
	
	
		
			
				|  | @@ -19,18 +18,8 @@ handlePool::handlePool(QObject *parent) : QObject(parent)
 | 
	
		
			
				|  |  |   */
 | 
	
		
			
				|  |  |  handlePool::~handlePool()
 | 
	
		
			
				|  |  |  {
 | 
	
		
			
				|  |  | -    if(render){
 | 
	
		
			
				|  |  | -        delete render;
 | 
	
		
			
				|  |  | -        render = NULL;
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -    if(jsonObject){
 | 
	
		
			
				|  |  | -        delete jsonObject;
 | 
	
		
			
				|  |  | -        jsonObject = NULL;
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -    qDeleteAll(vector_render.begin(),vector_render.end());
 | 
	
		
			
				|  |  | -    vector_render.clear();
 | 
	
		
			
				|  |  | -    qDeleteAll(vector_json.begin(),vector_json.end());
 | 
	
		
			
				|  |  | -    vector_json.clear();
 | 
	
		
			
				|  |  | +    qDeleteAll(map_render);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  /*
 | 
	
	
		
			
				|  | @@ -42,39 +31,24 @@ handlePool::~handlePool()
 | 
	
		
			
				|  |  |  void handlePool::getmsg_recvstateTohandlePool(std::string recvmsg)
 | 
	
		
			
				|  |  |  {
 | 
	
		
			
				|  |  |      vtkJsonObject* json_object = new vtkJsonObject();
 | 
	
		
			
				|  |  | +    QVTKRenderer* render_;
 | 
	
		
			
				|  |  |      json_object->FromJSON(recvmsg);
 | 
	
		
			
				|  |  | -    int numOfUID = judgeMsgUID(json_object);
 | 
	
		
			
				|  |  | -//    QVTKRenderer* render_;
 | 
	
		
			
				|  |  | -//    if(numOfUID == -1){
 | 
	
		
			
				|  |  | -//        render_ = new QVTKRenderer();
 | 
	
		
			
				|  |  | -//        vector_render.append(render_);
 | 
	
		
			
				|  |  | -//        vector_json.append(json_object);
 | 
	
		
			
				|  |  | -//    }else{
 | 
	
		
			
				|  |  | -//        render_ = vector_render[numOfUID];
 | 
	
		
			
				|  |  | -//    }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -//    operateRender(json_object->action,render_);
 | 
	
		
			
				|  |  | +    if(map_render.contains(json_object->action)){
 | 
	
		
			
				|  |  | +        render_ = map_render.value(json_object->action);
 | 
	
		
			
				|  |  | +    }else{
 | 
	
		
			
				|  |  | +        render_ = new QVTKRenderer();
 | 
	
		
			
				|  |  | +        map_render.insert(json_object->action,render_);
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -//    std::string img_ = render_->img.toStdString();
 | 
	
		
			
				|  |  | -//    std::string json_ = json_object->ToJson(img_);
 | 
	
		
			
				|  |  | -//    emit sendImg_handlePoolToSendstate(json_);//信号
 | 
	
		
			
				|  |  | -}
 | 
	
		
			
				|  |  | +    operateRender(json_object->action,render_);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -/*
 | 
	
		
			
				|  |  | - * @brief: judge msg's uid is it inside the vector(通过消息中的uid判断是否需要生成新的处理类)
 | 
	
		
			
				|  |  | - * @param: jsonobject
 | 
	
		
			
				|  |  | - * @ret:num of jsonobj
 | 
	
		
			
				|  |  | - * @birth: creadted by czm in 20230406
 | 
	
		
			
				|  |  | - */
 | 
	
		
			
				|  |  | -int handlePool::judgeMsgUID(vtkJsonObject *obj)
 | 
	
		
			
				|  |  | -{
 | 
	
		
			
				|  |  | -    for(int i=0;i<vector_json.size();i++){
 | 
	
		
			
				|  |  | -        if(obj->usrId == vector_json[i]->usrId)
 | 
	
		
			
				|  |  | -            return i;
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -    return -1;
 | 
	
		
			
				|  |  | +    std::string img_ = render_->img.toStdString();
 | 
	
		
			
				|  |  | +    std::string json_ = json_object->ToJson(img_);
 | 
	
		
			
				|  |  | +    emit sendImg_handlePoolToSendstate(json_);//信号
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  /*
 | 
	
		
			
				|  |  |   * @brief: Operate render according to commands(根据命令操作render)
 | 
	
		
			
				|  |  |   * @param: jsonObject->action render
 | 
	
	
		
			
				|  | @@ -83,12 +57,12 @@ int handlePool::judgeMsgUID(vtkJsonObject *obj)
 | 
	
		
			
				|  |  |   */
 | 
	
		
			
				|  |  |  void handlePool::operateRender(QString action,QVTKRenderer* render_)
 | 
	
		
			
				|  |  |  {
 | 
	
		
			
				|  |  | -    //if(action == "init"){
 | 
	
		
			
				|  |  | +    if(action == "init"){
 | 
	
		
			
				|  |  |          render_->init();
 | 
	
		
			
				|  |  |          emit sendWidget_handlePoolToWidget(render_->GetWidget());
 | 
	
		
			
				|  |  | -    //}else{
 | 
	
		
			
				|  |  | +    }else{
 | 
	
		
			
				|  |  |          cout<<"action:"<<action.toStdString()<<endl;
 | 
	
		
			
				|  |  | -    //}
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  |      render_->CaptureWindowImages();
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  
 |