_datadir = datadir;
- inredo = 0;
- inundo = 0;
+ inredo = 0;
+ inundo = 0;
- interfMainPanel* pannew = interfMainPanel::getInstance(parent,datadir+"/data/Icons");//, eventHandler);
- _performingOperation = new PerformingOperation();
+ _pannew = interfMainPanel::getInstance(this,datadir+"/data/Icons");//, eventHandler);
+ _performingOperation = new PerformingOperation();
-
-
- if(images.size() > 0){
- this->setVectImages(images);
- }
+ if(images.size() > 0)
+ {
+ this->setVectImages(images);
+ }
}
return instance;
}
- std::vector<vtkImageData*> wxContourMainFrame ::getVectImages(){
+ std::vector<vtkImageData*> wxContourMainFrame ::getVectImages()
+ {
return kernelManager->getVectImages();
}
- wxContourMainFrame* wxContourMainFrame :: getInstance(){
- return instance;
-
+
+ wxContourMainFrame* wxContourMainFrame :: getInstance()
+ {
+ return instance;
+ }
+
+ void wxContourMainFrame :: resetInstance()
+ {
+ delete instance;
+ instance = NULL;
}
wxContourMainFrame :: ~wxContourMainFrame()
{
- m_mgr.UnInit();
- //El problema al cerrar la aplicacion puede estar asociado
- //a que wxAUINotebook esta en la aplicacion
- //principal (wxContourGUIExample)tambien
-//EED???? delete _theViewPanel;
-//EED???? delete _instantPanel;
-//EED???? delete _buttonsBar;
-//EED???? delete _actualInstant;
-//EED???? delete _sceneManager;
+
+ _pannew->Close();
+ interfMainPanel::resetInstance();
+ //_pannew->Destroy();
+ //delete _pannew;
+
+ m_mgr.UnInit();
+ //delete m_mgr;
+
+ //El problema al cerrar la aplicacion puede estar asociado
+ //a que wxAUINotebook esta en la aplicacion
+ //principal (wxContourGUIExample)tambien
+ //EED???? delete _theViewPanel;
+ //EED???? delete _instantPanel;
+ //EED???? delete _buttonsBar;
+ //EED???? delete _actualInstant;
+ //EED???? delete _sceneManager;
}
return _instantPanel->getIfConceptCheckedAt( name, pos );
}
-void wxContourMainFrame::changeInstant(){
+void wxContourMainFrame::changeInstant()
+{
std::vector<int> instantVect;
_instantPanel->getInstant( instantVect );
// Instant * theInstant = new Instant ( &instantVect );
_theViewPanel->setImageSlice(z);
}
}
+
void wxContourMainFrame::updateInstantAxes(){
}
} // if addedModel
} // if sizeCtrPt
}
-
int wxContourMainFrame::GetImageDataSizeZ(){
return _theViewPanel->GetImageDataSizeZ();
}
}
}
+void wxContourMainFrame::refLineChangeWidth(int width)
+{
+ _refLineView->SetWidthLine(width);
+ _refLineView->RefreshContour();
+
+ RefreshInterface();
+}
+
+
void wxContourMainFrame::onMirror()
{
//AD:02-09
//_refName = "";
}
-void wxContourMainFrame::showAxis(bool show){
+void wxContourMainFrame::onThreshold(int minVal, int maxVal)
+{
+
+ vtkImageData * img = _theViewPanel->getImageData();
+
+ double range[2];
+ img->GetScalarRange(range);
+
+ //vtkImageData * fakeImage = new vtkImageData();
+
+ //Lookup Table
+ vtkLookupTable *lookup = vtkLookupTable::New();
+ lookup->SetNumberOfTableValues(range[1]);
+ lookup->SetTableRange(range);
+ lookup->SetAlphaRange(0, 1);
+ lookup->SetValueRange(0, 1);
+ lookup->SetSaturationRange(0, 0);
+ lookup->SetRampToLinear( );
+
+
+ //Assign a fake color for the upper image, and set the white as transparent
+ for(int i = range[0]; i < range[1]; i++)
+ {
+ if( i >= minVal && i <= maxVal )
+ {
+ lookup->SetTableValue(i, 1.0, 0.0, 0.0, 1);
+ }
+ else if( i >= range[0] && i < minVal )
+ {
+ lookup->SetTableValue(i, 0.0, 0.0, 0.0, 0); //transparent
+ }
+ else if( i > maxVal && i < range[1] )
+ {
+ lookup->SetTableValue(i, 0.0, 0.0, 0.0, 0); //transparent
+ }
+ }
+
+ lookup->Build( );
+
+ vtkImageMapToColors *mapperImage = vtkImageMapToColors::New( );
+ mapperImage->SetInput( img );
+ mapperImage->SetLookupTable( lookup );
+
+ vtkImageActor * upperImageActor = vtkImageActor::New( );
+ upperImageActor->SetInput( mapperImage->GetOutput() );
+ upperImageActor->SetOpacity( 1 );
+
+ //viewer->SetInput( myImage ); viewer->GetRenderer()->AddActor( myActor );ACTOR!!!
+
+ //baseImageActor = vtkImageActor::New( );
+ //baseImageActor->SetInput( mBox->bbGetInputImage1() );
+
+ RefreshInterface();
+}
+
+void wxContourMainFrame::showAxis(bool show)
+{
_theViewPanel->SetVisibleAxis(show);
_theViewPanel->Refresh();
}