Computer Assited Medical Intervention Tool Kit  version 4.1
Public Types | Public Member Functions | Private Attributes | List of all members
camitk::PlaneC Class Reference

This class allows you to transform a plane(translation,rotation around an axis) and visualize it. More...

#include <PlaneC.h>

Public Types

enum  PlaneCType {
  X_MIN, Y_MIN, Z_MIN, X_MAX,
  Y_MAX, Z_MAX, UNDEFINED
}
 a planeC could represent a plane of a bounding box More...
 

Public Member Functions

void clear ()
 Delete the plane from the View. More...
 
vtkSmartPointer< vtkActor > getActor ()
 get the actor of the plane More...
 
void getNormal (double *tab)
 get the normal of the plane More...
 
void getOrigin (double *tab)
 get the origin of the plane More...
 
void getTransformationInPercent (double *, double *, double *)
 get the transformation (translation, rot1 and rot2) in percentage More...
 
void init (PlaneCType type, double *bounds)
 Initialize the plane at a particular place of a bounding box. More...
 
 PlaneC ()
 Constructor by default. More...
 
void rotationAxe1 ()
 Rotate the plane around Axe1. More...
 
void rotationAxe2 ()
 Rotate the plane around Axe2. More...
 
void setOrigin (double, double, double)
 Initilize the origin of the plane. More...
 
void setTransfoPercentToRealValue (double *tab, double, double)
 set the transformation (translation, rot1 and rot2)and convert percentage to real value More...
 
void setTranslationMaxInPercent (double)
 set the translation value of the plane max to 100% More...
 
void setVisuActivePlane ()
 Visualization of the plane in red tone. More...
 
void setVisuActivePlaneOff ()
 Visualization of the plane in blue tone. More...
 
void setVisuPlane ()
 Visualization of the plane in wireframe. More...
 
void setXAxisPoint (double, double, double)
 The local x-axis vector will be set to (PointX - Origin) . More...
 
void setYAxisPoint (double, double, double)
 The local y-axis vector will be set to (PointY - Origin) . More...
 
void translatePlaneX ()
 Translate the plane on XAxis. More...
 
void translatePlaneY ()
 Translate the plane on YAxis. More...
 
void translatePlaneZ ()
 Translate the plane on ZAxis. More...
 
 ~PlaneC ()
 Destructor. More...
 

Private Attributes

double angle1
 difference between current and initial position More...
 
double angle2
 
vtkSmartPointer< vtkProperty > aProp
 
vtkSmartPointer< vtkPlaneSource > plane
 
vtkSmartPointer< vtkActor > planeActor
 
vtkSmartPointer< vtkPolyDataMapper > planeMapper
 
double transformation [3]
 store the transformation More...
 
double translation
 store the translation in percentage More...
 
double translation1
 

Detailed Description

This class allows you to transform a plane(translation,rotation around an axis) and visualize it.

This is a pure vtk wrapper class (no Core stuff).

Member Enumeration Documentation

◆ PlaneCType

a planeC could represent a plane of a bounding box

Enumerator
X_MIN 

the plane's normal is in X direction, the plane is at the min x

Y_MIN 

the plane's normal is in Y direction, the plane is at the min y

Z_MIN 

the plane's normal is in Z direction, the plane is at the min z

X_MAX 

the plane's normal is in X direction, the plane is at the max x

Y_MAX 

the plane's normal is in Y direction, the plane is at the max y

Z_MAX 

the plane's normal is in Z direction, the plane is at the max z

UNDEFINED 

the plane's normal is not defined yet

Constructor & Destructor Documentation

◆ PlaneC()

camitk::PlaneC::PlaneC ( )

Constructor by default.

References aProp, clear(), plane, planeActor, planeMapper, and setVisuPlane().

◆ ~PlaneC()

camitk::PlaneC::~PlaneC ( )

Destructor.

Member Function Documentation

◆ clear()

void camitk::PlaneC::clear ( )

Delete the plane from the View.

References angle1, angle2, plane, transformation, translation, and translation1.

Referenced by PlaneC().

◆ getActor()

vtkSmartPointer< vtkActor > camitk::PlaneC::getActor ( )

get the actor of the plane

References planeActor.

◆ getNormal()

void camitk::PlaneC::getNormal ( double *  tab)

get the normal of the plane

References plane.

◆ getOrigin()

void camitk::PlaneC::getOrigin ( double *  tab)

get the origin of the plane

References plane.

◆ getTransformationInPercent()

void camitk::PlaneC::getTransformationInPercent ( double *  t,
double *  r1,
double *  r2 
)

get the transformation (translation, rot1 and rot2) in percentage

References transformation.

◆ init()

void camitk::PlaneC::init ( PlaneC::PlaneCType  type,
double *  bounds 
)

Initialize the plane at a particular place of a bounding box.

Parameters
typethe type of the plane (see enum PlaneCType)
boundsan array of 6 doubles representing the bounding box (the six values have to be put in the correct order : xmin, ymin, zmin, xmax, ymax, zmax)

References setOrigin(), setTranslationMaxInPercent(), setXAxisPoint(), setYAxisPoint(), translatePlaneX(), translatePlaneY(), translatePlaneZ(), UNDEFINED, X_MAX, X_MIN, Y_MAX, Y_MIN, Z_MAX, and Z_MIN.

◆ rotationAxe1()

void camitk::PlaneC::rotationAxe1 ( )

Rotate the plane around Axe1.

References angle1, plane, and transformation.

◆ rotationAxe2()

void camitk::PlaneC::rotationAxe2 ( )

Rotate the plane around Axe2.

References angle2, plane, and transformation.

◆ setOrigin()

void camitk::PlaneC::setOrigin ( double  x,
double  y,
double  z 
)

Initilize the origin of the plane.

References plane.

Referenced by init().

◆ setTransfoPercentToRealValue()

void camitk::PlaneC::setTransfoPercentToRealValue ( double *  tab,
double  min,
double  max 
)

set the transformation (translation, rot1 and rot2)and convert percentage to real value

References transformation, and translation.

◆ setTranslationMaxInPercent()

void camitk::PlaneC::setTranslationMaxInPercent ( double  trans)

set the translation value of the plane max to 100%

References transformation, and translation.

Referenced by init().

◆ setVisuActivePlane()

void camitk::PlaneC::setVisuActivePlane ( )

Visualization of the plane in red tone.

References aProp, and planeActor.

◆ setVisuActivePlaneOff()

void camitk::PlaneC::setVisuActivePlaneOff ( )

Visualization of the plane in blue tone.

References aProp, and planeActor.

◆ setVisuPlane()

void camitk::PlaneC::setVisuPlane ( )

Visualization of the plane in wireframe.

References aProp, and planeActor.

Referenced by PlaneC().

◆ setXAxisPoint()

void camitk::PlaneC::setXAxisPoint ( double  x,
double  y,
double  z 
)

The local x-axis vector will be set to (PointX - Origin) .

The normal of the plane is defined by the cross product (x-axis, y-axis)

References plane.

Referenced by init().

◆ setYAxisPoint()

void camitk::PlaneC::setYAxisPoint ( double  x,
double  y,
double  z 
)

The local y-axis vector will be set to (PointY - Origin) .

The normal of the plane is defined by the cross product (x-axis, y-axis)

References plane.

Referenced by init().

◆ translatePlaneX()

void camitk::PlaneC::translatePlaneX ( )

Translate the plane on XAxis.

References a, plane, translation, and translation1.

Referenced by init().

◆ translatePlaneY()

void camitk::PlaneC::translatePlaneY ( )

Translate the plane on YAxis.

References a, plane, translation, and translation1.

Referenced by init().

◆ translatePlaneZ()

void camitk::PlaneC::translatePlaneZ ( )

Translate the plane on ZAxis.

References a, plane, translation, and translation1.

Referenced by init().

Member Data Documentation

◆ angle1

double camitk::PlaneC::angle1
private

difference between current and initial position

Referenced by clear(), and rotationAxe1().

◆ angle2

double camitk::PlaneC::angle2
private

Referenced by clear(), and rotationAxe2().

◆ aProp

vtkSmartPointer<vtkProperty> camitk::PlaneC::aProp
private

◆ plane

vtkSmartPointer<vtkPlaneSource> camitk::PlaneC::plane
private

◆ planeActor

vtkSmartPointer<vtkActor> camitk::PlaneC::planeActor
private

◆ planeMapper

vtkSmartPointer<vtkPolyDataMapper> camitk::PlaneC::planeMapper
private

Referenced by PlaneC().

◆ transformation

double camitk::PlaneC::transformation[3]
private

◆ translation

double camitk::PlaneC::translation
private

◆ translation1

double camitk::PlaneC::translation1
private

The documentation for this class was generated from the following files: