+/*
+# ---------------------------------------------------------------------
+#
+# Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image
+# pour la Santé)
+# Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton
+#
+# 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.
+# ------------------------------------------------------------------------
+*/
+
+
/*=========================================================================
Program: bbtk
Module: $RCSfile$
//=========================================================================
vtkGObjectView::vtkGObjectView()
{
- _baseView=NULL;
- _objectActor=NULL;
- _isStartDragging=false;
+ _baseView = NULL;
+ _borderObjectActor = NULL;
+ _fillObjectActor = NULL;
+ _isStartDragging = false;
- _state = NOTHING_HAPPENS;
+ _state = NOTHING_HAPPENS;
}
//=========================================================================
void vtkGObjectView::setModel(GObjectModel *model)
{
- _model=model;
+ _model = model;
}
//=========================================================================
void vtkGObjectView::setBaseView(wxVtkBaseView* baseView)
{
- _baseView=baseView;
+ _baseView = baseView;
}
//=========================================================================
//=========================================================================
void vtkGObjectView::addVtkActors()//virtual
+ {
+ _baseView->GetRenderer()->AddActor(_fillObjectActor);
+//EED2017 _baseView->GetRenderer()->Render();
+ }
+
+ //=========================================================================
+
+ void vtkGObjectView::removeVtkActors()//virtual
{
- _baseView->GetRenderer()->AddActor(_objectActor);
- _baseView->GetRenderer()->Render();
+ _baseView->GetRenderer()->RemoveActor(_fillObjectActor);
+//EED2017 _baseView->GetRenderer()->Render();
}
//=========================================================================
bool vtkGObjectView::isPointInside(int X,int Y) //virtual
{
- // RaC In the actual version, always z=900
- double xx=X,yy=Y,zz=900;
+ // RaC In the actual version, always z=GPOSITION_Z
+ double xx=X,yy=Y,zz=GPOSITION_Z;
_baseView->TransCoordScreenToWorld(xx,yy,zz);
return _model->isPointInside(xx,yy,zz);
}
void vtkGObjectView::moveObject(int X,int Y) //virtual
{
- // RaC In the actual version, always z=900
- double xx=X,yy=Y,zz=900;
+ // RaC In the actual version, always z=GPOSITION_Z
+ double xx=X,yy=Y,zz=GPOSITION_Z;
_baseView->TransCoordScreenToWorld(xx,yy,zz);
-
-
if(_isStartDragging)
{
_isStartDragging=false;
dragDifX=xx-xInic;
dragDifY=yy-yInic;
}
-
_model->move(xx-dragDifX,yy-dragDifY,zz);
}
//=========================================================================
- void vtkGObjectView::isStartDragging(bool param)
+ void vtkGObjectView::setStartDragging(bool param)
{
_isStartDragging=param;
dragDifX=0;
}
//=========================================================================
+
+ void vtkGObjectView::removeFromScene()
+ {
+ removeVtkActors();
+ setRefreshWaiting();
+ }
+
+ //=========================================================================
} // EO namespace bbtk