hxx 2 rokov pred
rodič
commit
9104cacd64

+ 23 - 21
CAE_Solution/src/threadPool_and_statemachine/dealWith/handlepool.cpp

@@ -66,6 +66,8 @@ void handlePool::operateRender(vtkJsonObject* object,QVTKRenderer* render_)
     if(object->action == "init"){
         //render_->init();
         //emit sendWidget_handlePoolToWidget(render_->GetWidget());
+
+    }else if(object->action == "loaddata"){
         if(map_render.contains(object->proId)){
             render_ = map_render.value(object->proId);
 
@@ -75,7 +77,6 @@ void handlePool::operateRender(vtkJsonObject* object,QVTKRenderer* render_)
             render_->init();
             w->addTab(render_->GetWidget(),"test");
         }
-    }else if(object->action == "loaddata"){
         if(!map_render.contains(object->proId))return;
         render_ = map_render.value(object->proId);
         //QString m_filePath = object->filePath;
@@ -89,31 +90,32 @@ void handlePool::operateRender(vtkJsonObject* object,QVTKRenderer* render_)
         if(!map_manager.contains(object->proId)){
             meshmanager = new MeshManager();
             map_manager.insert(object->proId,meshmanager);
+            bool f = meshmanager->LoadData(m_filePath);
+            if(f){
+                if(render_){
+                    meshmanager->DisplayMesh(render_);
+                    render_->ZoomToExtents();
+                }
+            }
+            map_manager[object->proId]=meshmanager;
         }else{
             meshmanager = map_manager.value(object->proId);
-            vtkActorCollection *allActor=render_->GetRenderer()->GetActors();
-            vtkCollectionSimpleIterator pit;
-            vtkActor *currActor = nullptr;
-            for(allActor->InitTraversal(pit);(currActor = allActor->GetNextActor(pit));)
-            {
-                render_->GetRenderer()->RemoveActor(currActor);
-                render_->GetRenderer()->GetRenderWindow()->Render();
-            }
-            //meshmanager->Clear();
-            meshmanager =NULL;
-            //delete meshmanager;
-            meshmanager = new MeshManager();
+//            vtkActorCollection *allActor=render_->GetRenderer()->GetActors();
+//            vtkCollectionSimpleIterator pit;
+//            vtkActor *currActor = nullptr;
+//            for(allActor->InitTraversal(pit);(currActor = allActor->GetNextActor(pit));)
+//            {
+//                render_->GetRenderer()->RemoveActor(currActor);
+//                render_->GetRenderer()->GetRenderWindow()->Render();
+//            }
+//            //meshmanager->Clear();
+//            meshmanager =NULL;
+//            //delete meshmanager;
+//            meshmanager = new MeshManager();
         }
         //MeshManager *meshmanager = MeshManager::getInstance();
 
-        bool f = meshmanager->LoadData(m_filePath);
-        if(f){
-            if(render_){
-                meshmanager->DisplayMesh(render_);
-                render_->ZoomToExtents();
-            }
-        }
-        map_manager[object->proId]=meshmanager;
+
         //cout<<"action:"<<action.toStdString()<<endl;
         //render_->CaptureWindowImages();
     }else if(object->action == "zoomout"){//缩小