Computer Assited Medical Intervention Tool Kit  version 4.1
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
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>

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...
 
virtual 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.

References defaultValues(), and init().

◆ 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.

References defaultValues(), init(), and setPosition().

◆ 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

References defaultValues(), init(), and myDirection.

◆ 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.

References bounds, defaultValues(), and init().

◆ ~GeometricObject()

camitk::GeometricObject::~GeometricObject ( )
virtual

destructor

Member Function Documentation

◆ defaultValues()

void camitk::GeometricObject::defaultValues ( )
private

initialize the attributes to default values

References bounds, myDirection, and USER_DEFINED.

Referenced by GeometricObject().

◆ getActor()

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

get the representation as a vtk actor

References myActor.

◆ getType()

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

return the type

◆ init()

void camitk::GeometricObject::init ( )
privatevirtual

Initialisation of everything.

References ARROW, bounds, myActor, myDirection, myMapper, mySource, myType, setPosition(), setSize(), SPHERE, USER_DEFINED, X, Y, and Z.

Referenced by GeometricObject().

◆ setColor()

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

Set the color of the geometric object.

References myActor.

◆ setDirection()

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

Set the direction of the geometric object.

References myActor.

◆ setPosition()

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

Set the position of the geometric object.

References myActor.

Referenced by GeometricObject(), and init().

◆ 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().

References myActor.

Referenced by init().

Member Data Documentation

◆ bounds

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

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

Referenced by defaultValues(), GeometricObject(), and init().

◆ myActor

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

◆ myDirection

Direction camitk::GeometricObject::myDirection
private

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

Referenced by defaultValues(), GeometricObject(), and init().

◆ myMapper

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

the mapper

Referenced by init().

◆ mySource

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

the creator of the geometry

Referenced by init().

◆ myType

Geometry camitk::GeometricObject::myType
private

the geometric type

Referenced by init().


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