| 
    MeVisLab Toolbox Reference
    
   | 
 
Extension for rendering, generating, and modifying a circle/ellipse CSO. More...
#include <SoCSOEllipseEditor.h>
  
Public Member Functions | |
| SoCSOEllipseEditor () | |
| 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 | 
  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 | drawAdditionalGeometry (const CSODrawView2DInfos &view2DInfos, SoView2DCSOExtensibleEditor *editor) | 
| Routine for drawing additional geometry of the extension.   | |
| 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 () | 
| init class in inventor runtime   | |
  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 | isCircle | 
| Is the ellipse actually a circle?   | |
| SoSFFloat | ellipseCreationRatio | 
| Ratio of the ellipse's length to width on creation in [0..1].   | |
| SoSFBool | shouldUseShiftToToggleCircleEllipse | 
| Should the SHIFT modifier key be active for toggling circle/ellipse?   | |
| SoSFBool | createCircleWithSingleClick | 
| Should a circle be created with a single click?   | |
| SoSFFloat | singleClickCircleRadius | 
| The radius of the single-click circle.   | |
| SoSFBool | shouldKeepCenterConstant | 
| Should the center be kept constant?   | |
  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 circle/ellipse CSO.
Extension for rendering, generating, and modifying a circle/ellipse CSO.
Definition at line 24 of file SoCSOEllipseEditor.h.
| SoCSOEllipseEditor::SoCSOEllipseEditor | ( | ) | 
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.
      
  | 
  static | 
init class in inventor runtime
      
  | 
  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 54 of file SoCSOEllipseEditor.h.
      
  | 
  overridevirtual | 
Implements SoCSOEditorExtension.
      
  | 
  overridevirtual | 
Implements SoCSOEditorExtension.
      
  | 
  overridevirtual | 
Implements SoCSOEditorExtension.
| SoSFBool SoCSOEllipseEditor::createCircleWithSingleClick | 
Should a circle be created with a single click?
Definition at line 40 of file SoCSOEllipseEditor.h.
| SoSFFloat SoCSOEllipseEditor::ellipseCreationRatio | 
Ratio of the ellipse's length to width on creation in [0..1].
Definition at line 36 of file SoCSOEllipseEditor.h.
| SoSFBool SoCSOEllipseEditor::isCircle | 
Is the ellipse actually a circle?
Definition at line 34 of file SoCSOEllipseEditor.h.
| SoSFBool SoCSOEllipseEditor::shouldKeepCenterConstant | 
Should the center be kept constant?
Definition at line 44 of file SoCSOEllipseEditor.h.
| SoSFBool SoCSOEllipseEditor::shouldUseShiftToToggleCircleEllipse | 
Should the SHIFT modifier key be active for toggling circle/ellipse?
Definition at line 38 of file SoCSOEllipseEditor.h.
| SoSFFloat SoCSOEllipseEditor::singleClickCircleRadius | 
The radius of the single-click circle.
Definition at line 42 of file SoCSOEllipseEditor.h.