FreeCAD C++
|
#include <Gui/SoFCCSysDragger.h>
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.
Public Member Functions | |
void | clearIncrementCounts () |
used to reset after drag update. | |
void | setUpAutoScale (SoCamera *cameraIn) |
used to setup the auto scaling of dragger. | |
Visibility Functions | |
void | showTranslationX () |
show the x translation dragger. | |
void | showTranslationY () |
show the y translation dragger. | |
void | showTranslationZ () |
show the z translation dragger. | |
void | hideTranslationX () |
hide the x translation dragger. | |
void | hideTranslationY () |
hide the y translation dragger. | |
void | hideTranslationZ () |
hide the z translation dragger. | |
void | showRotationX () |
show the x rotation dragger. | |
void | showRotationY () |
show the y rotation dragger. | |
void | showRotationZ () |
show the z rotation dragger. | |
void | hideRotationX () |
hide the x rotation dragger. | |
void | hideRotationY () |
hide the y rotation dragger. | |
void | hideRotationZ () |
hide the z rotation dragger. | |
bool | isShownTranslationX () |
is x translation dragger shown. | |
bool | isShownTranslationY () |
is y translation dragger shown. | |
bool | isShownTranslationZ () |
is z translation dragger shown. | |
bool | isShownRotationX () |
is x rotation dragger shown. | |
bool | isShownRotationY () |
is x rotation dragger shown. | |
bool | isShownRotationZ () |
is x rotation dragger shown. | |
bool | isHiddenTranslationX () |
is x translation dragger hidden. | |
bool | isHiddenTranslationY () |
is y translation dragger hidden. | |
bool | isHiddenTranslationZ () |
is z translation dragger hidden. | |
bool | isHiddenRotationX () |
is x rotation dragger hidden. | |
bool | isHiddenRotationY () |
is x rotation dragger hidden. | |
bool | isHiddenRotationZ () |
is x rotation dragger hidden. | |
Public Attributes | |
SoSFVec3f | translation |
initial translation and reflects single precision movement. | |
SoSFDouble | translationIncrement |
set from outside used for rounding. | |
SoSFInt32 | translationIncrementCountX |
used from outside for translation x steps. | |
SoSFInt32 | translationIncrementCountY |
used from outside for translation y steps. | |
SoSFInt32 | translationIncrementCountZ |
used from outside for translation z steps. | |
SoSFRotation | rotation |
initial rotation and reflects single precision movement. | |
SoSFDouble | rotationIncrement |
radians set from outside and used for rounding. | |
SoSFInt32 | rotationIncrementCountX |
used from outside for rotation x steps. | |
SoSFInt32 | rotationIncrementCountY |
used from outside for rotation y steps. | |
SoSFInt32 | rotationIncrementCountZ |
used from outside for rotation z steps. | |
SoSFFloat | draggerSize |
Overall scale of dragger node. More... | |
SoSFFloat | autoScaleResult |
result of autoscale calculation and used by childdraggers. Don't use. | |
SoIdleSensor | idleSensor |
might be overkill, but want to make sure of performance. | |
Static Protected Member Functions | |
static void | idleCB (void *data, SoSensor *) |
scheduled from cameraCB to auto scale dragger. | |
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.