]> Creatis software - creaMaracasVisu.git/blobdiff - lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasSurfaceRenderingManager.cxx
creaButtonContainer: doxygen 90%
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / wxMaracasSurfaceRenderingManager.cxx
index 55aa4e63c607cb229604f5eb5550e7f870c86fd5..e43f19ebd709a62175b38ec89b83b7fa78219596 100644 (file)
@@ -3,8 +3,8 @@
   Program:   wxMaracas
   Module:    $RCSfile: wxMaracasSurfaceRenderingManager.cxx,v $
   Language:  C++
-  Date:      $Date: 2009/11/13 11:47:41 $
-  Version:   $Revision: 1.5 $
+  Date:      $Date: 2010/01/21 13:54:15 $
+  Version:   $Revision: 1.7 $
 
   Copyright: (c) 2002, 2003
   License:
@@ -62,35 +62,49 @@ void wxMaracasSurfaceRenderingManager::Update(int pid)throw(char*){
 /**
 **     Adds a prop3D to the manager and returns the identifier
 **/
-int wxMaracasSurfaceRenderingManager::addProp3D(vtkProp3D* prop3D, std::string dataname)  throw(char*){
+int wxMaracasSurfaceRenderingManager::addProp3D(int idTP, vtkProp3D* prop3D, std::string dataname)  throw(char*){
        checkInvariant();
        if(prop3D != NULL){
                wxMaracasSurfaceRenderingManagerData* data = new wxMaracasSurfaceRenderingManagerData(prop3D, dataname, _interactor);
                prop3Dvect.push_back(data);
                _renderer->AddActor(data->getProp3D());
-               data->setId(_idCount);
-               _idCount++;
+               if(idTP == -1)
+               {
+                       data->setId(_idCount);
+                       _idCount++;
+               }
+               else
+               {
+                       data->setId(idTP);
+               }
                return data->getId();
        }else{
                throw "Check vtkProp3D file or input";
        }
        return -1;
 }
-int wxMaracasSurfaceRenderingManager::addPropMHD(vtkImageData* imagedata, std::string dataname) throw(char*){
+int wxMaracasSurfaceRenderingManager::addPropMHD(int idTP, vtkImageData* imagedata, std::string dataname) throw(char*){
        checkInvariant();
        if(imagedata != NULL){
                image = imagedata;
                wxMaracasSurfaceRenderingManagerData* data = new wxMaracasSurfaceRenderingManagerDataMhd(imagedata, dataname, _interactor);
                prop3Dvect.push_back(data);     
                _renderer->AddActor(data->getProp3D());
-               data->setId(_idCount);
-               _idCount++;
+               if(idTP == -1)
+               {
+                       data->setId(_idCount);
+                       _idCount++;
+               }
+               else
+               {
+                       data->setId(idTP);
+               }
+               printf("wxMaracasSurfaceRenderingManager::addPropMHD->idSurfaceRender: %i\n", data->getId());
                return data->getId();
        }else{
                throw "Check ImageData file or input";
        }
        return -1;
-
 }
 /**
 **     adds or removes an actor depending of the bool value
@@ -252,3 +266,6 @@ void wxMaracasSurfaceRenderingManager::Transform(vtkMatrix4x4* tmatrix){
        
 }
 
+bool wxMaracasSurfaceRenderingManager::interactorSet(){
+       return _interactor? true:false;
+}
\ No newline at end of file