Directional icon you rotate and translate by dragging with the mouse. More...
#include <Inventor/draggers/SoDirectionalLightDragger.h>
Public Member Functions | |
virtual SoType | getTypeId () const |
virtual const SoNodekitCatalog * | getNodekitCatalog () const |
SoDirectionalLightDragger () | |
Static Public Member Functions | |
static SoType | getClassTypeId () |
static const SoNodekitCatalog * | getClassNodekitCatalog () |
Public Attributes | |
SoSFRotation | rotation |
SoSFVec3f | translation |
Directional icon you rotate and translate by dragging with the mouse.
SoDirectionalLightDragger is a composite dragger. It looks like a sun with a large arrow coming out of it. The arrow can be rotated about the sun by dragging with the mouse; its orientation is given by the rotation field. You can also drag the sun (and the arrow with it) through 3-space. The location is stored in the translation field.
The dragger uses an SoRotateSphericalDragger for changing the rotation. Instead of using the default spherical geometry, this dragger uses an arrow shape.
The sun is an SoDragPointDragger. Dragging it edits the translation field; conversely, if you change the translation field the sun will move to that new location, bringing the arrow with it. The sun looks and behaves just like the sun in an SoPointLightDragger, as does the material part. See the SoPointLightDragger reference page for details.
Remember: This is not a light source! It just looks like one. If you want to move a light with this dragger, you can either:
You can change the parts in any instance of this dragger using setPart(). The default part geometries are defined as resources for this SoDirectionalLightDragger class. They are detailed in the Dragger Resources section of the online reference page for this class. You can make your program use different default resources for the parts by copying the file $OIVHOME/data/draggerDefaults/directionalLightDragger.iv into your own directory, editing the file, and then setting the environment variable SO_DRAGGER_DIR to be a path to that directory.
See SoDragger for more information about using and customizing draggers, including code examples, using draggers in an immersive VR environment and using WYSIWYG draggers.
boundingBoxCaching | AUTO |
renderCulling | AUTO |
pickCulling | AUTO |
isActive | FALSE |
translation | 0 0 0 |
rotation | 0 0 1 0 |
callbackList | NULL |
material | <directionalLightOverallMaterial resource> |
translatorRotInv | NULL |
translator | DragPointDragger { |
} | |
rotator | RotateSphericalDragger { |
} | |
rotator.rotator | <directionalLightRotatorRotator resource> |
rotator.rotatorActive | <directionalLightRotatorRotatorActive resource> |
rotator.feedback | <directionalLightRotatorFeedback resource> |
rotator.feedbackActive | <directionalLightRotatorFeedbackActive resource> |
translator.yzTranslator.translator | <directionalLightTranslatorPlaneTranslator resource> |
translator.xzTranslator.translator | <directionalLightTranslatorPlaneTranslator resource> |
translator.xyTranslator.translator | <directionalLightTranslatorPlaneTranslator resource> |
translator.yzTranslator.translatorActive | <directionalLightTranslatorPlaneTranslatorActive resource> |
translator.xzTranslator.translatorActive | <directionalLightTranslatorPlaneTranslatorActive resource> |
translator.xyTranslator.translatorActive | <directionalLightTranslatorPlaneTranslatorActive resource> |
translator.xTranslator.translator | <directionalLightTranslatorLineTranslator resource> |
translator.yTranslator.translator | <directionalLightTranslatorLineTranslator resource> |
translator.zTranslator.translator | <directionalLightTranslatorLineTranslator resource> |
translator.xTranslator.translatorActive | <directionalLightTranslatorLineTranslatorActive resource> |
translator.yTranslator.translatorActive | <directionalLightTranslatorLineTranslatorActive resource> |
translator.zTranslator.translatorActive | <directionalLightTranslatorLineTranslatorActive resource> |
Resource: | directionalLightRotatorRotator |
Part: | rotator.rotator |
Appearance: | white arrow that goes through the sun |
Description: | picking this begins rotation of the arrow about the sun-shape |
Resource: | directionalLightRotatorRotatorActive |
Part: | rotator.rotatorActive |
Appearance: | yellow arrow that goes through the sun |
Description: | displayed while the arrow is being rotated |
Resource: | directionalLightRotatorFeedback |
Part: | rotator.feedback |
Appearance: | empty Separator |
Description: | this disables display of the axes that a rotateSpherical dragger uses by default |
Resource: | directionalLightRotatorFeedbackActive |
Part: | rotator.feedbackActive |
Appearance: | empty Separator |
Description: | this disables display of the axes that a rotateSpherical dragger uses by default |
Resource: | directionalLightOverallMaterial |
Part: | material |
Appearance: | white. half strength emissive, half strength diffuse |
Description: | sets material for the sun shape when stationary. Resource for the moving sun, directionalLightTranslatorPlaneTranslatorActive, contains a yellow material for highlighting. |
Resource: | directionalLightTranslatorPlaneTranslator |
Parts: | translator.yzTranslator.translator<BR> translator.xzTranslator.translator<BR> translator.xyTranslator.translator |
Appearance: | sun shape with no material |
Description: | picking these parts initiates dragging by the yz, xz, and xy planar draggers respectively. |
Resource: | directionalLightTranslatorPlaneTranslatorActive |
Parts: | translator.yzTranslator.translatorActive<BR> translator.xzTranslator.translatorActive<BR> translator.xyTranslator.translatorActive |
Appearance: | yellow sun shape |
Description: | shown during planar dragging in the yz, xz, and xy planes respectively. |
Resource: | directionalLightTranslatorLineTranslator |
Parts: | translator.xTranslator.translator<BR> translator.yTranslator.translator<BR> translator.zTranslator.translator |
Appearance: | white cylinder |
Description: | picking these parts initiates dragging in the x, y, and z linear draggers respectively. |
Resource: | directionalLightTranslatorLineTranslatorActive |
Parts: | translator.xTranslator.translatorActive<BR> translator.yTranslator.translatorActive<BR> translator.zTranslator.translatorActive |
Appearance: | yellow cylinder |
Description: | shown during linear dragging in the x, y, and z directions respectively. |
Part Name | Part Type | Default Type | NULL Default |
callbackList | NodeKitListPart | -- | yes |
material | Material | -- | yes |
translatorRotInv | Rotation | -- | yes |
translator | DragPointDragger | -- | yes |
rotator | RotateSphericalDragger | -- | yes |
Extra Information for List Parts from Above Table
Part Name | Container Type | Possible Types |
callbackList | Separator | Callback; EventCallback |
SoInteractionKit, SoDragger, SoCenterballDragger, SoDragPointDragger, SoHandleBoxDragger, SoJackDragger, SoPointLightDragger, SoRotateCylindricalDragger, SoRotateDiscDragger, SoRotateSphericalDragger, SoScale1Dragger, SoScale2Dragger, SoScale2UniformDragger, SoScaleUniformDragger, SoSpotLightDragger, SoTabBoxDragger, SoTabPlaneDragger, SoTrackballDragger, SoTransformBoxDragger, SoTransformerDragger, SoTranslate1Dragger, SoTranslate2Dragger
SoDirectionalLightDragger::SoDirectionalLightDragger | ( | ) |
Constructor.
static const SoNodekitCatalog* SoDirectionalLightDragger::getClassNodekitCatalog | ( | ) | [static] |
Returns the SoNodekitCatalog for this class.
Reimplemented from SoDragger.
static SoType SoDirectionalLightDragger::getClassTypeId | ( | ) | [static] |
Returns the type identifier for this class.
Reimplemented from SoDragger.
virtual const SoNodekitCatalog* SoDirectionalLightDragger::getNodekitCatalog | ( | ) | const [virtual] |
Returns the SoNodekitCatalog for this instance.
Reimplemented from SoDragger.
virtual SoType SoDirectionalLightDragger::getTypeId | ( | ) | const [virtual] |
Returns the type identifier for this specific instance.
Reimplemented from SoDragger.
Orientation of the rotating part (an arrow by default).
Position of the origin of the directional light dragger.