X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FmaracasVisuLib%2Fsrc%2Finterface%2FwxWindows%2Fwidgets%2FwxMaracasSurfaceRenderingManager.cxx;h=53b81d4a355b1b4fdf1466ffd41ef66495a7b5c1;hb=fc309690300a29fbfbac04f6fdf72783202617ad;hp=55aa4e63c607cb229604f5eb5550e7f870c86fd5;hpb=476100b14fe16ecb940787a8f98d65e8359d7f58;p=creaMaracasVisu.git diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasSurfaceRenderingManager.cxx b/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasSurfaceRenderingManager.cxx index 55aa4e6..53b81d4 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasSurfaceRenderingManager.cxx +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasSurfaceRenderingManager.cxx @@ -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: 2009/11/17 10:24:35 $ + Version: $Revision: 1.6 $ 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