MeVisLab Toolbox Reference
|
#include <SoView2DLabel.h>
Public Types | |
enum | depthVisibilityType { DEPTH_IN_SLICES , DEPTH_IN_MM } |
Depth visibility mode. More... | |
enum | FontSizeMode { FONT_SIZE_IN_PIXELS , FONT_SIZE_IN_MM , FONT_SIZE_IN_VOXELS } |
Font size mode. More... | |
enum | BorderMode { SHOW_BORDER_OFF , SHOW_BORDER_WHEN_HIGHLIGHTED , SHOW_BORDER_ALWAYS } |
Border mode. More... | |
![]() | |
enum | Sign { ZERO , NEGATIVE , POSITIVE } |
defines the sign of a number, with zero as an extra value More... | |
![]() | |
typedef SoInteractionProvider *(* | GetProviderFunc) (SoNode *) |
Public Member Functions | |
SoView2DLabel () | |
Constructor. More... | |
~SoView2DLabel () override | |
void | draw (View2DSliceList *dsl, View2DSlice *dslice, int slice) override |
draw annotations on slice More... | |
float | getDepthVisibilityBlendValue (float distance, float voxelSizeZ) |
![]() | |
SoView2DInteractionExtension (const std::string &actionID, bool positionSensitive=true) | |
SoView2DInteractionExtension () | |
Constructor. More... | |
bool | implementsManagedInteractionAndClassicEventHandling () const override |
this node is a hybrid module providing managed interaction and classic event handling More... | |
![]() | |
SoView2DExtension () | |
Constructor. More... | |
void | init () |
setup internal state More... | |
virtual void | updateValues () |
Update fields to local variables, may be reimplemented if you want to update additional local vars. More... | |
virtual bool | evalEvent (SoView2D *view2d, View2DSliceList *slicelist, View2DEvent *ec, View2DEventPhase phase) |
Called by the SoView2D for each event that happens on the viewer. More... | |
virtual void | startDrawing (View2DSliceList *) |
virtual void | endDrawing (View2DSliceList *) |
virtual void | overwriteDrawingSettings (SoView2DDrawingSettings &) |
View2DEvent * | getEvent () |
get the current event (when inside of evalEvent) More... | |
float | getSelectDist () |
Set the distance tolerance on hit checking in pixels. More... | |
bool | isPointInsideDeviceRect (float pointX, float pointY, float centerX, float centerY, float hitRectangleSize=0.0) |
returns whether the given point is inside a rectangle around the given center. More... | |
void | drawMiniRect (float xp, float yp, float ext, float lineWidth=1.f) |
Draws a small rectangle with given half side length and a line width. More... | |
void | drawDashedMiniRect (float xp, float yp, float ext, float lineWidth) |
void | drawFilledMiniRect (float xp, float yp, float ext, float lineWidth=1.f) |
Draws a small filled rectangle with given half side length. More... | |
void | drawMiniTriangle (float xp, float yp, float ext, float lineWidth=1.f) |
Draws a small triangle with given center point, half height and line width. More... | |
void | drawFilledMiniTriangle (float xp, float yp, float ext, float lineWidth=1.f) |
Draws a small filled triangle with given center point and half height. More... | |
void | drawMiniCircle (float xp, float yp, float ext, float lineWidth=1.f) |
Draws a small circle with given center point and radius. More... | |
void | drawFilledMiniCircle (float xp, float yp, float ext, float lineWidth=1.f) |
Draws a small filled circle with given center point and radius. More... | |
void | drawFixedSizeMiniCircleAt (float xp, float yp) |
Draws a fixed size small circle at the given position. More... | |
void | drawVoxelBorder (View2DSlice *slice, float vx, float vy, float vz) |
surround the given voxel with a border More... | |
int | getX () |
get the x device position of current event, only returns valid result when called inside of evalEvent() More... | |
int | getY () |
get the y device position of current event, only returns valid result when called inside of evalEvent() More... | |
virtual bool | isDrawingOn () |
check if drawing is on More... | |
virtual bool | isEditingOn () |
check if editing is on More... | |
virtual bool | isFixZOn () |
check if z should stay fixed More... | |
virtual bool | isClipToSlice () |
check if the image is clipped to slice More... | |
virtual void | fieldChanged (SoSensor *sensor) |
handle if any field has changed More... | |
bool | isCreateNewMode () |
check if extension is in createNewMode More... | |
void | setCreateNewMode (bool flag) |
set this extension to create new objects More... | |
bool | isCreateNewModeRequest () |
check if extension has a request for createNewMode More... | |
void | setCreateNewModeRequest (bool flag) |
set that extension want to become createNewMode More... | |
virtual bool | isActive () |
returns if the extension is active (derive this method in child) (in createNewMode or with a selected object)(called by SoView2D) More... | |
virtual void | deleteSelectedObject () |
deletes the currently active object (derive this method in child) (called by SoView2D) More... | |
virtual void | getStatusString (SbString &status) |
get the current status of this extension More... | |
virtual bool | evaluateEvent (SoView2D *view2d, View2DEvent *ec) |
virtual bool | ignoreEvent (View2DEvent *ec) |
Return true if ec has been handled before and if ignoreHandledEvents is True. More... | |
bool | wantsMouseOverUpdates () const |
public access to _wantsMouseOverUpdateEvents More... | |
virtual void | consumeEvent (View2DEvent *ec, bool handled=TRUE) |
Set handled-flag of ec to true (= consumed) if handled is True and setEventHandled is True. More... | |
int | getSelectedModifierMask () |
Get compare and ignore mask for the currently selected button/modifier combination, usable with SoPointingAction. More... | |
int | getSelectedIgnoreMask () |
SoPointingAction::Trigger | getPointingActionTriggerFromFields () |
Get the trigger that matches the button/modifier field state. More... | |
![]() | |
SoInteractionProviderNode () | |
Default constructor. More... | |
~SoInteractionProviderNode () override | |
Destructor. More... | |
std::string | getID () const override |
Returns the ID string for identifying the provider and its actions. More... | |
void | objRef () override |
Memory management by reference counting; must be implemented in derived classes. More... | |
void | objUnref () override |
![]() | |
SoInteractionOwner () | |
Default constructor. More... | |
~SoInteractionOwner () override | |
The destructor will destroy all interactions created with this object as owner. More... | |
std::list< SoInteraction * > | getInteractions (SoState *state) override |
Returns the list of all interactions of this provider. More... | |
void | addListener (SoInteractionOwnerListenerInterface *listener) |
Adds a listener object that is notified of changes in the interaction list. More... | |
void | removeListener (SoInteractionOwnerListenerInterface *listener) |
Removes a listener object that was notified of changes in the interaction list. More... | |
![]() | |
SoInteractionProvider () | |
Default constructor. More... | |
virtual | ~SoInteractionProvider () |
template<class T > | |
std::list< T * > | getInteractionsOfType (SoState *state) |
Returns list of interactions of a specific type. More... | |
virtual std::list< SoCommandAction * > | getCommandActions (SoState *state) |
virtual std::list< SoPointingAction * > | getPointingActions (SoState *state) |
virtual std::list< SoOffsetAction * > | getOffsetActions (SoState *state) |
Static Public Member Functions | |
static void | initClass () |
inventor runtime type system More... | |
![]() | |
static void | initClass () |
Initializes this class. More... | |
![]() | |
static void | initClass () |
Initializes this class. More... | |
static float | snapToPixelCenter (float coordinateComponent) |
Snaps the coordinate component to the pixel center. More... | |
static void | fieldChangedCB (void *data, SoSensor *sensor) |
inventor callbacks if any field has changed, calls fieldChanged More... | |
static bool | isImageParallel (SoSFMLImage *image, View2DSliceList *dsl) |
Return true if image is parallel to the image of the slice list up to slice thickness. More... | |
static void | enableLineStippling (const SoSFEnum &lineStyleField) |
Set/reset stippling pattern. More... | |
static void | disableLineStippling (const SoSFEnum &lineStyleField) |
static void | getAxisOrientation (int axis, SbMatrix &matrix, char &negativeResult, char &positiveResult) |
Geometry helpers. More... | |
static float | pointToLineDistance (SbVec3f point, SbVec3f line1, SbVec3f line2) |
calculate 3D point to line distance More... | |
static float | pointToLineDistance (SbVec2f point, SbVec2f line1, SbVec2f line2) |
calculate 2D point to line distance More... | |
static Sign | edgeIntersectWithPlane (const SbVec3f &v1, const SbVec3f &v2, const SbPlane &plane, SbVec3f &intersect) |
intersect given edge from v1 to v2 with given plane, returns sign and intersect point More... | |
![]() | |
static void | initClass () |
Initializes this class. More... | |
![]() | |
static void | registerInteractionProviderNode (SoType type, GetProviderFunc func) |
Registers a function to obtain a SoInteractionProvider from a SoNode. More... | |
static SoInteractionProvider * | getInteractionProvider (SoNode *node) |
Returns a SoInteractionProvider from a SoNode if registered, else NULL. More... | |
Public Attributes | |
SoSFString | text |
Fields. More... | |
SoSFString | viewerId |
SoSFEnum | textPositioning |
SoSFVec3f | worldPosition |
SoSFVec2f | relativeViewerPosition |
SoSFEnum | verticalPosition |
SoSFFloat | verticalOffset |
SoSFEnum | horizontalPosition |
SoSFFloat | horizontalOffset |
SoSFInt32 | fontSize |
SoSFEnum | fontSizeMode |
SoSFFloat | alpha |
SoSFBool | textShadow |
SoSFBool | highlighted |
Set to true while the label should be highlighted, usually draws a border around the label. More... | |
SoSFTypedEnum< BorderMode > | borderMode |
Defines the border mode. More... | |
SoSFColor | borderColor |
SoSFFloat | depthVisibility |
defines up to which distance markers are visible value is either in slices or in mm depending on the depthVisibilityMode field More... | |
SoSFEnum | depthVisibilityMode |
select the mode for depth visibility More... | |
SoSFBool | useDepthVisibility |
enables depth visibility More... | |
SoSFBool | keepLabelInViewer |
SoSFFloat | depthMinimumAlpha |
SoSFInt32 | timePoint |
SoSFBool | showLabelOnAllTimePoints |
SoSFBool | drawBackground |
SoSFColor | backgroundColor |
SoSFFloat | backgroundAlpha |
SoSFFloat | backgroundMarginTop |
SoSFFloat | backgroundMarginRight |
SoSFFloat | backgroundMarginBottom |
SoSFFloat | backgroundMarginLeft |
SoSFBool | isUnderMouse |
SoSFBool | keepCursorPositionInViewerWhenMoving |
![]() | |
SoSFTrigger | singleClicked |
this is triggered when the user clicks without moving the mouse (this only is supported when using Managed Interaction) More... | |
SoSFTrigger | doubleClicked |
the same for the second click in a row More... | |
![]() | |
SoSFColor | color |
color that should be used for drawing More... | |
SoSFBool | drawingOn |
flag if the extension should draw, needs to be checked inside of the draw() method More... | |
SoSFBool | editingOn |
flag if the extension should edit objects on mouse events, needs to be checked inside of the evalEvent() method More... | |
SoSFBool | maskValid |
flag if the event mask is valid. More... | |
SoSFFloat | selectionTolerance |
the selection tolerance in pixels More... | |
SoSFBool | wantsAllEvents |
flag if ALL events should be passed to evalEvent(), if disabled, events are only passed to evalEvent when the mouse mask gets valid More... | |
SoSFBool | wantsKeyEvents |
flag if keyboard events should be passed to evalEvent() More... | |
SoSFBool | wantsMouseWheelEvents |
flag if MouseWheel events should be passed to evalEvent() More... | |
SoSFBool | setEventHandled |
Set event handled if it is indeed handled by this extension. More... | |
SoSFBool | ignoreHandledEvents |
Ignore events, that have been handled by previous extensions. More... | |
SoSFEnum | button1 |
mouse mask for button1 More... | |
SoSFEnum | button2 |
mouse mask for button2 More... | |
SoSFEnum | button3 |
mouse mask for button3 More... | |
SoSFEnum | shift |
shift modifier for mouse mask More... | |
SoSFEnum | control |
shift control for mouse mask More... | |
SoSFEnum | alt |
shift alt for mouse mask More... | |
SoSFBool | needsValidVoxel |
sets if a valid voxel must be hit to get evalEvent() calls More... | |
SoSFBool | renderOnSlab |
defines if the extension should be rendered on all slab slices More... | |
SoSFBool | createNewMode |
flag if extension is in createNewMode More... | |
SoSFTrigger | createNewModeRequest |
SoSFBool | clipToSlice |
Flag to clip drawing to slice. More... | |
SoSFEnum | cursorShape |
Set cursor shape if the mouse mask fits and mouseEvents are effectively sent to evalEvent for editing. More... | |
SoSFBool | fixZOn |
DEPRECATED flag that indicates that the extension should fix the z value, only used in SoView2DRectangle. More... | |
![]() | |
SoSFString | instanceName |
Defines interface field to store the instance name. More... | |
SoSFString | interactionProviderID |
This field overrides the instanceName as providerID if specified. More... | |
Protected Member Functions | |
bool | getTextLocation (View2DSliceList *dsl, View2DSlice *dslice, int slice, float &alphaToUse, float &dx, float &dy, int &textWidth, int &textHeight) |
bool | implementsManagedInteractionAndClassicEventHandling () const override |
return true if this node is a hybrid module providing managed interaction and classic event handling - in this case SoView2D::useManagedInteraction decides which one to use More... | |
bool | isSensitiveAt (const SoPointerPosition &pos) override |
interface forwarded from SoPointingAction: More... | |
void | setHighlightAt (const SoPointerPosition &pos) override |
void | unsetHighlight () override |
void | startPressAt (const SoPointerPosition &pos) override |
void | dragMoveTo (const SoPointerPosition &pos) override |
void | pointerPosition (SoState *state, const SoPointerPosition &pos) override |
Update isUnderMouse. More... | |
void | pointerLeftWindow (SoState *state) override |
Same as below, with additional SoState argument. By defaults, simply calls the below version. More... | |
![]() | |
~SoView2DInteractionExtension () override | |
destructor More... | |
bool | isValidLocation (const SoPointerPosition &pos) |
return true if the position is inside the image or needsValidVoxel is not set More... | |
virtual bool | shouldPointingActionBeEnabled () |
void | editingOnChanged (SoField *field) override |
called when editingOn field is touched: More... | |
void | buttonMaskChanged (SoField *field) override |
called when one of the button/modifier fields is touched: More... | |
virtual int | getCurrentCursor (SoViewerProxy *viewerProxy) |
interface forwarded from SoPointingAction: More... | |
virtual SoPointingAction * | endPress (int) |
virtual int | getNumInteractionModes () const |
virtual void | setInteractionMode (int) |
![]() | |
virtual void | createNewModeRequestTriggered (SoField *) |
called when createNewModeRequest field ist touched: More... | |
~SoView2DExtension () override | |
destructor More... | |
void | GLRender (SoGLRenderAction *action) override |
Inventor actions. More... | |
void | callback (SoCallbackAction *action) override |
void | handleEvent (SoHandleEventAction *action) override |
void | getMatrix (SoGetMatrixAction *action) override |
void | getBoundingBox (SoGetBoundingBoxAction *action) override |
void | pick (SoPickAction *action) override |
void | doAction (SoAction *action) override |
![]() | |
virtual void | pointerPosition (const SoPointerPosition &) |
Override this if you always need to be informed of the current mouse cursor position. More... | |
virtual void | pointerLeftWindow () |
This is called when the mouse cursor leaves the window. More... | |
bool | hasInteractions () const |
Returns whether there are any actions defined by this owner. More... | |
template<class T > | |
bool | hasInteractionsOfType () const |
Same as above, but asking for a specific type of interaction. More... | |
void | addPointingAction (SoPointingAction *) |
void | addCommandAction (SoCommandAction *) |
void | addOffsetAction (SoOffsetAction *) |
Additional Inherited Members | |
![]() | |
SoPointingAction * | _pointingAction |
![]() | |
SoNodeSensor * | _nodeSensor |
node sensor that is used to notice field changes More... | |
float | _rgbColor [4] |
Color of the object, update on each field change by _nodeSensor. More... | |
bool | _wantsMouseOverUpdateEvents |
set this flag to receive mouse over events while the extension is active More... | |
Definition at line 53 of file SoView2DLabel.h.
Border mode.
Enumerator | |
---|---|
SHOW_BORDER_OFF | |
SHOW_BORDER_WHEN_HIGHLIGHTED | |
SHOW_BORDER_ALWAYS |
Definition at line 80 of file SoView2DLabel.h.
Depth visibility mode.
Enumerator | |
---|---|
DEPTH_IN_SLICES | The depth visibility in number of slices. |
DEPTH_IN_MM | The depth visibility in mm. |
Definition at line 60 of file SoView2DLabel.h.
Font size mode.
Enumerator | |
---|---|
FONT_SIZE_IN_PIXELS | Font size in pixels. |
FONT_SIZE_IN_MM | Font size in mm. |
FONT_SIZE_IN_VOXELS | Font size in voxels. |
Definition at line 69 of file SoView2DLabel.h.
SoView2DLabel::SoView2DLabel | ( | ) |
Constructor.
|
override |
|
overrideprotectedvirtual |
Reimplemented from SoView2DInteractionExtension.
|
overridevirtual |
draw annotations on slice
Reimplemented from SoView2DExtension.
float SoView2DLabel::getDepthVisibilityBlendValue | ( | float | distance, |
float | voxelSizeZ | ||
) |
|
protected |
|
inlineoverrideprotectedvirtual |
return true if this node is a hybrid module providing managed interaction and classic event handling - in this case SoView2D::useManagedInteraction decides which one to use
Reimplemented from SoView2DExtension.
Definition at line 159 of file SoView2DLabel.h.
|
static |
inventor runtime type system
|
overrideprotectedvirtual |
interface forwarded from SoPointingAction:
Reimplemented from SoView2DInteractionExtension.
|
overrideprotectedvirtual |
Same as below, with additional SoState argument. By defaults, simply calls the below version.
Reimplemented from SoInteractionOwner.
References SoInteractionOwner::pointerPosition().
|
overrideprotectedvirtual |
Update isUnderMouse.
Reimplemented from SoInteractionOwner.
|
overrideprotectedvirtual |
Reimplemented from SoView2DInteractionExtension.
|
overrideprotectedvirtual |
Reimplemented from SoView2DInteractionExtension.
|
overrideprotectedvirtual |
Reimplemented from SoView2DInteractionExtension.
SoSFFloat SoView2DLabel::alpha |
Definition at line 103 of file SoView2DLabel.h.
SoSFFloat SoView2DLabel::backgroundAlpha |
Definition at line 133 of file SoView2DLabel.h.
SoSFColor SoView2DLabel::backgroundColor |
Definition at line 132 of file SoView2DLabel.h.
SoSFFloat SoView2DLabel::backgroundMarginBottom |
Definition at line 136 of file SoView2DLabel.h.
SoSFFloat SoView2DLabel::backgroundMarginLeft |
Definition at line 137 of file SoView2DLabel.h.
SoSFFloat SoView2DLabel::backgroundMarginRight |
Definition at line 135 of file SoView2DLabel.h.
SoSFFloat SoView2DLabel::backgroundMarginTop |
Definition at line 134 of file SoView2DLabel.h.
SoSFColor SoView2DLabel::borderColor |
Definition at line 111 of file SoView2DLabel.h.
SoSFTypedEnum<BorderMode> SoView2DLabel::borderMode |
Defines the border mode.
Definition at line 110 of file SoView2DLabel.h.
SoSFFloat SoView2DLabel::depthMinimumAlpha |
Definition at line 125 of file SoView2DLabel.h.
SoSFFloat SoView2DLabel::depthVisibility |
defines up to which distance markers are visible value is either in slices or in mm depending on the depthVisibilityMode field
Definition at line 115 of file SoView2DLabel.h.
SoSFEnum SoView2DLabel::depthVisibilityMode |
select the mode for depth visibility
Definition at line 118 of file SoView2DLabel.h.
SoSFBool SoView2DLabel::drawBackground |
Definition at line 131 of file SoView2DLabel.h.
SoSFInt32 SoView2DLabel::fontSize |
Definition at line 101 of file SoView2DLabel.h.
SoSFEnum SoView2DLabel::fontSizeMode |
Definition at line 102 of file SoView2DLabel.h.
SoSFBool SoView2DLabel::highlighted |
Set to true while the label should be highlighted, usually draws a border around the label.
Definition at line 107 of file SoView2DLabel.h.
SoSFFloat SoView2DLabel::horizontalOffset |
Definition at line 99 of file SoView2DLabel.h.
SoSFEnum SoView2DLabel::horizontalPosition |
Definition at line 98 of file SoView2DLabel.h.
SoSFBool SoView2DLabel::isUnderMouse |
Definition at line 139 of file SoView2DLabel.h.
SoSFBool SoView2DLabel::keepCursorPositionInViewerWhenMoving |
Definition at line 140 of file SoView2DLabel.h.
SoSFBool SoView2DLabel::keepLabelInViewer |
Definition at line 123 of file SoView2DLabel.h.
SoSFVec2f SoView2DLabel::relativeViewerPosition |
Definition at line 94 of file SoView2DLabel.h.
SoSFBool SoView2DLabel::showLabelOnAllTimePoints |
Definition at line 128 of file SoView2DLabel.h.
SoSFString SoView2DLabel::text |
Fields.
Definition at line 89 of file SoView2DLabel.h.
SoSFEnum SoView2DLabel::textPositioning |
Definition at line 92 of file SoView2DLabel.h.
SoSFBool SoView2DLabel::textShadow |
Definition at line 104 of file SoView2DLabel.h.
SoSFInt32 SoView2DLabel::timePoint |
Definition at line 127 of file SoView2DLabel.h.
SoSFBool SoView2DLabel::useDepthVisibility |
enables depth visibility
Definition at line 121 of file SoView2DLabel.h.
SoSFFloat SoView2DLabel::verticalOffset |
Definition at line 97 of file SoView2DLabel.h.
SoSFEnum SoView2DLabel::verticalPosition |
Definition at line 96 of file SoView2DLabel.h.
SoSFString SoView2DLabel::viewerId |
Definition at line 90 of file SoView2DLabel.h.
SoSFVec3f SoView2DLabel::worldPosition |
Definition at line 93 of file SoView2DLabel.h.