Gui::SoFCCSysDragger Class Reference

Coordinate System Dragger. More...

#include <SoFCCSysDragger.h>

Public Member Functions

void clearIncrementCounts ()
 used to reset after drag update. More...
 
void setUpAutoScale (SoCamera *cameraIn)
 used to setup the auto scaling of dragger. More...
 
 SoFCCSysDragger ()
 
 ~SoFCCSysDragger ()
 

Static Public Member Functions

static void initClass ()
 

Public Attributes

SoSFFloat autoScaleResult
 result of autoscale calculation and used by childdraggers. Don't use. More...
 
SoSFFloat draggerSize
 Overall scale of dragger node. More...
 
SoIdleSensor idleSensor
 might be overkill, but want to make sure of performance. More...
 
SoSFRotation rotation
 initial rotation and reflects single precision movement. More...
 
SoSFDouble rotationIncrement
 radians set from outside and used for rounding. More...
 
SoSFInt32 rotationIncrementCountX
 used from outside for rotation x steps. More...
 
SoSFInt32 rotationIncrementCountY
 used from outside for rotation y steps. More...
 
SoSFInt32 rotationIncrementCountZ
 used from outside for rotation z steps. More...
 
SoSFVec3f translation
 initial translation and reflects single precision movement. More...
 
SoSFDouble translationIncrement
 set from outside used for rounding. More...
 
SoSFInt32 translationIncrementCountX
 used from outside for translation x steps. More...
 
SoSFInt32 translationIncrementCountY
 used from outside for translation y steps. More...
 
SoSFInt32 translationIncrementCountZ
 used from outside for translation z steps. More...
 

Visibility Functions

SoFieldSensor translationSensor
 
SoFieldSensor rotationSensor
 
SoFieldSensor cameraSensor
 
void showTranslationX ()
 show the x translation dragger. More...
 
void showTranslationY ()
 show the y translation dragger. More...
 
void showTranslationZ ()
 show the z translation dragger. More...
 
void hideTranslationX ()
 hide the x translation dragger. More...
 
void hideTranslationY ()
 hide the y translation dragger. More...
 
void hideTranslationZ ()
 hide the z translation dragger. More...
 
void showRotationX ()
 show the x rotation dragger. More...
 
void showRotationY ()
 show the y rotation dragger. More...
 
void showRotationZ ()
 show the z rotation dragger. More...
 
void hideRotationX ()
 hide the x rotation dragger. More...
 
void hideRotationY ()
 hide the y rotation dragger. More...
 
void hideRotationZ ()
 hide the z rotation dragger. More...
 
bool isShownTranslationX ()
 is x translation dragger shown. More...
 
bool isShownTranslationY ()
 is y translation dragger shown. More...
 
bool isShownTranslationZ ()
 is z translation dragger shown. More...
 
bool isShownRotationX ()
 is x rotation dragger shown. More...
 
bool isShownRotationY ()
 is x rotation dragger shown. More...
 
bool isShownRotationZ ()
 is x rotation dragger shown. More...
 
bool isHiddenTranslationX ()
 is x translation dragger hidden. More...
 
bool isHiddenTranslationY ()
 is y translation dragger hidden. More...
 
bool isHiddenTranslationZ ()
 is z translation dragger hidden. More...
 
bool isHiddenRotationX ()
 is x rotation dragger hidden. More...
 
bool isHiddenRotationY ()
 is x rotation dragger hidden. More...
 
bool isHiddenRotationZ ()
 is x rotation dragger hidden. More...
 
virtual void GLRender (SoGLRenderAction *action) override
 
virtual SbBool setUpConnections (SbBool onoff, SbBool doitalways=FALSE) override
 
virtual void handleEvent (SoHandleEventAction *action) override
 
static void translationSensorCB (void *f, SoSensor *)
 
static void rotationSensorCB (void *f, SoSensor *)
 
static void valueChangedCB (void *, SoDragger *d)
 
static void cameraCB (void *data, SoSensor *)
 
static void idleCB (void *data, SoSensor *)
 scheduled from cameraCB to auto scale dragger. More...
 
static void finishDragCB (void *data, SoDragger *)
 

Detailed Description

Coordinate System Dragger.

used to transform objects in 3d space. Set initial: translation, rotation, translationIncrement and rotationIncrement. Use IncrementCount multiplied with *Increment for full double precision output.

Dragger can be displayed in 2 modes: static scale and auto scale. For static you can set the field scale and you are done. For autoscale you set the field scale & call setupAutoScale with the viewer camera.

See also
setUpAutoScale
scale.

Constructor & Destructor Documentation

◆ SoFCCSysDragger()

◆ ~SoFCCSysDragger()

SoFCCSysDragger::~SoFCCSysDragger ( )

Member Function Documentation

◆ cameraCB()

void SoFCCSysDragger::cameraCB ( void *  data,
SoSensor *   
)
staticprotected

References idleSensor.

Referenced by finishDragCB(), setUpAutoScale(), and SoFCCSysDragger().

◆ clearIncrementCounts()

void SoFCCSysDragger::clearIncrementCounts ( )

◆ finishDragCB()

void SoFCCSysDragger::finishDragCB ( void *  data,
SoDragger  
)
staticprotected

References cameraCB(), and cameraSensor.

Referenced by SoFCCSysDragger().

◆ GLRender()

void SoFCCSysDragger::GLRender ( SoGLRenderAction action)
overridevirtual

◆ handleEvent()

void SoFCCSysDragger::handleEvent ( SoHandleEventAction *  action)
overrideprotectedvirtual

◆ hideRotationX()

void SoFCCSysDragger::hideRotationX ( )

hide the x rotation dragger.

◆ hideRotationY()

void SoFCCSysDragger::hideRotationY ( )

hide the y rotation dragger.

◆ hideRotationZ()

void SoFCCSysDragger::hideRotationZ ( )

hide the z rotation dragger.

◆ hideTranslationX()

void SoFCCSysDragger::hideTranslationX ( )

hide the x translation dragger.

◆ hideTranslationY()

void SoFCCSysDragger::hideTranslationY ( )

hide the y translation dragger.

◆ hideTranslationZ()

void SoFCCSysDragger::hideTranslationZ ( )

hide the z translation dragger.

◆ idleCB()

void SoFCCSysDragger::idleCB ( void *  data,
SoSensor *   
)
staticprotected

scheduled from cameraCB to auto scale dragger.

References autoScaleResult, cameraSensor, and draggerSize.

Referenced by SoFCCSysDragger().

◆ initClass()

void SoFCCSysDragger::initClass ( void  )
static

◆ isHiddenRotationX()

bool SoFCCSysDragger::isHiddenRotationX ( )

is x rotation dragger hidden.

◆ isHiddenRotationY()

bool SoFCCSysDragger::isHiddenRotationY ( )

is x rotation dragger hidden.

◆ isHiddenRotationZ()

bool SoFCCSysDragger::isHiddenRotationZ ( )

is x rotation dragger hidden.

◆ isHiddenTranslationX()

bool SoFCCSysDragger::isHiddenTranslationX ( )

is x translation dragger hidden.

◆ isHiddenTranslationY()

bool SoFCCSysDragger::isHiddenTranslationY ( )

is y translation dragger hidden.

◆ isHiddenTranslationZ()

bool SoFCCSysDragger::isHiddenTranslationZ ( )

is z translation dragger hidden.

◆ isShownRotationX()

bool SoFCCSysDragger::isShownRotationX ( )

is x rotation dragger shown.

◆ isShownRotationY()

bool SoFCCSysDragger::isShownRotationY ( )

is x rotation dragger shown.

◆ isShownRotationZ()

bool SoFCCSysDragger::isShownRotationZ ( )

is x rotation dragger shown.

◆ isShownTranslationX()

bool SoFCCSysDragger::isShownTranslationX ( )

is x translation dragger shown.

◆ isShownTranslationY()

bool SoFCCSysDragger::isShownTranslationY ( )

is y translation dragger shown.

◆ isShownTranslationZ()

bool SoFCCSysDragger::isShownTranslationZ ( )

is z translation dragger shown.

◆ rotationSensorCB()

void SoFCCSysDragger::rotationSensorCB ( void *  f,
SoSensor *   
)
staticprotected

◆ setUpAutoScale()

void SoFCCSysDragger::setUpAutoScale ( SoCamera *  cameraIn)

used to setup the auto scaling of dragger.

References autoScaleResult, cameraCB(), cameraSensor, and draggerSize.

Referenced by Gui::ViewProviderDragger::setEditViewer(), and Gui::ViewProviderLink::setEditViewer().

◆ setUpConnections()

SbBool SoFCCSysDragger::setUpConnections ( SbBool  onoff,
SbBool  doitalways = FALSE 
)
overrideprotectedvirtual

◆ showRotationX()

void SoFCCSysDragger::showRotationX ( )

show the x rotation dragger.

◆ showRotationY()

void SoFCCSysDragger::showRotationY ( )

show the y rotation dragger.

◆ showRotationZ()

void SoFCCSysDragger::showRotationZ ( )

show the z rotation dragger.

◆ showTranslationX()

void SoFCCSysDragger::showTranslationX ( )

show the x translation dragger.

◆ showTranslationY()

void SoFCCSysDragger::showTranslationY ( )

show the y translation dragger.

◆ showTranslationZ()

void SoFCCSysDragger::showTranslationZ ( )

show the z translation dragger.

◆ translationSensorCB()

void SoFCCSysDragger::translationSensorCB ( void *  f,
SoSensor *   
)
staticprotected

◆ valueChangedCB()

void SoFCCSysDragger::valueChangedCB ( void *  ,
SoDragger d 
)
staticprotected

Member Data Documentation

◆ autoScaleResult

SoSFFloat Gui::SoFCCSysDragger::autoScaleResult

result of autoscale calculation and used by childdraggers. Don't use.

Referenced by idleCB(), setUpAutoScale(), and SoFCCSysDragger().

◆ cameraSensor

SoFieldSensor Gui::SoFCCSysDragger::cameraSensor
protected

◆ draggerSize

SoSFFloat Gui::SoFCCSysDragger::draggerSize

Overall scale of dragger node.

When using autoscale mode, this represents normalized device coordinates (0.0 to 1.0). A value of 0.05 is a good place to start. When NOT using autoscale mode, scale represents a traditional scale and a value of 1.0 is a good place to start.

Referenced by idleCB(), Gui::ViewProviderDragger::setEdit(), Gui::ViewProviderLink::setEditViewer(), setUpAutoScale(), and SoFCCSysDragger().

◆ idleSensor

SoIdleSensor Gui::SoFCCSysDragger::idleSensor

might be overkill, but want to make sure of performance.

Referenced by cameraCB(), and SoFCCSysDragger().

◆ rotation

◆ rotationIncrement

SoSFDouble Gui::SoFCCSysDragger::rotationIncrement

radians set from outside and used for rounding.

Referenced by SoFCCSysDragger().

◆ rotationIncrementCountX

SoSFInt32 Gui::SoFCCSysDragger::rotationIncrementCountX

used from outside for rotation x steps.

Referenced by clearIncrementCounts(), and SoFCCSysDragger().

◆ rotationIncrementCountY

SoSFInt32 Gui::SoFCCSysDragger::rotationIncrementCountY

used from outside for rotation y steps.

Referenced by clearIncrementCounts(), and SoFCCSysDragger().

◆ rotationIncrementCountZ

SoSFInt32 Gui::SoFCCSysDragger::rotationIncrementCountZ

used from outside for rotation z steps.

Referenced by clearIncrementCounts(), and SoFCCSysDragger().

◆ rotationSensor

SoFieldSensor Gui::SoFCCSysDragger::rotationSensor
protected

◆ translation

◆ translationIncrement

SoSFDouble Gui::SoFCCSysDragger::translationIncrement

set from outside used for rounding.

Referenced by SoFCCSysDragger().

◆ translationIncrementCountX

SoSFInt32 Gui::SoFCCSysDragger::translationIncrementCountX

used from outside for translation x steps.

Referenced by clearIncrementCounts(), and SoFCCSysDragger().

◆ translationIncrementCountY

SoSFInt32 Gui::SoFCCSysDragger::translationIncrementCountY

used from outside for translation y steps.

Referenced by clearIncrementCounts(), and SoFCCSysDragger().

◆ translationIncrementCountZ

SoSFInt32 Gui::SoFCCSysDragger::translationIncrementCountZ

used from outside for translation z steps.

Referenced by clearIncrementCounts(), and SoFCCSysDragger().

◆ translationSensor

SoFieldSensor Gui::SoFCCSysDragger::translationSensor
protected

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