| 
    MeVisLab Toolbox Reference
    
   | 
 
SoView2D extension that draws a border with variable width and highlighting of focused viewport. More...
#include <SoView2DBorder.h>
  
Public Member Functions | |
| SoView2DBorder () | |
| void | draw (View2DSliceList *dsl, View2DSlice *dslice, int slice) override | 
| Draws a border on the given slice.   | |
| void | updateValues () override | 
| Update fields to local variables, may be reimplemented if you want to update additional local vars.   | |
  Public Member Functions inherited from SoView2DExtension | |
| SoView2DExtension () | |
| Constructor.   | |
| void | init () | 
| setup internal state   | |
| virtual bool | evalEvent (SoView2D *view2d, View2DSliceList *slicelist, View2DEvent *ec, View2DEventPhase phase) | 
| Called by the SoView2D for each event that happens on the viewer.   | |
| virtual void | startDrawing (View2DSliceList *) | 
| virtual void | endDrawing (View2DSliceList *) | 
| virtual void | overwriteDrawingSettings (SoView2DDrawingSettings &) | 
| View2DEvent * | getEvent () | 
| get the current event (when inside of evalEvent)   | |
| float | getSelectDist () | 
| Set the distance tolerance on hit checking in pixels.   | |
| 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.   | |
| 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.   | |
| 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.   | |
| 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.   | |
| void | drawFilledMiniTriangle (float xp, float yp, float ext, float lineWidth=1.f) | 
| Draws a small filled triangle with given center point and half height.   | |
| void | drawMiniCircle (float xp, float yp, float ext, float lineWidth=1.f) | 
| Draws a small circle with given center point and radius.   | |
| void | drawFilledMiniCircle (float xp, float yp, float ext, float lineWidth=1.f) | 
| Draws a small filled circle with given center point and radius.   | |
| void | drawFixedSizeMiniCircleAt (float xp, float yp) | 
| Draws a fixed size small circle at the given position.   | |
| void | drawVoxelBorder (View2DSlice *slice, float vx, float vy, float vz) | 
| surround the given voxel with a border   | |
| int | getX () | 
| get the x device position of current event, only returns valid result when called inside of evalEvent()   | |
| int | getY () | 
| get the y device position of current event, only returns valid result when called inside of evalEvent()   | |
| virtual bool | isDrawingOn () | 
| check if drawing is on   | |
| virtual bool | isEditingOn () | 
| check if editing is on   | |
| virtual bool | isFixZOn () | 
| check if z should stay fixed   | |
| virtual bool | isClipToSlice () | 
| check if the image is clipped to slice   | |
| virtual void | fieldChanged (SoSensor *sensor) | 
| handle if any field has changed   | |
| bool | isCreateNewMode () | 
| check if extension is in createNewMode   | |
| void | setCreateNewMode (bool flag) | 
| set this extension to create new objects   | |
| bool | isCreateNewModeRequest () | 
| check if extension has a request for createNewMode   | |
| void | setCreateNewModeRequest (bool flag) | 
| set that extension want to become createNewMode   | |
| virtual bool | isActive () | 
| returns if the extension is active (derive this method in child) (in createNewMode or with a selected object)(called by SoView2D)   | |
| virtual void | deleteSelectedObject () | 
| deletes the currently active object (derive this method in child) (called by SoView2D)   | |
| virtual void | getStatusString (SbString &status) | 
| get the current status of this extension   | |
| 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.   | |
| bool | wantsMouseOverUpdates () const | 
| public access to _wantsMouseOverUpdateEvents   | |
| virtual void | consumeEvent (View2DEvent *ec, bool handled=TRUE) | 
| Set handled-flag of ec to true (= consumed) if handled is True and setEventHandled is True.   | |
| int | getSelectedModifierMask () | 
| Get compare and ignore mask for the currently selected button/modifier combination, usable with SoPointingAction.   | |
| int | getSelectedIgnoreMask () | 
| SoPointingAction::Trigger | getPointingActionTriggerFromFields () | 
| Get the trigger that matches the button/modifier field state.   | |
| virtual bool | implementsManagedInteractionAndClassicEventHandling () const | 
| 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   | |
  Public Member Functions inherited from SoInteractionProviderNode | |
| SoInteractionProviderNode () | |
| Default constructor.   | |
| ~SoInteractionProviderNode () override | |
| Destructor.   | |
| std::string | getID () const override | 
| Returns the ID string for identifying the provider and its actions.   | |
| void | objRef () override | 
| Memory management by reference counting; must be implemented in derived classes.   | |
| void | objUnref () override | 
  Public Member Functions inherited from SoInteractionOwner | |
| SoInteractionOwner () | |
| Default constructor.   | |
| ~SoInteractionOwner () override | |
| The destructor will destroy all interactions created with this object as owner.   | |
| std::list< SoInteraction * > | getInteractions (SoState *state) override | 
| Returns the list of all interactions of this provider.   | |
| void | pointerPosition (SoState *state, const SoPointerPosition &pos) override | 
| Same as below, with additional SoState argument. By default, simply calls the below version.   | |
| void | pointerLeftWindow (SoState *state) override | 
| Same as below, with additional SoState argument. By defaults, simply calls the below version.   | |
| void | addListener (SoInteractionOwnerListenerInterface *listener) | 
| Adds a listener object that is notified of changes in the interaction list.   | |
| void | removeListener (SoInteractionOwnerListenerInterface *listener) | 
| Removes a listener object that was notified of changes in the interaction list.   | |
  Public Member Functions inherited from SoInteractionProvider | |
| SoInteractionProvider () | |
| Default constructor.   | |
| virtual | ~SoInteractionProvider () | 
| template<class T > | |
| std::list< T * > | getInteractionsOfType (SoState *state) | 
| Returns list of interactions of a specific type.   | |
| 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 () | 
  Static Public Member Functions inherited from SoView2DExtension | |
| static void | initClass () | 
| Initializes this class.   | |
| static float | snapToPixelCenter (float coordinateComponent) | 
| Snaps the coordinate component to the pixel center.   | |
| static void | fieldChangedCB (void *data, SoSensor *sensor) | 
| inventor callbacks if any field has changed, calls fieldChanged   | |
| static bool | isImageParallel (SoSFMLImage *image, View2DSliceList *dsl) | 
Return true if image is parallel to the image of the slice list up to slice thickness.   | |
| static void | enableLineStippling (const SoSFEnum &lineStyleField) | 
| Set/reset stippling pattern.   | |
| static void | disableLineStippling (const SoSFEnum &lineStyleField) | 
| static void | getAxisOrientation (int axis, SbMatrix &matrix, char &negativeResult, char &positiveResult) | 
| Geometry helpers.   | |
| static float | pointToLineDistance (SbVec3f point, SbVec3f line1, SbVec3f line2) | 
| calculate 3D point to line distance   | |
| static float | pointToLineDistance (SbVec2f point, SbVec2f line1, SbVec2f line2) | 
| calculate 2D point to line distance   | |
| 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   | |
  Static Public Member Functions inherited from SoInteractionProviderNode | |
| static void | initClass () | 
| Initializes this class.   | |
  Static Public Member Functions inherited from SoInteractionProvider | |
| static void | registerInteractionProviderNode (SoType type, GetProviderFunc func) | 
| Registers a function to obtain a SoInteractionProvider from a SoNode.   | |
| static SoInteractionProvider * | getInteractionProvider (SoNode *node) | 
| Returns a SoInteractionProvider from a SoNode if registered, else NULL.   | |
Public Attributes | |
| SoSFFloat | borderWidth | 
| The width of the border in pixels.   | |
| SoSFBool | evaluateFocus | 
| Flag indicating if the focus should be evaluated.   | |
| SoSFColor | focusColor | 
| Color that should be used for drawing if the view has the focus.   | |
| SoSFFloat | focusBorderWidth | 
| The width of the border that should be used for drawing if the view has the focus.   | |
| SoSFEnum | lineStyle | 
  Public Attributes inherited from SoView2DExtension | |
| SoSFColor | color | 
| color that should be used for drawing   | |
| SoSFBool | drawingOn | 
| flag if the extension should draw, needs to be checked inside of the draw() method   | |
| SoSFBool | editingOn | 
| flag if the extension should edit objects on mouse events, needs to be checked inside of the evalEvent() method   | |
| SoSFBool | maskValid | 
| flag if the event mask is valid.   | |
| SoSFFloat | selectionTolerance | 
| the selection tolerance in pixels   | |
| 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   | |
| SoSFBool | wantsKeyEvents | 
| flag if keyboard events should be passed to evalEvent()   | |
| SoSFBool | wantsMouseWheelEvents | 
| flag if MouseWheel events should be passed to evalEvent()   | |
| SoSFBool | setEventHandled | 
| Set event handled if it is indeed handled by this extension.   | |
| SoSFBool | ignoreHandledEvents | 
| Ignore events, that have been handled by previous extensions.   | |
| SoSFEnum | button1 | 
| mouse mask for button1   | |
| SoSFEnum | button2 | 
| mouse mask for button2   | |
| SoSFEnum | button3 | 
| mouse mask for button3   | |
| SoSFEnum | shift | 
| shift modifier for mouse mask   | |
| SoSFEnum | control | 
| shift control for mouse mask   | |
| SoSFEnum | alt | 
| shift alt for mouse mask   | |
| SoSFBool | needsValidVoxel | 
| sets if a valid voxel must be hit to get evalEvent() calls   | |
| SoSFBool | renderOnSlab | 
| defines if the extension should be rendered on all slab slices   | |
| SoSFBool | createNewMode | 
| flag if extension is in createNewMode   | |
| SoSFTrigger | createNewModeRequest | 
| SoSFBool | clipToSlice | 
| Flag to clip drawing to slice.   | |
| SoSFEnum | cursorShape | 
| Set cursor shape if the mouse mask fits and mouseEvents are effectively sent to evalEvent for editing.   | |
| SoSFBool | fixZOn | 
| DEPRECATED flag that indicates that the extension should fix the z value, only used in SoView2DRectangle.   | |
  Public Attributes inherited from SoInteractionProviderNode | |
| SoSFString | instanceName | 
| Defines interface field to store the instance name.   | |
| SoSFString | interactionProviderID | 
| This field overrides the instanceName as providerID if specified.   | |
Protected Member Functions | |
| void | drawBorder (View2DSlice *dslice, const float *rgbaColor, float width) | 
| render the border on slice with given color, alpha and line width   | |
  Protected Member Functions inherited from SoView2DExtension | |
| virtual void | editingOnChanged (SoField *) | 
| called when editingOn field is touched:   | |
| virtual void | buttonMaskChanged (SoField *) | 
| called when one of the button/modifier fields is touched:   | |
| virtual void | createNewModeRequestTriggered (SoField *) | 
| called when createNewModeRequest field ist touched:   | |
| ~SoView2DExtension () override | |
| destructor   | |
| void | GLRender (SoGLRenderAction *action) override | 
| Inventor actions.   | |
| 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 | 
  Protected Member Functions inherited from SoInteractionOwner | |
| virtual void | pointerPosition (const SoPointerPosition &) | 
| Override this if you always need to be informed of the current mouse cursor position.   | |
| virtual void | pointerLeftWindow () | 
| This is called when the mouse cursor leaves the window.   | |
| bool | hasInteractions () const | 
| Returns whether there are any actions defined by this owner.   | |
| template<class T > | |
| bool | hasInteractionsOfType () const | 
| Same as above, but asking for a specific type of interaction.   | |
| void | addPointingAction (SoPointingAction *) | 
| void | addCommandAction (SoCommandAction *) | 
| void | addOffsetAction (SoOffsetAction *) | 
Protected Attributes | |
| float | _rgbFocusColor [4] | 
| Color of the object for viewers with focus, update on each field change by _nodeSensor.   | |
  Protected Attributes inherited from SoView2DExtension | |
| SoNodeSensor * | _nodeSensor | 
| node sensor that is used to notice field changes   | |
| float | _rgbColor [4] | 
| Color of the object, update on each field change by _nodeSensor.   | |
| bool | _wantsMouseOverUpdateEvents | 
| set this flag to receive mouse over events while the extension is active   | |
Additional Inherited Members | |
  Public Types inherited from SoView2DExtension | |
| enum | Sign { ZERO , NEGATIVE , POSITIVE } | 
| defines the sign of a number, with zero as an extra value  More... | |
  Public Types inherited from SoInteractionProvider | |
| typedef SoInteractionProvider *(* | GetProviderFunc) (SoNode *) | 
SoView2D extension that draws a border with variable width and highlighting of focused viewport.
SoView2D extension that draws a border with variable width and highlighting of focused viewport
Definition at line 25 of file SoView2DBorder.h.
| SoView2DBorder::SoView2DBorder | ( | ) | 
      
  | 
  overridevirtual | 
Draws a border on the given slice.
Reimplemented from SoView2DExtension.
Reimplemented in SoView2DBorderHighlight.
      
  | 
  protected | 
render the border on slice with given color, alpha and line width
      
  | 
  static | 
      
  | 
  overridevirtual | 
Update fields to local variables, may be reimplemented if you want to update additional local vars.
Reimplemented from SoView2DExtension.
Reimplemented in SoView2DBorderHighlight.
      
  | 
  protected | 
Color of the object for viewers with focus, update on each field change by _nodeSensor.
Definition at line 61 of file SoView2DBorder.h.
| SoSFFloat SoView2DBorder::borderWidth | 
The width of the border in pixels.
Definition at line 32 of file SoView2DBorder.h.
| SoSFBool SoView2DBorder::evaluateFocus | 
Flag indicating if the focus should be evaluated.
Definition at line 35 of file SoView2DBorder.h.
| SoSFFloat SoView2DBorder::focusBorderWidth | 
The width of the border that should be used for drawing if the view has the focus.
Definition at line 41 of file SoView2DBorder.h.
| SoSFColor SoView2DBorder::focusColor | 
Color that should be used for drawing if the view has the focus.
Definition at line 38 of file SoView2DBorder.h.
| SoSFEnum SoView2DBorder::lineStyle | 
Definition at line 43 of file SoView2DBorder.h.