X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=bbtk%2Fsrc%2FbbCreaContournDimensions.cxx;h=336a7637b53964296a4f5c239c662f6fe72dc369;hb=f440179be0d3ac00240a569c464b59ff35bd8b81;hp=29aca636fb51455bfa9fe82c7d71b4ddbe71dbbd;hpb=29d20b730ae0aaabfb6328f36aaec34cb22cc56e;p=creaContours.git diff --git a/bbtk/src/bbCreaContournDimensions.cxx b/bbtk/src/bbCreaContournDimensions.cxx index 29aca63..336a763 100644 --- a/bbtk/src/bbCreaContournDimensions.cxx +++ b/bbtk/src/bbCreaContournDimensions.cxx @@ -1,41 +1,77 @@ +/*# --------------------------------------------------------------------- +# +# Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image +# pour la Sant�) +# Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton +# Previous Authors : Laurent Guigues, Jean-Pierre Roux +# CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil +# +# This software is governed by the CeCILL-B license under French law and +# abiding by the rules of distribution of free software. You can use, +# modify and/ or redistribute the software under the terms of the CeCILL-B +# license as circulated by CEA, CNRS and INRIA at the following URL +# http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html +# or in the file LICENSE.txt. +# +# As a counterpart to the access to the source code and rights to copy, +# modify and redistribute granted by the license, users are provided only +# with a limited warranty and the software's author, the holder of the +# economic rights, and the successive licensors have only limited +# liability. +# +# The fact that you are presently reading this means that you have had +# knowledge of the CeCILL-B license and that you accept its terms. +# ------------------------------------------------------------------------ */ + #include "bbCreaContournDimensions.h" #include "bbcreaContoursPackage.h" + +#include "creaSystem.h" namespace bbcreaContours { BBTK_ADD_BLACK_BOX_TO_PACKAGE(creaContours,nDimensions) BBTK_BLACK_BOX_IMPLEMENTATION(nDimensions,bbtk::WxBlackBox); + void nDimensions::Process() { - double **vectx, **vecty, **vectz; - - std::vector< void * > vectortemp; - std::vector size; - vtkImageData **mask, **value; - - vtkImageData* img = bbGetInputIn(); - - std::vector selectedimages; - if(img!=NULL && currentimg!=img){ - - wxContourMainFrame::getInstance()->ShowToolsPanel(true); - currentimg=img; - selectedimages.push_back(img); - wxContourMainFrame::getInstance()->setVectImages(selectedimages); - } - - if(currentimg != NULL){ - int contourtype = bbGetInputContourType(); - //wxContourMainFrame::getInstance()->getValuesXYZ(vectx, vecty, vectz, &size); - //wxContourMainFrame::getInstance()->getMaskValue(mask, value, contourtype); - } - - bbSetOutputX(vectx); - bbSetOutputY(vecty); - bbSetOutputZ(vectz); - bbSetOutputSizeContour(size); - bbSetOutputMask(*mask); - bbSetOutputValue(*value); +// double **vectx = 0, **vecty = 0, **vectz = 0; +// std::vector< void * > vectortemp; +// std::vector size; +// vtkImageData **mask = 0, **value = 0; + + if (firsttime==true) + { + firsttime=false; + std::vector selectedimages; + if(bbGetInputIn()!=NULL) + { + currentimg = bbGetInputIn(); + selectedimages.push_back( bbGetInputIn() ); + wxContourMainFrame::getInstance()->ShowToolsPanel(true); + wxContourMainFrame::getInstance()->configure(selectedimages); + } // if In + } else{ + + //wxContourMainFrame::getInstance()->getValuesXYZ(vectx, vecty, vectz, &size); + //wxContourMainFrame::getInstance()->getMaskValue(mask, value, contourtype); + + if ( currentimg!=bbGetInputIn() ) + { + wxContourMainFrame::getInstance()->changeImage(0, bbGetInputIn() ); + currentimg=bbGetInputIn(); + } // if currentimg!=In + + + } // if firsttime + wxContourMainFrame::getInstance()->RefreshInterface(); + bbSetOutputwxContourMainFrame( wxContourMainFrame::getInstance() ); +// bbSetOutputX(vectx); +// bbSetOutputY(vecty); +// bbSetOutputZ(vectz); +// bbSetOutputSizeContour(size); +// bbSetOutputMask(*mask); +// bbSetOutputValue(*value); } //----------------------------------------------------------------- @@ -51,26 +87,38 @@ void nDimensions::CreateWidget(wxWindow* parent) //new wxContourMainFrame( frame1, wxID_ANY, _T(""), wxPoint(50,50), wxSize(800, 600),selectedimages ); //frame1->CreateStatusBar(); //bbSetOutputWidget( frame1 ); -std::string path="."; +std::string datadir="."; #ifdef WIN32 - char currentPath[_MAX_PATH]; - HMODULE hand = GetModuleHandle("bbcreaContours"); - GetModuleFileName(hand, currentPath, _MAX_PATH); - - path = currentPath; - - path = path.substr(0,path.find_last_of("\\")); +printf("EED WARNING Verify that GetDllAppPath in nDimensions::CreateWidget bbCreaContournDimensions is working.. \n"); + datadir = crea::System::GetDllAppPath("bbCreaContours.dll"); +#else + datadir= crea::System::GetExecutablePath(); #endif - - wxPanel* panel = wxContourMainFrame::getInstance(parent, wxID_ANY, wxString(_T("")), wxPoint(100,50), wxSize(800, 600), selectedimages,wxDEFAULT_FRAME_STYLE | wxSUNKEN_BORDER,path ); + + +#ifdef LINUX /* assume this is OSX */ + datadir=datadir+"/../share/creaContours"; +#endif // MACOSX + +#ifdef MACOSX /* assume this is OSX */ + datadir=datadir+"/../../../../share/creaContours"; +#endif // MACOSX + + +//printf("EED nDimensions::CreateWidget path=%s\n",datadir.c_str() ); + + wxContourMainFrame* wxcontourmainframe = wxContourMainFrame::getInstance(parent, wxID_ANY, wxString(_T("")), wxPoint(100,50), wxSize(800, 600), selectedimages,wxDEFAULT_FRAME_STYLE | wxSUNKEN_BORDER,datadir ); wxContourMainFrame::getInstance()->ShowToolsPanel(false); - //std::cout<<"creaContours = "<