X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FVTKViewer%2FVTKViewer_Trihedron.cxx;h=daf3997d5b57e01509bb9fd9b0faf24b8d2fc21f;hb=aa05f2a1b23a54321ea7248ae9ac3463652c734e;hp=a6670cb87132b9745aa267d52ed53bdd2d6150e5;hpb=4cc553c01e9fbefc133c9e83c58d58b234358041;p=modules%2Fgui.git diff --git a/src/VTKViewer/VTKViewer_Trihedron.cxx b/src/VTKViewer/VTKViewer_Trihedron.cxx index a6670cb87..daf3997d5 100755 --- a/src/VTKViewer/VTKViewer_Trihedron.cxx +++ b/src/VTKViewer/VTKViewer_Trihedron.cxx @@ -44,7 +44,10 @@ VTKViewer_UnScaledActor::VTKViewer_UnScaledActor() Bounds[1] = Bounds[3] = Bounds[5] = -VTK_LARGE_FLOAT; } -float* +/*! + \return bounding box +*/ +vtkFloatingPointType* VTKViewer_UnScaledActor ::GetBounds() { @@ -65,19 +68,20 @@ void VTKViewer_UnScaledActor::SetSize(int theSize) void VTKViewer_UnScaledActor::Render(vtkRenderer *theRenderer) { if(theRenderer){ - float P[2][3] = {{-1.0, -1.0, 0.0},{+1.0, +1.0, 0.0}}; + vtkFloatingPointType P[2][3] = {{-1.0, -1.0, 0.0},{+1.0, +1.0, 0.0}}; theRenderer->ViewToWorld(P[0][0],P[0][1],P[0][2]); theRenderer->ViewToWorld(P[1][0],P[1][1],P[1][2]); - float aWorldDiag = sqrt((P[1][0]-P[0][0])*(P[1][0]-P[0][0])+ - (P[1][1]-P[0][1])*(P[1][1]-P[0][1])+ - (P[1][2]-P[0][2])*(P[1][2]-P[0][2])); + vtkFloatingPointType aWorldDiag = sqrt((P[1][0]-P[0][0])*(P[1][0]-P[0][0])+ + (P[1][1]-P[0][1])*(P[1][1]-P[0][1])+ + (P[1][2]-P[0][2])*(P[1][2]-P[0][2])); int* aSize = theRenderer->GetRenderWindow()->GetSize(); - float aWinDiag = sqrt(float(aSize[0]*aSize[0]+aSize[1]*aSize[1])); + vtkFloatingPointType aWinDiag = sqrt(vtkFloatingPointType(aSize[0]*aSize[0]+aSize[1]*aSize[1])); vtkDataSet* aDataSet = GetMapper()->GetInput(); - float aLength = aDataSet->GetLength(); - float aPrecision = 1.0E-3; - float anOldScale = GetScale()[0]; - float aScale = mySize*aWorldDiag/aWinDiag/aLength*sqrt(float(aSize[0])/float(aSize[1])); + aDataSet->Update(); + vtkFloatingPointType aLength = aDataSet->GetLength(); + vtkFloatingPointType aPrecision = 1.0E-3; + vtkFloatingPointType anOldScale = GetScale()[0]; + vtkFloatingPointType aScale = mySize*aWorldDiag/aWinDiag/aLength*sqrt(vtkFloatingPointType(aSize[0])/vtkFloatingPointType(aSize[1])); if(fabs(aScale - anOldScale)/aScale > aPrecision){ SetScale(aScale); } @@ -104,6 +108,9 @@ void VTKViewer_LineActor::Render(vtkRenderer *theRenderer) vtkFollower::Render(theRenderer); } +/*! + Constructor +*/ VTKViewer_Axis::VTKViewer_Axis() { /*! \li Initialize the Line pipe-line representation*/ @@ -152,6 +159,9 @@ VTKViewer_Axis::VTKViewer_Axis() myVisibility = VTKViewer_Trihedron::eOn; } +/*! + Destructor +*/ VTKViewer_Axis::~VTKViewer_Axis() { /*! \li Destroy of the Label pipe-line representation */ @@ -179,6 +189,9 @@ VTKViewer_Axis::~VTKViewer_Axis() myLineSource->Delete(); } +/*! Add to renderer + * \param theRenderer - vtkRenderer pointer + */ void VTKViewer_Axis::AddToRender(vtkRenderer* theRenderer){ /*! \li Order of the calls are important*/ theRenderer->AddActor(myLineActor); @@ -186,6 +199,9 @@ void VTKViewer_Axis::AddToRender(vtkRenderer* theRenderer){ theRenderer->AddActor(myArrowActor); } +/*! Remove actor of acis from \a theRenderer which are in myPresent. + * \param theRenderer - vtkRenderer pointer + */ void VTKViewer_Axis::RemoveFromRender(vtkRenderer* theRenderer){ /*! \li Order of the calls are important*/ theRenderer->RemoveActor(myLineActor); @@ -193,6 +209,7 @@ void VTKViewer_Axis::RemoveFromRender(vtkRenderer* theRenderer){ theRenderer->RemoveActor(myArrowActor); } +/*! Sets visibility for all Axis to \a theVis*/ void VTKViewer_Axis::SetVisibility(VTKViewer_Trihedron::TVisibility theVis) { switch(theVis){ @@ -213,20 +230,25 @@ void VTKViewer_Axis::SetVisibility(VTKViewer_Trihedron::TVisibility theVis) myVisibility = theVis; } -//**************************************************************** +/*! Set camera for myLabelActor + */ void VTKViewer_Axis::SetCamera(vtkCamera* theCamera){ myLabelActor->SetCamera(theCamera); } +/*! Sets \a theProperty for actors: myLineActor,myLabelActor,myArrowActor + */ void VTKViewer_Axis::SetProperty(vtkProperty* theProperty){ myLabelActor->SetProperty(theProperty); myArrowActor->SetProperty(theProperty); myLineActor->SetProperty(theProperty); } -void VTKViewer_Axis::SetSize(float theSize) +/*! Set size of VTKViewer_Axis + */ +void VTKViewer_Axis::SetSize(vtkFloatingPointType theSize) { - float aPosition[3] = {myDir[0]*theSize, myDir[1]*theSize, myDir[2]*theSize}; + vtkFloatingPointType aPosition[3] = {myDir[0]*theSize, myDir[1]*theSize, myDir[2]*theSize}; myLineSource->SetPoint2(aPosition); myArrowActor->SetPosition(0.0,0.0,0.0); @@ -318,16 +340,22 @@ VTKViewer_ZAxis::VTKViewer_ZAxis() vtkStandardNewMacro(VTKViewer_Trihedron); +/*! + Constructor +*/ VTKViewer_Trihedron::VTKViewer_Trihedron() { myPresent = vtkActorCollection::New(); myAxis[0] = VTKViewer_XAxis::New(); myAxis[1] = VTKViewer_YAxis::New(); myAxis[2] = VTKViewer_ZAxis::New(); - static float aSize = 100; + static vtkFloatingPointType aSize = 100; SetSize(aSize); } +/*! + Destructor +*/ VTKViewer_Trihedron::~VTKViewer_Trihedron() { myPresent->RemoveAllItems(); @@ -336,24 +364,34 @@ VTKViewer_Trihedron::~VTKViewer_Trihedron() myAxis[i]->Delete(); } -void VTKViewer_Trihedron::SetSize(float theSize) +/*! Set size of axes + */ +void VTKViewer_Trihedron::SetSize(vtkFloatingPointType theSize) { mySize = theSize; for(int i = 0; i < 3; i++) myAxis[i]->SetSize(theSize); } +/*! Set visibility of axes + */ void VTKViewer_Trihedron::SetVisibility(TVisibility theVis) { for(int i = 0; i < 3; i++) myAxis[i]->SetVisibility(theVis); } +/*! + \return visibility of first axis +*/ VTKViewer_Trihedron::TVisibility VTKViewer_Trihedron::GetVisibility() { return myAxis[0]->GetVisibility(); } +/*! Add to render all Axis + * \param theRenderer - vtkRenderer pointer + */ void VTKViewer_Trihedron::AddToRender(vtkRenderer* theRenderer) { vtkCamera* aCamera = theRenderer->GetActiveCamera(); @@ -363,6 +401,9 @@ void VTKViewer_Trihedron::AddToRender(vtkRenderer* theRenderer) } } +/*! Remove all actors from \a theRenderer which are in myPresent. + * \param theRenderer - vtkRenderer pointer + */ void VTKViewer_Trihedron::RemoveFromRender(vtkRenderer* theRenderer) { myPresent->InitTraversal(); @@ -372,6 +413,9 @@ void VTKViewer_Trihedron::RemoveFromRender(vtkRenderer* theRenderer) myAxis[i]->RemoveFromRender(theRenderer); } +/*! Return count of visible actors. + * \param theRenderer - vtkRenderer pointer + */ int VTKViewer_Trihedron::GetVisibleActorCount(vtkRenderer* theRenderer) { //TVisibility aVis = GetVisibility();