//: wxWindow(parent, id, pos, size, style)
: wxPanel(parent, id, pos, size, style)
{
+printf("EED wxContourMainFrame :: wxContourMainFrame Start 1\n");
m_mgr.SetManagedWindow(this);
_contourGroup = 1;
_creatingContoursActive = false;
// _gridPanel = NULL;
// _drawToolsPanel = NULL;
// _operationsToolsPanel = NULL;
- //_autoFormsPanel = NULL;
+ //_autoFormsPanel = NULL;
// _standardToolsPanel = NULL;
// _editionToolsPanel = NULL;
// _listViewPanel = NULL;
// _sceneManager = NULL;
- //_actualInstant = NULL;
- _numberOfVariablesStatistics = 6+1;
+ //_actualInstant = NULL;
+ _numberOfVariablesStatistics= 6+1;
_refLineControl = NULL;
_refLineModel = NULL;
_viewMaskImage = NULL;
_viewMaskImagePanel = NULL;
_viewThresholdImage = NULL;
- _viewThresholdImagePanel = NULL;
- _viewColorLayerImagePanel = NULL;
+ _viewThresholdImagePanel = NULL;
+ _viewColorLayerImagePanel = NULL;
+printf("EED wxContourMainFrame :: wxContourMainFrame End 1\n");
}
wxContourMainFrame :: wxContourMainFrame(wxWindow* parent, wxWindowID id,const wxString& title,const wxPoint& pos,const wxSize& size,std::vector<vtkImageData*> images, long style,std::string datadir)
: wxPanel(parent, id, pos, size, style)
{
+printf("EED wxContourMainFrame :: wxContourMainFrame Start 2\n");
m_mgr.SetManagedWindow(this);
_contourGroup = 1;
_creatingContoursActive = false;
_viewMaskImage = NULL;
_viewMaskImagePanel = NULL;
_viewThresholdImage = NULL;
- _viewThresholdImagePanel = NULL;
- _viewColorLayerImagePanel = NULL;
-
+ _viewThresholdImagePanel = NULL;
+ _viewColorLayerImagePanel = NULL;
+printf("EED wxContourMainFrame :: wxContourMainFrame A\n");
// set up default notebook style
- m_notebook_style =wxAUI_NB_TAB_SPLIT | wxAUI_NB_TAB_EXTERNAL_MOVE | wxNO_BORDER;
- m_notebook_theme = 0;
+ m_notebook_style = wxAUI_NB_TAB_SPLIT | wxAUI_NB_TAB_EXTERNAL_MOVE | wxNO_BORDER;
+ m_notebook_theme = 0;
//wxContour_ActionCommandsID a;
- _numberOfVariablesStatistics = 7;
-
- _datadir = datadir;
-
-
- inredo = 0;
- inundo = 0;
-
+ _numberOfVariablesStatistics= 7;
+ _datadir = datadir;
+ inredo = 0;
+ inundo = 0;
+printf("EED wxContourMainFrame :: wxContourMainFrame B\n");
_pannew = interfMainPanel::getInstance(this,datadir+"/data/Icons");//, eventHandler);
- _performingOperation = new PerformingOperation();
-
+printf("EED wxContourMainFrame :: wxContourMainFrame C\n");
+ _performingOperation = new PerformingOperation();
+printf("EED wxContourMainFrame :: wxContourMainFrame C.1\n");
if(images.size() > 0)
{
+printf("EED wxContourMainFrame :: wxContourMainFrame C.2\n");
this->setVectImages(images);
+printf("EED wxContourMainFrame :: wxContourMainFrame C.3\n");
}
-
_contourextractdata = NULL;
+printf("EED wxContourMainFrame :: wxContourMainFrame End 2\n");
}
void wxContourMainFrame::setVectImages(std::vector<vtkImageData*> imgs)
{
-
+printf("EED wxContourMainFrame::setVectImages Start\n");
_images = imgs;
-
#if defined(__GNUC__)
std::string str_home(getenv("HOME"));
#elif defined(_WIN32)
- std::string str_home(getenv("USERPROFILE"));
+ std::string str_home(getenv("USERPROFILE"));
#endif
- std::string strCreaContourDataTmp = str_home + "/.creaContourDataTemp/";
-
+ std::string strCreaContourDataTmp = str_home + "/.creaContourDataTemp/";
std::vector<std::string> conceptNameVect;
std::vector<int> conceptSizeVect;
-
+printf("EED wxContourMainFrame::setVectImages Start 01\n");
notebook = this->createNotebook();
-
-
- kernelManager = new KernelManagerContour( imgs , _datadir+"/data/" , strCreaContourDataTmp );
-
-
- _instantPanel = new wxInstantChooserPanel( notebook, "Instant Chooser", true, false, "c" );
- _theViewPanel = new wxContourViewPanel( kernelManager->getSourceImage(), notebook );
-
+printf("EED wxContourMainFrame::setVectImages Start 02\n");
+ kernelManager = new KernelManagerContour( imgs , _datadir+"/data/" , strCreaContourDataTmp );
+printf("EED wxContourMainFrame::setVectImages Start 03\n");
+ _instantPanel = new wxInstantChooserPanel( notebook, "Instant Chooser", true, false, "c" );
+printf("EED wxContourMainFrame::setVectImages Start 04\n");
+ _theViewPanel = new wxContourViewPanel( kernelManager->getSourceImage(), notebook );
+printf("EED wxContourMainFrame::setVectImages Start 05\n");
//-------------------------------------------------------------
kernelManager->getConceptsInformation(conceptNameVect, conceptSizeVect);
+printf("EED wxContourMainFrame::setVectImages 1\n");
_instantPanel->addConcepts(conceptNameVect, conceptSizeVect);
-
-
+printf("EED wxContourMainFrame::setVectImages 2\n");
double val = _theViewPanel->getCurrentDeep();
_instantPanel->setConceptValue( "Axe Depth", (int)val );
//JCP _instantPanel->setConceptValue("time", num de imagenes);
ConceptDataWrap * data = _instantPanel->getConceptDataOf( "Axe Depth" );
//*******************changeInstant();
_theViewPanel->setVerticalConcept( "Axe Depth", data->getMinValue(), data->getMaxValue(), data->getMinShowedValue(), data->getMaxShowedValue(), data->getActualValue() );
-
this->configurePanels( );
-
+printf("EED wxContourMainFrame::setVectImages End\n");
}
if(GetFileLocation().empty())
{
//------------------------------------------------------------------------------------------------------------
+//EED 2017-09-16 Migration wxWidgets 2.8 to 3.0
+#if wxMAJOR_VERSION <= 2
wxFileDialog dialog(NULL, _T("Choose a file"), _T(""), _T(""), _T("*.roi"), wxOPEN );
+#else
+ wxFileDialog dialog(NULL, _T("Choose a file"), _T(""), _T(""), _T("*.roi"), wxFD_OPEN );
+#endif
if (dialog.ShowModal() == wxID_OK)
{
fileNameContourROI = (const char *)(dialog.GetPath().mb_str());
}// for i list of static things
}
-
-
void wxContourMainFrame::onLoadContours(std::string fileNameContourROI, bool interactiveInterface)
{
char tmp[255];
char tmpD[255];
-
FILE *pFile =fopen(fileNameContourROI.c_str(),"r+");
-
-
//CMRU 03-09-09- ----------------------------------------------------------------------------------------------
if(pFile != NULL)
{
if(pFileData != NULL)
{
fclose(pFileData);
- }
+ } // if
}
_theViewPanel->getSceneManager()->removeSceneContours();
changeInstant();
}
-
-void wxContourMainFrame::onImport(){
+void wxContourMainFrame::onImport()
+{
std::string filename, filenamecontours;
+//EED 2017-09-16 Migration wxWidgets 2.8 to 3.0
+#if wxMAJOR_VERSION <= 2
wxFileDialog dialog(NULL, _T("Choose a XML Osirix File"), _T(""), _T(""), _T("*.xml"), wxOPEN );
-
+#else
+ wxFileDialog dialog(NULL, _T("Choose a XML Osirix File"), _T(""), _T(""), _T("*.xml"), wxFD_OPEN );
+#endif
if (dialog.ShowModal() == wxID_OK)
{
filename = dialog.GetPath().mb_str();
if(filenamecontours.compare("") != 0){
onLoadContours(filenamecontours,true);
- }
-
- }
+ } // if
+ } // if
}
-void wxContourMainFrame::onTest(){
+
+void wxContourMainFrame::onTest()
+{
std::string filename, filenamecontours;
+//EED 2017-09-16 Migration wxWidgets 2.8 to 3.0
+#if wxMAJOR_VERSION <= 2
wxFileDialog dialog(NULL, _T("Choose a File"), _T(""), _T(""), _T("*.*"), wxOPEN );
+#else
+ wxFileDialog dialog(NULL, _T("Choose a File"), _T(""), _T(""), _T("*.*"), wxFD_OPEN );
+#endif
if (dialog.ShowModal() == wxID_OK)
{
filename = dialog.GetPath().mb_str();
std::cout << "This is the filename: " << filename << std::endl;
- }
+ } // if
}
if(GetFileLocation().empty())
{
//------------------------------------------------------------------------------------------------------------
+//EED 2017-09-16 Migration wxWidgets 2.8 to 3.0
+#if wxMAJOR_VERSION <= 2
wxFileDialog dialog(NULL, _T("Choose a file"), _T(""), _T(""), _T("*.roi"), wxSAVE );
+#else
+ wxFileDialog dialog(NULL, _T("Choose a file"), _T(""), _T(""), _T("*.roi"), wxFD_SAVE );
+#endif
if (dialog.ShowModal() == wxID_OK)
{
std::string fileNameContourROI = (const char *)(dialog.GetPath().mb_str());
fprintf(pFileData,"NumberOfContours %d\n", sizeLstNameThings );
//------------------------------------------------------------------------------------------------------------
+
+// EED 2017-05-30
+ double spc[3];
+ spc[0]=1;
+ spc[1]=1;
+ spc[2]=1;
+
for (i=0 ; i<sizeLstNameThings ; i++)
{
//CMRU 03-09-09-----------------------------------------------------------------------------------------------
manualBaseModel * manualModel = kernelManager->getOutlineByKeyName(lstNameThings[i]);
- double sizeInPixel = manualModel ->GetPathSize();
+
+// EED 2017-05-30
+// double sizeInPixel = manualModel ->GetPathSize( );
+ double sizeInPixel = manualModel ->GetPathSize( spc );
+
double realContourSize = sizeInPixel*_onePixelSize;
manualModel ->SetRealSize(realContourSize);
//------------------------------------------------------------------------------------------------------------
vtkMarchingContourFilter* cntVTK = vtkMarchingContourFilter::New( );
- cntVTK->SetInput( idata );
-
cntVTK->SetNumberOfContours( 1 );
cntVTK->SetValue( 0, 255 );
+//EED 2017-01-01 Migration VTK7
+#if VTK_MAJOR_VERSION <= 5
+ cntVTK->SetInput( idata );
cntVTK->Update( );
cntVTK->UpdateInformation();
+#else
+ cntVTK->SetInputData( idata );
+#endif
vtkCleanPolyData* cpd = vtkCleanPolyData::New( );
+
+//EED 2017-01-01 Migration VTK7
+#if VTK_MAJOR_VERSION <= 5
cpd->SetInput( cntVTK->GetOutput( ) );
cpd->Update( );
cpd->UpdateInformation();
+#else
+ cpd->SetInputData( cntVTK->GetOutput( ) );
+#endif
+
vtkPolyDataConnectivityFilter* conn = vtkPolyDataConnectivityFilter::New( );
conn->SetExtractionModeToLargestRegion( );
+//EED 2017-01-01 Migration VTK7
+#if VTK_MAJOR_VERSION <= 5
conn->SetInput( cpd->GetOutput( ) );
conn->Update( );
conn->UpdateInformation();
+#else
+ conn->SetInputData( cpd->GetOutput( ) );
+#endif
+
vtkStripper* vtkstripper = vtkStripper::New( );
+
+//EED 2017-01-01 Migration VTK7
+#if VTK_MAJOR_VERSION <= 5
vtkstripper->SetInput( conn->GetOutput() );
vtkstripper->Update();
vtkstripper->UpdateInformation();
+#else
+ vtkstripper->SetInputData( conn->GetOutput() );
+ cntVTK->Update();
+#endif
vtkPolyData* polyDataResult = cntVTK->GetOutput();
//std::cout<<"Points "<<polyDataResult->GetNumberOfPoints()<<std::endl;
+
+//EED 2017-01-01 Migration VTK7
+#if VTK_MAJOR_VERSION <= 5
polyDataResult->Update( );
polyDataResult->UpdateInformation();
+#else
+ // ..
+#endif
//EED
/*
// y = y*spc[1];
// z = z*spc[3];
+//EED 2017-01-01 Migration VTK7
+#if VTK_MAJOR_VERSION <= 5
imageReslice->SetInput( imagedata );
+#else
+ imageReslice->SetInputData( imagedata );
+#endif
imageReslice->SetInformationInput(imagedata);
imageReslice->SetResliceAxesDirectionCosines(1,0,0, 0,1,0 ,0,0,1);
imageReslice->SetResliceAxesOrigin(0,0,z);
imageReslice->SetOutputDimensionality(2);
imageReslice->SetInterpolationModeToLinear();
+//EED 2017-01-01 Migration VTK7
+#if VTK_MAJOR_VERSION <= 5
+ // ..
+#else
+ imageReslice->Update();
+#endif
+
imagedata = imageReslice->GetOutput();
+//EED 2017-01-01 Migration VTK7
+#if VTK_MAJOR_VERSION <= 5
imagedata->Update();
imagedata->UpdateInformation();
+#else
+ // ..
+#endif
vtkContourFilter* cntVTK = vtkContourFilter::New( );
+//EED 2017-01-01 Migration VTK7
+#if VTK_MAJOR_VERSION <= 5
cntVTK->SetInput( imagedata );
+#else
+ cntVTK->SetInputData( imagedata );
+#endif
cntVTK->SetNumberOfContours( 1 );
//cntVTK->SetValue( 0, vmin );
cntVTK->UpdateInformation();
vtkCleanPolyData* cpd = vtkCleanPolyData::New( );
+//EED 2017-01-01 Migration VTK7
+#if VTK_MAJOR_VERSION <= 5
cpd->SetInput( cntVTK->GetOutput( ) );
+#else
+ cpd->SetInputData( cntVTK->GetOutput( ) );
+#endif
cpd->ConvertLinesToPointsOff( );
cpd->Update( );
cpd->UpdateInformation();
conn->SetExtractionModeToClosestPointRegion( );
//conn->SetMaxRecursionDepth( 3000 );
+//EED 2017-01-01 Migration VTK7
+#if VTK_MAJOR_VERSION <= 5
conn->SetInput( cpd->GetOutput( ) );
+#else
+ conn->SetInputData( cpd->GetOutput( ) );
+#endif
conn->SetClosestPoint( x, y, 0 );
conn->Update( );
conn->UpdateInformation();
vtkCleanPolyData* cpd2 = vtkCleanPolyData::New( );
+//EED 2017-01-01 Migration VTK7
+#if VTK_MAJOR_VERSION <= 5
cpd2->SetInput( conn->GetOutput( ) );
+#else
+ cpd2->SetInputData( conn->GetOutput( ) );
+#endif
cpd2->Update();
cpd2->UpdateInformation();
vtkStripper* vtkstripper = vtkStripper::New( );
+//EED 2017-01-01 Migration VTK7
+#if VTK_MAJOR_VERSION <= 5
vtkstripper->SetInput( cpd2->GetOutput() );
+#else
+ vtkstripper->SetInputData( cpd2->GetOutput() );
+#endif
vtkstripper->Update();
vtkstripper->UpdateInformation();
vtkPolyData* polyDataResult = vtkstripper->GetOutput();
+//EED 2017-01-01 Migration VTK7
+#if VTK_MAJOR_VERSION <= 5
polyDataResult->Update( );
polyDataResult->UpdateInformation();
+#else
+ //...
+#endif
/* EED
ofstream myfile;
// Image Value
vtkImageChangeInformation *valueChInfo = vtkImageChangeInformation::New();
+//EED 2017-01-01 Migration VTK7
+#if VTK_MAJOR_VERSION <= 5
valueChInfo->SetInput(value);
+#else
+ valueChInfo->SetInputData(value);
+#endif
valueChInfo->SetSpacingScale(spc);
vtkMetaImageWriter *writerValueImage = vtkMetaImageWriter::New( );
+
+//EED 2017-01-01 Migration VTK7
+#if VTK_MAJOR_VERSION <= 5
writerValueImage->SetInput( valueChInfo->GetOutput() );
+#else
+ writerValueImage->SetInputData( valueChInfo->GetOutput() );
+#endif
writerValueImage->SetFileName( (const char *)filename.mb_str() );
writerValueImage->SetFileDimensionality( 3 );
writerValueImage->SetCompression(false);
vtkImageChangeInformation *maskChInfo = vtkImageChangeInformation::New();
+//EED 2017-01-01 Migration VTK7
+#if VTK_MAJOR_VERSION <= 5
maskChInfo->SetInput(mask);
+#else
+ maskChInfo->SetInputData(mask);
+#endif
maskChInfo->SetSpacingScale(spc);
vtkMetaImageWriter *writerMaskImage = vtkMetaImageWriter::New( );
+
+//EED 2017-01-01 Migration VTK7
+#if VTK_MAJOR_VERSION <= 5
writerMaskImage->SetInput( maskChInfo->GetOutput() );
+#else
+ writerMaskImage->SetInputData( maskChInfo->GetOutput() );
+#endif
+
writerMaskImage->SetFileName( (const char *)filename.mb_str() );
writerMaskImage->SetFileDimensionality( 3 );
writerMaskImage->SetCompression(false);
_theViewPanel->getImageData()->GetScalarRange(range);
int min = (int)floor (range[0]);
int max = (int)ceil (range[1]);
- _viewColorLayerImagePanel = new ColorLayerImageViewPanel( parent, min, max , 1);
+ _viewColorLayerImagePanel = new ColorLayerImageViewPanel( parent, min, max, 100, 1);
_viewColorLayerImagePanel->GetColorLayerImageViewManager()->SetwxVtkBaseView( 0 , _theViewPanel->getWxVtkBaseView() );
}
return _viewColorLayerImagePanel;
std::string cloneName = currentSelection [0];
manualBaseModel * manualModel = kernelManager->getOutlineByKeyName(cloneName);//_modelManager->getOutlineByKeyName( cloneName )->getModel();
- contourSize = manualModel-> GetPathSize();
+
+// EED 2017-05-30
+// contourSize = manualModel->GetPathSize();
+ double spc[3];
+ spc[0]=1;
+ spc[1]=1;
+ spc[2]=1;
+ contourSize = manualModel->GetPathSize( spc );
}
return contourSize;
}
+
manualBaseModel * wxContourMainFrame::getContour ()
{
std::vector<std::string> currentSelection = _theViewPanel->getSelectedObjects();
}
void wxContourMainFrame::onInsertCalculation(manualBaseModel* manualModel)
{
- double sizeInPixel = manualModel ->GetPathSize();
+// EED 2017-05-30
+// double sizeInPixel = manualModel ->GetPathSize( );
+ double spc[3];
+ spc[0]=1; // ????
+ spc[1]=1; // ????
+ spc[2]=1; // ????
+ double sizeInPixel = manualModel ->GetPathSize( spc );
+
double onePixelRealSize = interfMainPanel::getInstance()->GetPixelValue();;
- double realContourSize = sizeInPixel*onePixelRealSize;
+ double realContourSize = sizeInPixel*onePixelRealSize;
manualModel ->SetRealSize(realContourSize);
}