ObjectManipulatorProxy Class Reference

#include <ObjectManipulatorProxy.h>

List of all members.

Public Member Functions

 ObjectManipulatorProxy ()
 ~ObjectManipulatorProxy (void)
void setCurrentObject (SceneObject *object)
 pridružuje manipulacijski čvor nekom objektu iz scene
bool manipulationAxis (osg::Node *lockingAxis)
 definira os za manipulaciju transformacijom nad objektom
void reset ()
bool isActive ()
ObjectManipulatorNodegetManipulatorNode ()
osg::Vec3d handleTranslation (int x, int y, osg::Camera *camera)
 metoda obrađuje proširenu translaciju na temelju operacija mišem
osg::Vec3d handleRotation (int x, int y, osg::Camera *camera)
 metoda obrađuje proširenu rotaciju na temelju operacija mišem
osg::Vec3d handleScale (int x, int y, osg::Camera *camera)
 metoda obrađuje prošireno skaliranje na temelju operacija mišem
void translationSetup (osg::Camera *camera)
 inicijalizacija manipulacijskog koordinatnog sustava za translaciju
void rotationSetup (osg::Camera *camera)
 inicijalizacija manipulacijskog koordinatnog sustava za rotaciju
void scaleSetup (osg::Camera *camera)
 inicijalizacija manipulacijskog koordinatnog sustava za skaliranje
osg::Vec3 getPosition ()
 vraća poziciju objekta dodijeljenog manipulacijskom posredniku
osg::Vec3 getOrientation ()
 vraća orijentaciju objekta dodijeljenog manipulacijskom posredniku
osg::Quat getOrientationAsQuaternion ()
 vraća orijentaciju objekta dodijeljenog manipulacijskom posredniku
osg::Vec3 getScale ()
 vraća dimenzije skaliranja objekta dodijeljenog manipulacijskom posredniku
void setPosition (const osg::Vec3d &position)
 postavlja poziciju objekta dodijeljenog manipulacijskom posredniku
void setOrientation (const osg::Vec3d &orientation)
 postavlja orijentaciju objekta dodijeljenog manipulacijskom posredniku
void setScale (const osg::Vec3d &scale)
 postavlja dimenzije skaliranja objekta dodijeljenog manipulacijskom posredniku
double getBoundingRadius () const
 vraća polumjer obujmice objekta

Protected Member Functions

osg::Vec3d getProjectedVector (int x, int y, osg::Vec3d &center, osg::Vec3d &normal, osg::Camera *camera)
 vraća vektor projiciran na ravninu definranu točkom
osg::Vec3d & getMinAngleVector (osg::Vec3d &v1, osg::Vec3d &v2, osg::Vec3d &ref)

Protected Attributes

osg::Vec3d _lockAxisDirection
osg::Vec3d _manipulationAxisDirection
osg::Vec3d _perpendicularAxisDirection
osg::Vec3d _position
osg::Vec3d _orientation
osg::Vec3d _scale
axis _lockAxis
axis _manipulationAxis
axis _freeAxis
ObjectManipulatorNode_objectManipulatorNode
osg::ref_ptr< osg::Group > _manipulatorNodeFakePointer
 sprječava brisanje manipulacijskog koordinatnog sustava
SceneObject_currentObject
SceneManager_sceneManager

Detailed Description

Posrednička klasa za manipuliranje objektima. Sve transformacijske promjene nad objektima scene moraju proći kroz ovaj objekt. Jednostavne transformacije se prosljeđuju objektu scene, a funkcije proširenih alata za transformiranje objekata se obrađuju i svode na jednostavne transformacije


Constructor & Destructor Documentation

ObjectManipulatorProxy::ObjectManipulatorProxy (  ) 
ObjectManipulatorProxy::~ObjectManipulatorProxy ( void   ) 

Member Function Documentation

double ObjectManipulatorProxy::getBoundingRadius (  )  const

vraća polumjer obujmice objekta

ObjectManipulatorNode * ObjectManipulatorProxy::getManipulatorNode (  ) 
osg::Vec3d & ObjectManipulatorProxy::getMinAngleVector ( osg::Vec3d &  v1,
osg::Vec3d &  v2,
osg::Vec3d &  ref 
) [protected]
osg::Vec3 ObjectManipulatorProxy::getOrientation (  ) 

vraća orijentaciju objekta dodijeljenog manipulacijskom posredniku

osg::Quat ObjectManipulatorProxy::getOrientationAsQuaternion (  ) 

vraća orijentaciju objekta dodijeljenog manipulacijskom posredniku

osg::Vec3 ObjectManipulatorProxy::getPosition (  ) 

vraća poziciju objekta dodijeljenog manipulacijskom posredniku

osg::Vec3d ObjectManipulatorProxy::getProjectedVector ( int  x,
int  y,
osg::Vec3d &  center,
osg::Vec3d &  normal,
osg::Camera *  camera 
) [protected]

vraća vektor projiciran na ravninu definranu točkom

Parameters:
center i normalom
osg::Vec3 ObjectManipulatorProxy::getScale (  ) 

vraća dimenzije skaliranja objekta dodijeljenog manipulacijskom posredniku

osg::Vec3d ObjectManipulatorProxy::handleRotation ( int  x,
int  y,
osg::Camera *  camera 
)

metoda obrađuje proširenu rotaciju na temelju operacija mišem

osg::Vec3d ObjectManipulatorProxy::handleScale ( int  x,
int  y,
osg::Camera *  camera 
)

metoda obrađuje prošireno skaliranje na temelju operacija mišem

osg::Vec3d ObjectManipulatorProxy::handleTranslation ( int  x,
int  y,
osg::Camera *  camera 
)

metoda obrađuje proširenu translaciju na temelju operacija mišem

bool ObjectManipulatorProxy::isActive (  ) 
bool ObjectManipulatorProxy::manipulationAxis ( osg::Node *  lockingAxis  ) 

definira os za manipulaciju transformacijom nad objektom

void ObjectManipulatorProxy::reset (  ) 
void ObjectManipulatorProxy::rotationSetup ( osg::Camera *  camera  ) 

inicijalizacija manipulacijskog koordinatnog sustava za rotaciju

void ObjectManipulatorProxy::scaleSetup ( osg::Camera *  camera  ) 

inicijalizacija manipulacijskog koordinatnog sustava za skaliranje

void ObjectManipulatorProxy::setCurrentObject ( SceneObject object  ) 

pridružuje manipulacijski čvor nekom objektu iz scene

void ObjectManipulatorProxy::setOrientation ( const osg::Vec3d &  orientation  ) 

postavlja orijentaciju objekta dodijeljenog manipulacijskom posredniku

void ObjectManipulatorProxy::setPosition ( const osg::Vec3d &  position  ) 

postavlja poziciju objekta dodijeljenog manipulacijskom posredniku

void ObjectManipulatorProxy::setScale ( const osg::Vec3d &  scale  ) 

postavlja dimenzije skaliranja objekta dodijeljenog manipulacijskom posredniku

void ObjectManipulatorProxy::translationSetup ( osg::Camera *  camera  ) 

inicijalizacija manipulacijskog koordinatnog sustava za translaciju


Member Data Documentation

osg::ref_ptr<osg::Group> ObjectManipulatorProxy::_manipulatorNodeFakePointer [protected]

sprječava brisanje manipulacijskog koordinatnog sustava

osg::Vec3d ObjectManipulatorProxy::_orientation [protected]
osg::Vec3d ObjectManipulatorProxy::_position [protected]
osg::Vec3d ObjectManipulatorProxy::_scale [protected]

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

Generated on Thu Jan 14 20:50:12 2010 for TerrainEditor by  doxygen 1.6.1