Computer Assited Medical Intervention Tool Kit  version 5.0
camitk::GeometricObject Class Reference

A geometric object allows one to create geometric object (sphere, arrow, ...) that can be added directly in the scene using getActor(). More...

#include <GeometricObject.h>

+ Collaboration diagram for camitk::GeometricObject:

Public Types

enum  Direction { X, Y, Z, USER_DEFINED }
 possible direction of an object More...
 
enum  Geometry { ARROW, SPHERE }
 the geometric type More...
 

Public Member Functions

 GeometricObject (Geometry)
 constructor by default of a geometric object of type given in parameters. More...
 
 GeometricObject (Geometry, const double, const double, const double)
 build a geometric object of a geometric object of type given in parameters and at a particular position,. More...
 
 GeometricObject (Geometry, Direction)
 build a geometric object of type given in parameter and along the direction also given as parameter. More...
 
 GeometricObject (Geometry, float boundingBox[6])
 build a geometric object of type given in parameter, and using a given bounding box (array containing in this order: [xmin,xmax, ymin,ymax, zmin,zmax]). More...
 
vtkSmartPointer< vtkActor > getActor ()
 get the representation as a vtk actor More...
 
Geometry getType () const
 return the type More...
 
void setColor (const double, const double, const double)
 Set the color of the geometric object. More...
 
void setDirection (const double, const double, const double)
 Set the direction of the geometric object. More...
 
void setPosition (const double, const double, const double)
 Set the position of the geometric object. More...
 
void setSize (const double)
 Set the size of the geometric object (can be used in different way depending o the geometry). More...
 
virtual ~GeometricObject ()
 destructor More...
 

Private Member Functions

void defaultValues ()
 initialize the attributes to default values More...
 
void init ()
 Initialisation of everything. More...
 

Private Attributes

float bounds [6]
 Bounding box of the object [xmin,xmax, ymin,ymax, zmin,zmax]. More...
 
vtkSmartPointer< vtkActor > myActor
 the actor More...
 
Direction myDirection
 Direction of the geometric object (sometimes has no particular meaning, e.g. for a sphere) More...
 
vtkSmartPointer< vtkPolyDataMapper > myMapper
 the mapper More...
 
vtkSmartPointer< vtkPolyDataAlgorithm > mySource
 the creator of the geometry More...
 
Geometry myType
 the geometric type More...
 

Detailed Description

A geometric object allows one to create geometric object (sphere, arrow, ...) that can be added directly in the scene using getActor().

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

Member Enumeration Documentation

◆ Direction

possible direction of an object

Enumerator

the object in the X direction, size = 0.1

the object in the Y direction, size = 0.1

the object in the Z direction, size = 0.1

USER_DEFINED 

< the object direction is defined by the user

◆ Geometry

the geometric type

Enumerator
ARROW 

an arrow

SPHERE 

a sphere (this is also the default)

Constructor & Destructor Documentation

◆ GeometricObject() [1/4]

camitk::GeometricObject::GeometricObject ( Geometry  g)

constructor by default of a geometric object of type given in parameters.

position at origin, direction DEFINED_BY_USER = (1.0, 1.0, 1.0), size = 0.1, color = reddish.

◆ GeometricObject() [2/4]

camitk::GeometricObject::GeometricObject ( Geometry  g,
const double  x,
const double  y,
const double  z 
)

build a geometric object of a geometric object of type given in parameters and at a particular position,.

direction DEFINED_BY_USER = (1.0, 1.0, 1.0), size = 0.1, color = reddish.

◆ GeometricObject() [3/4]

camitk::GeometricObject::GeometricObject ( Geometry  g,
Direction  dir 
)

build a geometric object of type given in parameter and along the direction also given as parameter.

position at origin, size = 0.1, color = reddish

◆ GeometricObject() [4/4]

camitk::GeometricObject::GeometricObject ( Geometry  g,
float  boundingBox[6] 
)

build a geometric object of type given in parameter, and using a given bounding box (array containing in this order: [xmin,xmax, ymin,ymax, zmin,zmax]).

The position is the (xmin, ymin, zmin) of the bounding box, size = 0.1, color = reddish.

◆ ~GeometricObject()

camitk::GeometricObject::~GeometricObject ( )
virtual

destructor

Member Function Documentation

◆ defaultValues()

void camitk::GeometricObject::defaultValues ( )
private

initialize the attributes to default values

◆ getActor()

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

get the representation as a vtk actor

◆ getType()

GeometricObject::Geometry camitk::GeometricObject::getType ( ) const
inline

return the type

References myType.

◆ init()

void camitk::GeometricObject::init ( )
private

Initialisation of everything.

◆ setColor()

void camitk::GeometricObject::setColor ( const double  r,
const double  g,
const double  b 
)

Set the color of the geometric object.

◆ setDirection()

void camitk::GeometricObject::setDirection ( const double  x,
const double  y,
const double  z 
)

Set the direction of the geometric object.

◆ setPosition()

void camitk::GeometricObject::setPosition ( const double  x,
const double  y,
const double  z 
)

Set the position of the geometric object.

◆ setSize()

void camitk::GeometricObject::setSize ( const double  s)

Set the size of the geometric object (can be used in different way depending o the geometry).

This method automatically calls sizeChanged().

Member Data Documentation

◆ bounds

float camitk::GeometricObject::bounds[6]
private

Bounding box of the object [xmin,xmax, ymin,ymax, zmin,zmax].

◆ myActor

vtkSmartPointer<vtkActor> camitk::GeometricObject::myActor
private

the actor

◆ myDirection

Direction camitk::GeometricObject::myDirection
private

Direction of the geometric object (sometimes has no particular meaning, e.g. for a sphere)

◆ myMapper

vtkSmartPointer<vtkPolyDataMapper> camitk::GeometricObject::myMapper
private

the mapper

◆ mySource

vtkSmartPointer<vtkPolyDataAlgorithm> camitk::GeometricObject::mySource
private

the creator of the geometry

◆ myType

Geometry camitk::GeometricObject::myType
private

the geometric type

Referenced by getType().


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