X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FEditorGraphicBBS%2FbbsVtkGUIEditorGraphic%2FvtkGObjectView.cxx;h=4e92f740266fb4bcd745c0e1b69145f9342e7b64;hb=1b3060e78b445e19d51933556fb072cc90e30c99;hp=7e4d139bf5146c0badb86b7d431e99dabc44ef45;hpb=522d684c97b10743148e2fbf2371cd02ff1fa42e;p=bbtkGEditor.git diff --git a/lib/EditorGraphicBBS/bbsVtkGUIEditorGraphic/vtkGObjectView.cxx b/lib/EditorGraphicBBS/bbsVtkGUIEditorGraphic/vtkGObjectView.cxx index 7e4d139..4e92f74 100644 --- a/lib/EditorGraphicBBS/bbsVtkGUIEditorGraphic/vtkGObjectView.cxx +++ b/lib/EditorGraphicBBS/bbsVtkGUIEditorGraphic/vtkGObjectView.cxx @@ -45,6 +45,7 @@ namespace bbtk { _baseView=NULL; _objectActor=NULL; + _isFirstDragging=false; } //========================================================================= @@ -53,19 +54,9 @@ namespace bbtk } //========================================================================= - void vtkGObjectView::refresh() + void vtkGObjectView::update(int command)//virtual { - if(_model->getState()==NOTHING_HAPPENS) - { - _objectActor->GetProperty()->SetColor(0,0,0); - } - - if(_model->getState()==HIGHLIGHTED) - { - _objectActor->GetProperty()->SetColor(1,0,0); - } - - //paint(); + //virtual } //========================================================================= @@ -107,7 +98,7 @@ namespace bbtk //========================================================================= - bool vtkGObjectView::isPointInside(int X,int Y) + bool vtkGObjectView::isPointInside(int X,int Y) //virtual { double xx=X,yy=Y,zz=0; _baseView->TransCoordScreenToWorld(xx,yy,zz); @@ -116,6 +107,38 @@ namespace bbtk //========================================================================= + void vtkGObjectView::moveObject(int X,int Y) //virtual + { + double xx=X,yy=Y,zz=0; + _baseView->TransCoordScreenToWorld(xx,yy,zz); + + + + if(_isFirstDragging) + { + _isFirstDragging=false; + + double xInic,yInic,zInic; + _model->getInicPoint(xInic,yInic,zInic); + dragDifX=xx-xInic; + dragDifY=yy-yInic; + } + + _model->move(xx-dragDifX,yy-dragDifY,zz); + + } + + //========================================================================= + + void vtkGObjectView::isFirstDragging(bool param) + { + _isFirstDragging=param; + dragDifX=0; + dragDifX=0; + } + + //========================================================================= + } // EO namespace bbtk // EOF