|
MeVisLab Toolbox Reference
|
Extension for rendering, generating, and modifying a square/rectangle CSO. More...
#include <SoCSORectangleEditor.h>
Public Member Functions | |
| SoCSORectangleEditor () | |
| Standard constructor. | |
| void | cancel () override |
| Cancels an action like generating a CSO. Depends on concrete editor. | |
| void | createStartPressAt (const SoPointerPosition &pos) override |
| void | createDragMoveTo (const SoPointerPosition &pos) override |
| bool | createEndPress (int clickCount) override |
| void | pointerPositionIfAllowedAt (const SoPointerPosition &) override |
| Sets seed points while moving the mouse – but not while dragging. | |
| void | selectAndMoveStartPressAt (const SoPointerPosition &pos) override |
| void | selectAndMoveDragMoveTo (const SoPointerPosition &pos) override |
| SoPointingAction * | selectAndMoveEndPress (int clickCount) override |
| virtual void | drawAdditionalGeometry (const CSODrawView2DInfos &view2DInfos, SoView2DCSOExtensibleEditor *editor) |
| Routine for drawing additional geometry of the extension. | |
Public Member Functions inherited from SoCSOCreatorEditorExtension | |
| bool | canCreateCSOs () const override |
| Returns whether the editor can create a CSO. | |
| int | cursorShape () const override |
| Returns the cursor shape that indicates the next creation. | |
Public Member Functions inherited from SoCSOEditorExtension | |
| void | setExtensibleEditor (SoView2DCSOExtensibleEditor *extensibleEditor) |
| Sets the pointer to the calling extensible editor. | |
| virtual void | activate (SoView2DCSOExtensibleEditor *extensibleEditor) |
| Is called when an extension is activated by the SoView2DExtensibleEditor. | |
| virtual void | deactivate () |
| Is called when an extension is deactivated by the SoView2DExtensibleEditor. | |
| virtual void | buttonMaskChanged () |
| Is called when the button mask of the SoView2DExtensibleEditor has changed. | |
| virtual void | editingOnChanged () |
| Is called when the editingOn field of the SoView2DExtensibleEditor has changed. | |
| virtual void | startDrawing (View2DSliceList *) |
| Is called before drawing. | |
| virtual void | drawingDone () |
| Is called when all drawing is done. | |
| virtual void | setVisibleCSOs (const std::vector< CSODrawCSOInfos > &drawCSOInformation, const CSODrawView2DInfos &view2DInfos, SoView2DCSOExtensibleEditor *editor) |
| Sets visible CSOs that have been determined in the extensible editor. | |
| virtual void | draw (const CSODrawCSOInfos &csoInfos, const CSODrawView2DInfos &view2DInfos, const CSODrawSliceInformation &sliceInfo, SoView2DCSOExtensibleEditor *editor) |
| Main routine for drawing a CSO. | |
| virtual void | drawSecondPass (const CSODrawCSOInfos &csoInfos, const CSODrawView2DInfos &view2DInfos, const CSODrawSliceInformation &sliceInfo, SoView2DCSOExtensibleEditor *editor) |
| Drawing routine that comes between 'main' and 'overlay'. | |
| virtual void | drawOverlay (const CSODrawCSOInfos &csoInfos, const CSODrawView2DInfos &view2DInfos, const CSODrawSliceInformation &sliceInfo, SoView2DCSOExtensibleEditor *editor) |
| Routine for drawing after the main routine has drawn. | |
| virtual void | insertSeedPointStartPressAt (const SoPointerPosition &) |
| virtual void | insertSeedPointDragMoveTo (const SoPointerPosition &) |
| virtual SoPointingAction * | insertSeedPointEndPress (int) |
| virtual void | bulgeStartPressAt (const SoPointerPosition &) |
| virtual void | bulgeDragMoveTo (const SoPointerPosition &) |
| virtual SoPointingAction * | bulgeEndPress (int) |
| virtual void | pointerPosition (const SoPointerPosition &) |
| Called when the mouse moves over a viewer. | |
| virtual void | pointerLeftWindow () |
| Called when mouse pointer leaves the window. | |
| virtual bool | isCreationAllowed () const |
| Returns whether the editor is allowed to create a new CSO. | |
| virtual bool | isCreationAllowedAt (const SoPointerPosition &) const |
| Returns whether the editor is allowed to create a new CSO at the given position, by default calls the previous method. | |
| virtual bool | isModificationAllowed () const |
| Returns whether the editor is allowed to modify an existing CSO. | |
| virtual bool | shouldRenderCSOs () const |
| Returns whether the editor should render. | |
| virtual bool | expectsToCreateCSO () |
| Returns whether an editor is awaiting to create a new CSO, depending on the requireMousemovement flag. | |
| SbString | getCreatorExtensionId () const |
| void | setActiveCSOList (ml::CSOList *hitCSOList) |
| void | setSelectAndMoveInformation (ml::CSOList *hitCSOList, ml::CSO *hitCSO, ml::CSOSeedPoint *hitSeedPoint, ml::CSOPathPoints *hitPathPoints, float hitDistance) |
| void | setCSOUnderMouse (ml::CSO *cso) |
| ml::CSO * | getCSOUnderMouse () const |
| bool | hasSelectedSeedPoint () const |
| bool | hasSelectedCSO () const |
| virtual SbString | getSubType () const |
| Returns the sub type string of the derived class. | |
| virtual bool | shouldRenderSpecific (ml::CSO *cso) const |
| Returns whether a given CSO should be rendered by this specific extension. | |
| virtual bool | shouldRenderGeneral (ml::CSO *) const |
| Returns whether a given CSO should be rendered by this general extension. | |
| virtual bool | isDefaultRenderer () const |
| Returns whether the editor is the default editor. | |
| virtual bool | isModificationEditor () const |
| Returns whether the editor is a modification editor. | |
| virtual void | resetCache () |
| Resets internal module caches, if there are any. | |
| virtual bool | deleteSeedPoint (ml::CSO *cso, ml::CSOSeedPoint *) |
| Removes the given seed point from the given CSO and returns whether that was successful. | |
| ml::CSOSeedPoint * | getPreviousSeedPoint (ml::CSOSeedPoint *seedPoint) const |
| Returns the previous seed point of the given seed point for setting it as the next selected seed point. | |
| virtual void | mouseWheelEventReceived (SoMouseWheelEvent::Orientation, int, View2DEvent *) |
| Method is called when the extensible editor received a mouse wheel event. | |
| virtual bool | evaluateHitPoint (const ml::Vector3 &worldPosition, View2DSliceList *slicelist, ml::CSOList *csoList, const ml::CSOBoundingBox &slabBB, SoView2DCSOExtensibleEditor *editor, ml::CSO *&localHitCSO, ml::CSOSeedPoint *&localHitSeedPoint, ml::CSOPathPoints *&localHitPathPoints, float &distance) |
| Returns whether the given world position is within the selection distance set in the editor and fills the selection distance. | |
| void | reset () |
| ml::CSOVisualizationSettings * | getVisualizationSettings () |
| Returns a pointer to the visual settings that are either the default ones or the ones set to the extensible editor (if present). | |
| bool | shouldShowCSOForCurrentTimePoint (const CSODrawView2DInfos &view2DInfos, ml::CSO *cso) |
| Returns whether the given CSO should be rendered for the current time point. | |
| void | sendCSOEventsOnCancel (ml::CSO *cso) |
| Sends CSO events for completing a creation or interaction when canceling it. | |
| virtual void | sendCSOEventsOnCancel (ml::CSOList *csoList) |
Public Member Functions inherited from ml::CSOGeneratorBase | |
| CSOGeneratorBase () | |
| Default constructor. | |
| virtual | ~CSOGeneratorBase ()=default |
| CSO * | generatorAddCSO (CSOList *csoList, bool useUndoRedo=true) |
| Adds a new CSO to the CSOList. | |
| CSO * | generatorAddCSONoEvent (CSOList *csoList, bool useUndoRedo=true, bool sendEvent=false) |
| See generatorAddCSO, but no CSOGroup scope event is emitted. (So this method is faster!) | |
| CSOGroup * | generatorGetParentGroup (CSOList *csoList, bool useUndoRedo=false, bool generate=false) |
| Returns the parent CSOGroup according to current CSOGroup settings. | |
| void | generatorEmptyGroupOnDemand (CSOList *csoList) |
| Empties a CSOGroup on demand of the given CSOList with the set label. | |
Public Member Functions inherited from CSOPointDensity | |
| CSOPointDensity () | |
| float | getPointDensity (const SoPointerPosition &pos) const |
Static Public Member Functions | |
| static void | initClass () |
Static Public Member Functions inherited from SoCSOCreatorEditorExtension | |
| static void | initClass () |
| init class in inventor runtime | |
Static Public Member Functions inherited from SoCSOEditorExtension | |
| static void | initClass () |
| init class in inventor runtime | |
Public Attributes | |
| SoSFBool | shouldMoveOnlyGrabbedSide |
| Should only a side of the rectangle be moved instead of the entire CSO? | |
| SoSFBool | isSquare |
| Is the rectangle actually a square? | |
| SoSFBool | shouldUseShiftToToggleSquareRectangle |
| Should the SHIFT modifier key be active for toggling square/rectangle? | |
| SoSFColor | grabbedSideMouseOverColor |
| Color of a grabbed side on mouse-over. | |
| SoSFFloat | grabbedSideMouseOverLineWidth |
| Line width of a grabbed side on mouse-over. | |
Public Attributes inherited from SoCSOCreatorEditorExtension | |
| SoSFInt32 | moduleCreatorId |
| Sets the module's creator id. | |
| SoSFString | moduleCreatorString |
| Sets the module's type string. | |
| SoSFString | labelPrefixString |
| Sets a label prefix string. | |
| SoSFBool | requirePointerPositionMovementToCreateCSO |
| Should the mouse have to be moved a bit before creating a CSO? | |
| SoSFInt32 | pointerPositionEpsilonForCreatingCSO |
| The pointer position movement epsilon distance in pixel to trigger CSO creation. | |
| SoSFBool | shouldEmptyGroupBeforeGenerating |
| Should the CSO group be emptied before generating new CSOs into it? | |
| SoSFEnum | addCSOToGroupMode |
| Sets whether the group's label or its id should be used for cso-into-group generation. | |
| SoSFString | addCSOToGroupLabel |
| Sets the group's label for CSO generation. | |
| SoSFInt32 | addCSOToGroupId |
| Sets the group's id for CSO generation. | |
| SoSFEnum | defaultPathPointStyle |
| Sets the default path point style. | |
| SoSFFloat | defaultPathPointWidth |
| Sets the default path point width. | |
| SoSFColor | defaultPathPointColor |
| Sets the default path point color. | |
| SoSFFloat | defaultPathPointAlpha |
| Sets the default path point alpha. | |
| SoSFEnum | defaultSeedPointStyle |
| Sets the default seed point style. | |
| SoSFFloat | defaultSeedPointSize |
| Sets the default seed point size. | |
| SoSFColor | defaultSeedPointColor |
| Sets the default seed point color. | |
| SoSFFloat | defaultSeedPointAlpha |
| Sets the default seed point alpha. | |
| SoSFEnum | defaultVoxelWriteMode |
| Sets the default voxel write mode. | |
| SoSFFloat | defaultVoxelWriteValue |
| Sets the default voxel write value. | |
| SoSFEnum | createCursor |
| Cursor shapes. | |
| SoSFEnum | moveAllCursor |
| SoSFEnum | moveSeedCursor |
Public Attributes inherited from SoCSOEditorExtension | |
| SoSFString | extensionId |
| ID for a editor, needs to be unique per editor extension instance. | |
| SoSFBool | allowCreation |
| Shall the editor allow creation? | |
| SoSFBool | allowModification |
| Shall the editor allow modification of CSOs of its type? | |
| SoSFBool | allowSeedPointInteraction |
| Should the interaction with seed points be allowed? | |
| SoSFBool | shouldRender |
| Shall the editor render its CSOs? | |
| SoSFMLBase | inVisualizationSettings |
| Optionally attached visualization settings, overrides the vis. | |
| SoSFEnum | selectionCursor |
| SoSFEnum | interactionForbiddenCursor |
| SoSFInt32 | csoIdUnderMouseCursor |
| The ID of the CSO currently under the mouse (or -1 if no CSO is under the mouse). | |
Public Attributes inherited from CSOPointDensity | |
| SoSFEnum | pointDensityMode |
| SoSFFloat | densityFactor |
Additional Inherited Members | |
Protected Member Functions inherited from SoCSOCreatorEditorExtension | |
| SoCSOCreatorEditorExtension () | |
| Hidden constructor. | |
| void | initMembers () override |
| ml::CSO * | editorAddCSO (ml::CSOList *csoList) |
| Adds and returns a new CSO. | |
| int | getModuleCreatorId () const override |
| Returns the module's creator id. | |
| std::string | getModuleType () const override |
| Returns the module's type string. | |
| void | setCreationData (const SoPointerPosition &pos, ml::CSO *newCSO) override |
| Sets creation data to a newly created CSO. | |
| int | getMaxAvailableId () |
| Returns the current id for CSOs created by this editor. It is the maximum available id. | |
| bool | getShouldEmptyBeforeGeneration () const override |
| Returns whether the module should empty a group before generating CSOs into it. | |
| int | getAddCSOToGroupMode () const override |
| Returns the group generation mode. | |
| std::string | getAddCSOToGroupLabel () const override |
| Returns the label string of a target group. | |
| int | getAddCSOToGroupId () const override |
| Returns the id of a target group. | |
| int | getDefaultPathPointStyle () const override |
| Returns the set default path point style for a new CSO. | |
| float | getDefaultPathPointWidth () const override |
| Returns the set default path point width for a new CSO. | |
| ml::Vector3 | getDefaultPathPointColor () const override |
| Returns the set default path point color for a new CSO. | |
| float | getDefaultPathPointAlpha () const override |
| Returns the set default path point alpha for a new CSO. | |
| int | getDefaultSeedPointStyle () const override |
| Returns the set default seed point style for a new CSO. | |
| float | getDefaultSeedPointSize () const override |
| Returns the set default seed point size for a new CSO. | |
| ml::Vector3 | getDefaultSeedPointColor () const override |
| Returns the set default seed point color for a new CSO. | |
| float | getDefaultSeedPointAlpha () const override |
| Returns the set default seed point alpha for a new CSO. | |
| int | getDefaultVoxelWriteMode () const override |
| Returns the set default voxel write mode for a new CSO. | |
| float | getDefaultVoxelWriteValue () const override |
| Returns the set default voxel write value for a new CSO. | |
| ml::CSO * | getActiveCSO () const override |
| Returns the currently active CSO. | |
| bool | isFartherThanEpsilon (const SoPointerPosition &pos) const |
| Returns whether the given position is farther away from the start position than the epsilon in pixel. | |
Protected Member Functions inherited from SoCSOEditorExtension | |
| SoCSOEditorExtension () | |
| Hidden constructor. | |
| ~SoCSOEditorExtension () override | |
| Hidden destructor. | |
| void | sendCSONotificationRepaint () |
| Sends a CSO notification to repaint the CSOList. | |
| void | sendCSONotificationMove () |
| Sends a CSO notification on moving a CSO or seed point. | |
| void | sendCSONotificationFinishInteraction () |
| Sends a CSO notification on finishing an interaction with a CSO. | |
| void | sendCSONotificationResetInteractionState () |
| Sends a CSO notification on having the interaction state being reset. | |
| void | sendCSONotificationInsertSeedPoint () |
| Sends a CSO notification on inserting a seed point. | |
| void | sendCSONotificationNewCSOStarted () |
| Sends a CSO notification on having started to create a new CSO. | |
| void | setExtensionIdAsSubType () |
| Sets the subtype member to the value of the extension ID string. | |
| void | extensionIdCB (SoField *) |
| SoCSOEditorTools::LineRenderSettings | getLineRenderSettingsOnSlice () |
| Creates a LineRenderSettings struct from the editors visualization settings "onSlice" section. | |
| SoCSOEditorTools::LineRenderSettings | getLineRenderSettingsForCSO (ml::CSO *cso) |
| Creates a LineRenderSettings struct from the visualization attributes of the given CSO. | |
| void | drawPathPoints (const CSODrawCSOInfos &csoInfos, const CSODrawView2DInfos &view2DInfos, const CSODrawSliceInformation &drawSliceInfo, const SbVec2f &shadowOffsetDevice, SoView2DCSOExtensibleEditor *editor) |
| Draws the CSO by drawing lines between the path points. Renders different types of CSOs. | |
| void | renderPathPoints (const CSOPathPointsRenderSettings &renderSettings, const CSODrawCSOInfos &csoInfos, const CSODrawView2DInfos &view2DInfos, const std::vector< CSOSliceCrossing > &pathPointsLists, GLint lineMode, const SbVec2f &shadowOffsetDevice) |
| Draws path points with given render settings. | |
| void | drawPathAndCrossingPoints (const CSODrawCSOInfos &csoInfos, const CSODrawView2DInfos &view2DInfos, const SbVec2f &shadowOffsetDevice, const std::vector< CSOSliceCrossing > &pathAndCrossingPoints, GLint lineMode) |
| Draws the path and crossing points. | |
| void | drawShape (int style, SoView2DCSOExtensibleEditor *editor, ml::CSOVisualizationSettings *visualizationSettings, float deviceX, float deviceY, float size, float lineWidth=1.f) |
| Draws the shape with the given style with the given center and size. | |
| void | drawSeedPoints (const CSODrawCSOInfos &csoInfos, const CSODrawView2DInfos &view2DInfos, const CSODrawSliceInformation &drawSliceInfo, SoView2DCSOExtensibleEditor *editor) |
| Draws the seed points of the CSO. | |
| void | drawFixedSizeCircleAt (float deviceX, float deviceY) |
| Renders a fixed size circle at the given position. | |
| bool | isCSOVisible (const CSODrawCSOInfos &csoInfos, const CSODrawView2DInfos &view2DInfos, const CSODrawSliceInformation &drawSliceInfo, SoView2DCSOExtensibleEditor *editor) |
| Returns whether the CSO is visible on the current slice. | |
| void | mapWorldToDevice (const SoPointerPosition &pos, const ml::Vector3 &worldPosition, float &deviceX, float &deviceY) |
| Returns device coordinates for a given world position. | |
| void | mapWorldToDevice (View2DSliceList *slicelist, const ml::Vector3 &worldPosition, float &deviceX, float &deviceY) |
| Returns device coordinates for a given world position. | |
| ml::Vector3 | mapDeviceToWorld (const SoPointerPosition &pos, float deviceX, float deviceY) |
| Returns world coordinates for given device position. | |
| ml::Vector3 | mapWorldToVoxel (const SoPointerPosition &pos, const ml::Vector3 &worldPosition) |
| Returns a voxel position for a given world position. | |
| ml::Vector3 | mapWorldToVoxel (const SoPointerPosition &pos, const SbVec3f &worldPosition) |
| Returns a voxel position for a given world position. | |
| ml::Vector3 | mapVoxelToWorld (const SoPointerPosition &pos, const ml::Vector3 &voxelPosition) |
| Returns a world position for a given voxel position. | |
| SbVec2f | nonShadowOffset () const |
| Returns the default offset for non-shadows in pixels. | |
| SbVec2f | shadowOffset () const |
| Returns the default offset for shadows in pixels. | |
| GLint | getLineMode (ml::CSO *cso) |
| Returns the correct line mode for open and for closed CSOs. | |
| void | setupGLForCSO (const CSODrawCSOInfos &csoInfos) |
| Sets up GL state for color, line width, and point size. | |
| void | setupGLShadow (float generalAlpha=1.0f) |
| Sets up the GL state for shadow rendering (color and line width). | |
| void | glSetAlpha (float alpha) |
| Sets an alpha value but retains the set color. | |
| float | getDepthAlpha (int maxSliceDistance, int currentSliceDistance) const |
| Returns an alpha factor based on the max distance and the current distance. | |
| bool | doesCSOTimePointMatchCurrentTimePoint (const CSODrawView2DInfos &view2DInfos, ml::CSO *cso) |
| Returns true if the CSO's time point matches the (overwritten) current time point. | |
Protected Attributes inherited from SoCSOCreatorEditorExtension | |
| SbVec2f | _startDevicePointerPosition |
| The device position of the pointer at creation start. | |
| ml::CSO * | _newCSO |
| Created CSO. | |
Protected Attributes inherited from SoCSOEditorExtension | |
| SoView2DCSOExtensibleEditor * | _editor |
| ml::CSOListPtr | _hitCSOList |
| Pointer to internal/interactive states. | |
| ml::CSO * | _hitCSO |
| ml::CSOSeedPoint * | _hitSeedPoint |
| ml::CSOPathPoints * | _hitPathPoints |
| float | _hitDistance |
| ml::CSO * | _csoUnderMouse |
| ml::CSOVisualizationSettings | _visualizationSettings |
| Default visual settings. Access them via the method getVisualSettings(). | |
| SbString | _subType |
| Member for subtype of generated CSOs. | |
Extension for rendering, generating, and modifying a square/rectangle CSO.
Extension for rendering, generating, and modifying a square/rectangle CSO.
Definition at line 24 of file SoCSORectangleEditor.h.
| SoCSORectangleEditor::SoCSORectangleEditor | ( | ) |
Standard constructor.
|
overridevirtual |
Cancels an action like generating a CSO. Depends on concrete editor.
Reimplemented from SoCSOEditorExtension.
|
overridevirtual |
Implements SoCSOEditorExtension.
|
overridevirtual |
Implements SoCSOEditorExtension.
|
overridevirtual |
Implements SoCSOEditorExtension.
|
virtual |
Routine for drawing additional geometry of the extension.
Reimplemented from SoCSOEditorExtension.
|
static |
|
inlineoverridevirtual |
Sets seed points while moving the mouse – but not while dragging.
Is called in isSensitiveAt only while interacting on the same slice where the interaction has started.
Implements SoCSOEditorExtension.
Definition at line 53 of file SoCSORectangleEditor.h.
|
overridevirtual |
Implements SoCSOEditorExtension.
|
overridevirtual |
Implements SoCSOEditorExtension.
|
overridevirtual |
Implements SoCSOEditorExtension.
| SoSFColor SoCSORectangleEditor::grabbedSideMouseOverColor |
Color of a grabbed side on mouse-over.
Definition at line 42 of file SoCSORectangleEditor.h.
| SoSFFloat SoCSORectangleEditor::grabbedSideMouseOverLineWidth |
Line width of a grabbed side on mouse-over.
Definition at line 44 of file SoCSORectangleEditor.h.
| SoSFBool SoCSORectangleEditor::isSquare |
Is the rectangle actually a square?
Definition at line 37 of file SoCSORectangleEditor.h.
| SoSFBool SoCSORectangleEditor::shouldMoveOnlyGrabbedSide |
Should only a side of the rectangle be moved instead of the entire CSO?
Definition at line 35 of file SoCSORectangleEditor.h.
| SoSFBool SoCSORectangleEditor::shouldUseShiftToToggleSquareRectangle |
Should the SHIFT modifier key be active for toggling square/rectangle?
Definition at line 39 of file SoCSORectangleEditor.h.