+/*# ---------------------------------------------------------------------
+#
+# 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.
+# ------------------------------------------------------------------------ */
+
//----------------------------------------------------------------------------------------------------------------
// Class definition include
//----------------------------------------------------------------------------------------------------------------
#include "wxVtkBaseView_SceneManager.h"
+#include "wxVtk2DBaseView.h"
//----------------------------------------------------------------------------------------------------------------
// Class implementation
wxVtkBaseView_SceneManager :: wxVtkBaseView_SceneManager( wxVtkBaseView * theWxBaseViewToManage, wxEvtHandler * theEventHandler, double * spc )
{
- _widthOfContour = 1.0;
_lastInteraction = NULL;
_lastInteractionName = "";
_eventHandler = theEventHandler;
_leftClickCount = 0;
_rigthClickCount = 0;
-
_contours_ViewControl = new std::map< std::string, ContourWrap_ViewControl * >();
_sceneContours_ViewControl = new std::map< std::string, ContourWrap_ViewControl * >();
_workingGroup = new std::map< std::string, ContourWrap_ViewControl * >();
-
_creatingMULT_ROI = false;
_editingROI = false;
_toIncludeAtInteractionGroup = false;
_waiting = false;
_creatingROI = false;
_drawingSelectionROI = false;
-
+ _showTextContour = true;
+ SetWidthContour(1.0);
_wxVtk_BaseView = theWxBaseViewToManage;
if( _wxVtk_BaseView!=NULL )
{
- vtkInteractorStyleBaseView* theInteractorStyleBaseView = _wxVtk_BaseView->GetInteractorStyleBaseView();
+ vtkInteractorStyleBaseView* theInteractorStyleBaseView = (vtkInteractorStyleBaseView*)_wxVtk_BaseView->GetInteractorStyleBaseView();
theInteractorStyleBaseView->AddInteractorStyleMaracas( this );
SetVtkInteractorStyleBaseView( theInteractorStyleBaseView );
}
configureSelectionROI( spc );
+ configureTextNumberOfContour();
}
+
//------------------------------------------------------------------------------------------------------------
wxVtkBaseView_SceneManager :: ~wxVtkBaseView_SceneManager()
{
{
_contours_ViewControl->erase( iter );
i++;
- }
- delete _contours_ViewControl;
+ } // for
_contours_ViewControl->clear();
+ delete _contours_ViewControl;
_workingGroup->clear();
delete _lastInteraction;
delete _workingGroup;
- delete _contours_ViewControl;
+ //delete _contours_ViewControl;
}
//------------------------------------------------------------------------------------------------------------
wxCommandEvent cevent( theEventType );
cevent.SetString( wxString( text.c_str(), wxConvUTF8) );
_eventHandler->ProcessEvent( cevent );
- }
+ } // if
}
-
//------------------------------------------------------------------------------------------------------------
// Attributes getters and setters
//------------------------------------------------------------------------------------------------------------
{
_eventHandler = theEventHandler;
}
+
//------------------------------------------------------------------------------------------------------------
void wxVtkBaseView_SceneManager :: setWxVtkViewBase( wxVtkBaseView * theBaseView )
{
{
return _wxVtk_BaseView;
}
+
//------------------------------------------------------------------------------------------------------------
- void wxVtkBaseView_SceneManager :: configureViewControlTo( std::string theKeyName, manualContourModel * manModelContour, double * spc,int typeContour)
+ void wxVtkBaseView_SceneManager::configureViewControlTo( std::string theKeyName, manualBaseModel * manModelContour, double * spc,int typeContour)
{
//setControlActiveStateOfALL( false );
_creatingROI = true;
_lastInteraction->getControler()->SetActive( false );
this->_vtkInteractorStyleBaseView->SetRefresh_waiting();
}
-
-
manualContourBaseControler *manContourControl;
manualViewBaseContour *manViewerContour;
-
// Creating the view manualViewContour and the manualContourControler
+ // NOTE: The model is created in the KernelManagerContour class, factoryManualContourModel method
if (typeContour==1)
{
manContourControl = new manualContourControler();
manViewerContour = new manualViewBullEye();
}
+ if (typeContour==6)
+ {
+ manContourControl = new manualLineControler();
+ manViewerContour = new manualViewLine();
+ }
+
+ //Points
+ if (typeContour==7)
+ {
+ manContourControl = new manualContourControler();
+ manViewerContour = new manualViewPoints();
+ }
+
+ //Polygon
+ if (typeContour==10)
+ {
+ manContourControl = new manualContourControler();
+ manViewerContour = new manualViewContour();
+ }
-//EED Borrame
-//FILE *ff = fopen("c:/temp/wxVtkBaseView_SceneManagerStadistics.txt","a+");
-//fprintf(ff,"EED wxVtkBaseView_SceneManager :: configureViewControlTo \n" );
-//fprintf(ff," %s %p \n",theKeyName.c_str() , manContourControl );
-//fclose(ff);
_lastInteraction = insertWrap( theKeyName, manContourControl, manViewerContour );
//Configuring the relations between the contour members representation
manViewerContour->SetModel( manModelContour );
manViewerContour->SetWxVtkBaseView( _wxVtk_BaseView );
- manViewerContour->SetRange( 2 );
- manViewerContour->SetZ( 1000 );
+ manViewerContour->SetRange( _widthOfControlPoint );
+ manViewerContour->SetZ( -900 );
manViewerContour->SetSpacing(spc);
manViewerContour->RefreshContour();
addToScene( theKeyName );
}
- //------------------------------------------------------------------------------------------------------------
- void wxVtkBaseView_SceneManager :: configureSelectionROI( double * spc )
- {
+//------------------------------------------------------------------------------------------------------------
+void wxVtkBaseView_SceneManager :: configureSelectionROI( double * spc )
+{
_controlerSelectionROI = new manualRoiControler();
_viewerSelectionROI = new manualViewRoi();
_modelSelectionROI = new manualContourModel();
_viewerSelectionROI->SetModel( _modelSelectionROI );
_viewerSelectionROI->SetWxVtkBaseView( _wxVtk_BaseView );
_viewerSelectionROI->SetRange( 2 );
- _viewerSelectionROI->SetZ( 1000 );
+ _viewerSelectionROI->SetZ( -900 );
_viewerSelectionROI->SetColorNormalContour(0.6, 0.8, 0);
_viewerSelectionROI->SetSpacing( spc );
_controlerSelectionROI->SetModelView( _modelSelectionROI , _viewerSelectionROI );
- _wxVtk_BaseView->GetInteractorStyleBaseView()->AddInteractorStyleMaracas( _controlerSelectionROI );
+ ((vtkInteractorStyleBaseView*)_wxVtk_BaseView->GetInteractorStyleBaseView())->AddInteractorStyleMaracas( _controlerSelectionROI );
_controlerSelectionROI->SetActive(false);
- }
+}
- //------------------------------------------------------------------------------------------------------------
- ContourWrap_ViewControl * wxVtkBaseView_SceneManager :: insertWrap( std::string theKeyName, manualContourBaseControler * manContourControl, manualViewBaseContour * manViewerContour )
+//------------------------------------------------------------------------------------------------------------
+void wxVtkBaseView_SceneManager::configureTextNumberOfContour()
+{
+ // Text Window Level
+ vtkTextActor *textActor = vtkTextActor::New();
+ textActor->SetDisplayPosition(10, 85);
+ textActor->SetInput("contours:--");
+ // Set coordinates to match the old vtkScaledTextActor default value
+ textActor->GetPosition2Coordinate()->SetCoordinateSystemToNormalizedViewport();
+ textActor->GetPosition2Coordinate()->SetValue( 0.2 , 0.2 );
+ vtkTextProperty *tprop = textActor->GetTextProperty();
+ tprop->SetFontSize(14);
+ tprop->SetFontFamilyToArial();
+ tprop->SetColor(1, 1, 0);
+ _wxVtk_BaseView->GetRenderer()->AddActor2D(textActor);
+ _numberOfContoursTextActor=textActor;
+}
+
+//------------------------------------------------------------------------------------------------------------
+void wxVtkBaseView_SceneManager::SetLabelNumberOfContours( std::string label )
+{
+ _numberOfContoursTextActor->SetInput( label.c_str() );
+}
+
+//------------------------------------------------------------------------------------------------------------
+ContourWrap_ViewControl * wxVtkBaseView_SceneManager :: insertWrap( std::string theKeyName, manualContourBaseControler * manContourControl, manualViewBaseContour * manViewerContour )
{
ContourWrap_ViewControl * newContourWrap = new ContourWrap_ViewControl(manContourControl, manViewerContour);
+ if(_contours_ViewControl == NULL)
+ {
+ _contours_ViewControl = new std::map< std::string, ContourWrap_ViewControl * >();
+ }
_contours_ViewControl->insert(std::pair <std::string, ContourWrap_ViewControl *> ( theKeyName, newContourWrap ));
return newContourWrap;
}
+
//------------------------------------------------------------------------------------------------------------
void wxVtkBaseView_SceneManager :: desconfigureViewControlOf( std::string theKeyName )
- {
-
+ {
}
+
//------------------------------------------------------------------------------------------------------------
void wxVtkBaseView_SceneManager :: removeWrap( std::string theKeyName )
{
this->_vtkInteractorStyleBaseView->SetRefresh_waiting();
this->_vtkInteractorStyleBaseView->EvaluateToRefresh();
}
+
//------------------------------------------------------------------------------------------------------------
ContourWrap_ViewControl * wxVtkBaseView_SceneManager :: getContourWrap_ViewControlOf ( std::string theName )
{
return iter->second;
//return iter->first;
}
+
//------------------------------------------------------------------------------------------------------------
ContourWrap_ViewControl * wxVtkBaseView_SceneManager :: getContourWrap_ViewControlOf ( std::string theName, std::map<std::string, ContourWrap_ViewControl *> * theMap )
{
iter = theMap->find( theName );
return iter->second;
}
+
//------------------------------------------------------------------------------------------------------------
manualContourBaseControler * wxVtkBaseView_SceneManager :: getControlerOf( std::string theName )
{
return getContourWrap_ViewControlOf ( theName )->getControler();
}
+
//------------------------------------------------------------------------------------------------------------
manualViewBaseContour * wxVtkBaseView_SceneManager :: getViewerOf( std::string theName )
{
return getContourWrap_ViewControlOf ( theName )->getViewer();
}
+
//------------------------------------------------------------------------------------------------------------
void wxVtkBaseView_SceneManager :: set_creatingMULT_ROI( bool condition )
{
_creatingMULT_ROI = condition;
}
+
//------------------------------------------------------------------------------------------------------------
void wxVtkBaseView_SceneManager :: set_editingROI( bool condition )
{
_editingROI = condition;
}
+
//------------------------------------------------------------------------------------------------------------
void wxVtkBaseView_SceneManager :: set_toIncludeAtInteractionGroup( bool condition )
{
_toIncludeAtInteractionGroup = condition;
}
+
//------------------------------------------------------------------------------------------------------------
void wxVtkBaseView_SceneManager :: set_waiting( bool condition )
{
_waiting = condition;
}
+
//------------------------------------------------------------------------------------------------------------
bool wxVtkBaseView_SceneManager :: get_creatingMULT_ROI( )
{
return _creatingMULT_ROI;
}
+
//------------------------------------------------------------------------------------------------------------
bool wxVtkBaseView_SceneManager :: get_editingROI( )
{
return _editingROI;
}
+
//------------------------------------------------------------------------------------------------------------
bool wxVtkBaseView_SceneManager :: get_toIncludeAtInteractionGroup( )
{
// Other functional methods
//------------------------------------------------------------------------------------------------------------
- void wxVtkBaseView_SceneManager :: createCopyContourOf( std::string anExistingKName, std::string cloneName, manualContourModel * manualModel, bool append )
+ void wxVtkBaseView_SceneManager :: createCopyContourOf( std::string anExistingKName, std::string cloneName, manualBaseModel * manualModel, bool append )
{
if ( !append )
{
}
std::map <std::string, ContourWrap_ViewControl *>::iterator iter;
-//EED Borrame
-// FILE *ff = fopen("c:/temp/wxVtkBaseView_SceneManagerStadistics.txt","a+");
-// fprintf(ff,"EED wxVtkBaseView_SceneManager::createCopyContourOf() \n" );
-// int ii,size = _contours_ViewControl->size();
-// iter = _contours_ViewControl->begin();
-// for (ii=0;ii<size;ii++)
-// {
-// fprintf(ff," %d %s\n ", ii ,iter->first.c_str() );
-// iter++;
-// }
-//fclose(ff);
iter = _contours_ViewControl->find( anExistingKName );
- manualContourModel *cModule = manualModel;
+ manualBaseModel *cModule = manualModel;
manualViewBaseContour *cViewer = iter->second->getViewer()->Clone();
manualContourBaseControler *cControl = iter->second->getControler()->Clone( );
_lastInteractionName = "";
}
-//EED Borrame
-//FILE *ff = fopen("c:/temp/wxVtkBaseView_SceneManagerStadistics.txt","a+");
-//fprintf(ff,"EED wxVtkBaseView_SceneManager :: removeFromScene \n" );
-//fprintf(ff," %p \n", contourWRP->getControler() );
-//fclose(ff);
- _wxVtk_BaseView->GetInteractorStyleBaseView()->RemoveInteractorStyleMaracas( contourWRP->getControler() );
+ ((vtkInteractorStyleBaseView*)_wxVtk_BaseView->GetInteractorStyleBaseView())->RemoveInteractorStyleMaracas( contourWRP->getControler() );
contourWRP->getControler()->SetActive( control );
contourWRP->getControler()->SetEditable( false );
std::map<std::string, ContourWrap_ViewControl *> :: iterator iter;
iter = _sceneContours_ViewControl->find( theKeyName );
- if (iter != _sceneContours_ViewControl->end()){
+ if (iter != _sceneContours_ViewControl->end())
+ {
ContourWrap_ViewControl * contourWRP = iter->second;
removeFromScene( contourWRP );
-//EED Borrame
-//FILE *ff = fopen("c:/temp/wxVtkBaseView_SceneManagerStadistics.txt","a+");
-//fprintf(ff,"EED wxVtkBaseView_SceneManager :: removeFromScene Bbbbb \n" );
-//fprintf(ff," %d \n", _sceneContours_ViewControl->size() );
_sceneContours_ViewControl->erase(iter);
- }
-//EED Borrame
-//fprintf(ff," %d \n", _sceneContours_ViewControl->size() );
-//fclose(ff);
+ }
}
}
//------------------------------------------------------------------------------------------------------------
- void wxVtkBaseView_SceneManager :: removeSceneContours( )
+ void wxVtkBaseView_SceneManager::removeSceneContours()
{
-//EED Borrame
-//FILE *ff = fopen("c:/temp/wxVtkBaseView_SceneManagerStadistics.txt","a+");
-//fprintf(ff,"EED wxVtkBaseView_SceneManager :: removeSceneContours \n" );
-//fprintf(ff," %d \n", _sceneContours_ViewControl->size() );
std::map <std::string, ContourWrap_ViewControl *>::iterator iter = _sceneContours_ViewControl->begin();
int size = _sceneContours_ViewControl->size();
for ( int i = 0; i<size; i++ )
iter++;
}
_sceneContours_ViewControl->clear();
-
-//EED Borrame
-//fprintf(ff," %d \n", _sceneContours_ViewControl->size() );
-//fclose(ff);
-
//Removing the selection rectangle to avoid showing when it's innecesary
_controlerSelectionROI->SetActive( false );
_viewerSelectionROI->RemoveCompleteContourActor();
if( !append )
{
removeSceneContours();
- }
+ } // if !append
+
_sceneContours_ViewControl->insert(std::pair <std::string, ContourWrap_ViewControl *> ( theKeyName, contourWRP ) );
- if ( visualization )
+
+ if ( visualization==true )
{
contourWRP->getViewer()->AddCompleteContourActor( ifShowCtrlPoints );
- }
+ } // if visualization
- if( control )
+ if( control==true )
{
- _wxVtk_BaseView->GetInteractorStyleBaseView()->AddInteractorStyleMaracas( contourWRP->getControler() );
- }
- if( ifActive )
+ ((vtkInteractorStyleBaseView*)_wxVtk_BaseView->GetInteractorStyleBaseView())->AddInteractorStyleMaracas( contourWRP->getControler() );
+ } // if contour
+
+ if( !control )
+ {
+ contourWRP->getViewer()->SetColorNormalContour(1,0,0);
+ } else {
+ contourWRP->getViewer()->SetColorNormalContour(0,0,1);
+ } // if !contour
+
+ if( ifActive==true )
{
contourWRP->getControler()->SetActive( true );
contourWRP->getViewer()->RemoveTextActor();
- }
+ } // if ifActive
+
+ contourWRP->getViewer()->SetShowText(_showTextContour);
}
//------------------------------------------------------------------------------------------------------------
int size = _workingGroup->size();
for ( int i = 0; i<size; i++ )
{
- manualViewBaseContour * viewer = iter->second->getViewer();
+//EED??? manualViewBaseContour * viewer = iter->second->getViewer();
selectedObjects.push_back( iter->first);
iter++;
void wxVtkBaseView_SceneManager :: selectObjects( std::vector< std::string > theExistingObjectsToSelect )
{
std::map <std::string, ContourWrap_ViewControl *>::iterator iter = _contours_ViewControl->begin();
- int size = _contours_ViewControl->size();
- bool selected;
+//EED??? int size = _contours_ViewControl->size();
+//EED??? bool selected;
/*for ( int i = 0; i<size; i++ )
{
selected = false;
// Inherited Methods
//------------------------------------------------------------------------------------------------------------
+ bool wxVtkBaseView_SceneManager :: isCtrlPressed()
+ {
+ return _ctrlKey;
+ }
+ bool wxVtkBaseView_SceneManager :: isShiftPressed()
+ {
+ return _shiftKey;
+ }
+ char wxVtkBaseView_SceneManager :: getLastKeyCode()
+ {
+ return _lastKeyCode;
+ }
bool wxVtkBaseView_SceneManager :: OnChar()
{
- bool ctrlKey = _vtkInteractorStyleBaseView->GetInteractor()->GetControlKey() == 1;
- bool shiftKey = _vtkInteractorStyleBaseView->GetInteractor()->GetShiftKey() == 1;
+ _ctrlKey = _vtkInteractorStyleBaseView->GetInteractor()->GetControlKey() == 1;
+ _shiftKey = _vtkInteractorStyleBaseView->GetInteractor()->GetShiftKey() == 1;
_lastKeyCode = _vtkInteractorStyleBaseView->GetInteractor()-> GetKeyCode();
+
+ wxCommandEvent cevent( wxEVT_COMMAND_BUTTON_CLICKED );
+ _eventHandler->ProcessEvent( cevent );
-
- if( _eventHandler!=NULL )
+
+ /*if( _eventHandler!=NULL )
{
- const char * toolCommand = NULL;
+ char * toolCommand = NULL;
if ( _lastKeyCode == 3 && ctrlKey ) //'C' || 'c'
{
- toolCommand = &(wxContour_ActionCommandsID::COPY_TOOL);
+ toolCommand = &(COPY_TOOL);
}
else if( _lastKeyCode == 22 && ctrlKey ) //'V' || 'v'
{
- toolCommand = &(wxContour_ActionCommandsID::PASTE_TOOL);
+ toolCommand = &(PASTE_TOOL);
}
else if( _lastKeyCode == 8 || (_lastKeyCode==127) ) // Delete
{
- toolCommand = &(wxContour_ActionCommandsID::DELETE_KEY);
+ toolCommand = &(DELETE_KEY);
}
else if( _lastKeyCode == 14 && ctrlKey ) //'N' || 'n'
{
- toolCommand = &(wxContour_ActionCommandsID::CREATE_CONTOUR_KEY);
+ toolCommand = &(CREATE_CONTOUR_KEY);
}
else if( _lastKeyCode == 15 && ctrlKey ) //'O' || 'o'
{
- toolCommand = &(wxContour_ActionCommandsID::OPEN_TOOL);
+ toolCommand = &(OPEN_TOOL);
}
else if( _lastKeyCode == 19 && ctrlKey ) //'S' || 's'
{
- toolCommand = &(wxContour_ActionCommandsID::SAVE_KEY);
+ toolCommand = &(SAVE_KEY);
}
if ( toolCommand!=NULL )
{
+ currentkey = toolCommand;
wxCommandEvent cevent( wxEVT_COMMAND_BUTTON_CLICKED );
cevent.SetClientData( (void *) toolCommand);
_eventHandler->ProcessEvent( cevent );
}
- }
+ }*/
// long int endtime = clock();
bool wxVtkBaseView_SceneManager :: OnMouseMove()
{
-//EED Borrame
-// FILE *ff = fopen("c:/temp/wxVtkBaseView_SceneManagerStadistics.txt","a+");
-// fprintf(ff,"EED wxVtkBaseView_SceneManager::OnMouseMove() \n" );
-// fclose(ff);
bool condition = true;
int X,Y;
- wxVTKRenderWindowInteractor *_wxVTKiren = _vtkInteractorStyleBaseView->GetWxVtk2DBaseView()->GetWxVTKRenderWindowInteractor();
+ crea::wxVTKRenderWindowInteractor *_wxVTKiren = _vtkInteractorStyleBaseView->GetWxVtk2DBaseView()->GetWxVTKRenderWindowInteractor();
_wxVTKiren->GetEventPosition( X , Y );
bool ctrlKey = _vtkInteractorStyleBaseView->GetInteractor()->GetControlKey() == 1;
- bool shiftKey = _vtkInteractorStyleBaseView->GetInteractor()->GetShiftKey() == 1;
+//??? bool shiftKey = _vtkInteractorStyleBaseView->GetInteractor()->GetShiftKey() == 1;
if( _waiting && !ctrlKey )
{
{
//Multiple moving
- bool ckecking = false;
+//EED??? bool ckecking = false;
for( i =0; i<size ; i++ )
{
control = iter->second->getControler();
size = selectionSize;
iter = _workingGroup->begin();
}
- }
- else
- {
+ } else {
_toIncludeAtInteractionGroup = false;
}
if( ((_lastInteraction != NULL && !control->IsEditable() && !control->IsMoving() ) || _lastInteraction==NULL ))
{
-//EED Borrame
-// FILE *ff = fopen("c:/temp/wxVtkBaseView_SceneManagerStadistics.txt","a+");
-// fprintf(ff,"EED wxVtkBaseView_SceneManager::OnMouseMove() 00222\n" );
-// fclose(ff);
- _lastInteraction=NULL;
+
+ _lastInteraction=NULL;
for( i =0; i<size ; i++ )
{
control = iter->second->getControler();
bool wxVtkBaseView_SceneManager :: OnLeftButtonDown()
{
- /*FILE *ff;
- ff = fopen("c:/temp/wxVtkBaseView_SceneManagerStadistics.txt","a+");
- long int endtime = clock();
-// double sg = (double)(endtime-startTimeAE) / (double)CLK_TCK;
- fprintf(ff,"wxVtkBaseView_SceneManager :: OnLeftButtonDown() tLBDown = %i \n \n",endtime);
- fclose(ff);*/
- char aa = _vtkInteractorStyleBaseView->GetInteractor()->GetKeyCode();
+//EED??? char aa = _vtkInteractorStyleBaseView->GetInteractor()->GetKeyCode();
bool condition = false;
//vtkCommand * theComand = _wxVtk_BaseView ->GetInteractorStyleBaseView()->GetCommand(
- vtkRenderWindowInteractor * vtkRWInteractor1 = _wxVtk_BaseView ->GetWxVTKRenderWindowInteractor();
- wxVTKRenderWindowInteractor * vtkRWInteractor2 = _wxVtk_BaseView ->GetWxVTKRenderWindowInteractor();//GetInteractorStyleBaseView()->GetInteractor();
- wxVTKRenderWindowInteractorPlus * vtkRWInteractor3 = (wxVTKRenderWindowInteractorPlus*)_wxVtk_BaseView ->GetWxVTKRenderWindowInteractor();//GetInteractorStyleBaseView()->GetInteractor();
+//EED??? vtkRenderWindowInteractor * vtkRWInteractor1 = _wxVtk_BaseView ->GetWxVTKRenderWindowInteractor();
+//EED??? wxVTKRenderWindowInteractor * vtkRWInteractor2 = _wxVtk_BaseView ->GetWxVTKRenderWindowInteractor();//GetInteractorStyleBaseView()->GetInteractor();
+//EED?? wxVTKRenderWindowInteractorPlus * vtkRWInteractor3 = (wxVTKRenderWindowInteractorPlus*)_wxVtk_BaseView ->GetWxVTKRenderWindowInteractor();//GetInteractorStyleBaseView()->GetInteractor();
vtkRenderWindowInteractor * vtkRWInteractor = _vtkInteractorStyleBaseView->GetInteractor();
bool ctrlKey = vtkRWInteractor->GetControlKey() == 1;
bool wxVtkBaseView_SceneManager :: OnRightButtonDown()
{
bool condition = false;
- vtkRenderWindowInteractor * vtkRWInteractor = _vtkInteractorStyleBaseView->GetInteractor();
- bool ctrlKey = vtkRWInteractor->GetControlKey() == 1;
+//EED??? vtkRenderWindowInteractor * vtkRWInteractor = _vtkInteractorStyleBaseView->GetInteractor();
+//EED??? bool ctrlKey = vtkRWInteractor->GetControlKey() == 1;
_waiting = true;
condition = true;
//_lastInteraction->getControler()->SetPosibleToMove( false );
control->SetActive( false );
control->SetEditable( false );
- _wxVtk_BaseView->GetInteractorStyleBaseView()->RemoveInteractorStyleMaracas( control );
+ control->SetPosibleToMove( false );
+// _wxVtk_BaseView->GetInteractorStyleBaseView()->RemoveInteractorStyleMaracas( control );
_lastInteraction->getViewer()->Refresh();
this->_vtkInteractorStyleBaseView->SetRefresh_waiting();
}
bool wxVtkBaseView_SceneManager :: OnRightDClick()
{
bool condition = false; condition = true;
- vtkRenderWindowInteractor * vtkRWInteractor = _vtkInteractorStyleBaseView->GetInteractor();
+//EED??? vtkRenderWindowInteractor * vtkRWInteractor = _vtkInteractorStyleBaseView->GetInteractor();
/*vtkRenderWindowInteractor * vtkRWInteractor1 =*/ _vtkInteractorStyleBaseView->OnChar();
- wxVTKRenderWindowInteractor * wxVtkRWInterator = _wxVtk_BaseView ->GetWxVTKRenderWindowInteractor();
+//EED??? wxVTKRenderWindowInteractor * wxVtkRWInterator = _wxVtk_BaseView ->GetWxVTKRenderWindowInteractor();
/*if( _waiting )
{
double sg = (double)(start) / CLOCKS_PER_SEC;
#endif
int tmpPx,tmpPy;
- wxVTKRenderWindowInteractor *wxVTKiren = _vtkInteractorStyleBaseView->GetWxVtk2DBaseView()->GetWxVTKRenderWindowInteractor();
+ crea::wxVTKRenderWindowInteractor *wxVTKiren = _vtkInteractorStyleBaseView->GetWxVtk2DBaseView()->GetWxVTKRenderWindowInteractor();
wxVTKiren->GetEventPosition( tmpPx , tmpPy );
- fprintf(ff,"::%s (x,y) = (%i, %i) t(sg): \n \n",method.c_str(), tmpPx, tmpPy, sg);
+ fprintf(ff,"::%s (x,y) = (%i, %i) t(sg): %f\n \n",method.c_str(), tmpPx, tmpPy, sg);
fclose(ff);
}
if (currentSelection.size()>=1){
manualContourBaseControler *cControler = this->getControlerOf( currentSelection[0] );
- manualContourModel *cModel = cControler->GetManualContourModel();
+ manualBaseModel *cModel = cControler->GetManualContourModel();
int i,size = cModel->GetNumberOfPointsSpline();
double x,y,z;
for (i=0; i<size; i++)
//------------------------------------------------------------------------------------------------------------
void wxVtkBaseView_SceneManager::SetWidthContour(double width)
{
- _widthOfContour = width;
+ _widthOfContour = width;
+ _widthOfControlPoint = _widthOfContour*_widthOfContour/2;
manualViewBaseContour *cViewer;
ContourWrap_ViewControl *conwraviwcont;
- std::map <std::string, ContourWrap_ViewControl *>::iterator iter;;
-
- for (iter=_contours_ViewControl->begin(); iter!=_contours_ViewControl->end(); iter++ )
+ std::map <std::string, ContourWrap_ViewControl *>::iterator iter;
+
+ if (_contours_ViewControl!=NULL)
{
- conwraviwcont = iter->second;
- cViewer = conwraviwcont->getViewer();
- cViewer->SetWidthLine(_widthOfContour);
- }
+ for (iter=_contours_ViewControl->begin(); iter!=_contours_ViewControl->end(); iter++ )
+ {
+ conwraviwcont = iter->second;
+ cViewer = conwraviwcont->getViewer();
+ cViewer->SetShowText( false ); // EED 28Mars2011
+ cViewer->SetWidthLine( _widthOfContour );
+ cViewer->SetRange( _widthOfControlPoint );
+ } // for
+ } // if
+ }
+
+ void wxVtkBaseView_SceneManager::SetShowTextContour(bool show)
+ {
+ _showTextContour = show;
}
bool wxVtkBaseView_SceneManager::isEditableCControler(std::string theKeyName){
ContourWrap_ViewControl* ccon = getContourWrap_ViewControlOf(theKeyName);
- manualViewBaseContour * cViewer = ccon->getViewer();
- manualContourBaseControler * cControler = ccon->getControler();
+ manualViewBaseContour * cViewer = ccon->getViewer();
+ manualContourBaseControler * cControler = ccon->getControler();
removeFromScene(theKeyName);
removeWrap(theKeyName);
delete cViewer;
delete cControler;
}
-
\ No newline at end of file
+
+
+