SoView2DCSOExtensibleEditor

InventorModule
author Olaf Konrad
package MeVisLab/Standard
dll SoCSO
definition SoCSO.def
keywords roi, spline, polygon, polyline

Purpose

The module SoView2DCSOExtensibleEditor manages attached CSO editors and renderers and offers an optional default renderer for all types of CSOs.

Usage

Attach one or multiple CSO editors/renderers to the inExtensions field.

If multiple editors/renderers should be attached, use a SoGroup to group them and attach the group to this module.

The field Creator Extension Id takes a string that identifies the editor that should be used for creating a new CSO. Set the string to be the same as the extensionId string on any attached editor.

Alternatively, the field Creator Extension Id can be set to __default where the first found eligible editor is used to create a new CSO.

The configuration of the key commands and mouse button mask can be done with a SoInteractionMapping module.

Windows

Default Panel

../../../Modules/Inventor/SoCSO/mhelp/Images/Screenshots/SoView2DCSOExtensibleEditor._default.png

Input Fields

inCSOList

name: inCSOList, type: MLBase

Attach a CSOList.

inExtensions

name: inExtensions, type: SoNode

Attach a CSO editor or a SoGroup where multiple CSO editors/renderers are attached to.

inVisualizationSettings

name: inVisualizationSettings, type: MLBase

Attach a SoCSOVisualizationSettings module to control the appearance of CSOs.

Output Fields

self

name: self, type: SoNode

Parameter Fields

Visible Fields

Drawing On

name: drawingOn, type: Bool, default: TRUE

If checked, the attached editors render CSOs.

Editing On

name: editingOn, type: Bool, default: TRUE

If checked, editing of the rendered CSOs is possible.

Selection Tolerance

name: selectionTolerance, type: Float, default: 16, minimum: 0

Sets a selection tolerance (distance) in pixel.

Button1

name: button1, type: Enum, default: PRESSED

Defines the mask for mouse button 1.

Values:

Title Name
Pressed PRESSED
Released RELEASED
Ignored IGNORED

Button2

name: button2, type: Enum, default: IGNORED

Defines the mask for mouse button 2.

Values:

Title Name
Pressed PRESSED
Released RELEASED
Ignored IGNORED

Button3

name: button3, type: Enum, default: IGNORED

Defines the mask for mouse button 3.

Values:

Title Name
Pressed PRESSED
Released RELEASED
Ignored IGNORED

Shift

name: shift, type: Enum, default: IGNORED

Defines the mask for the SHIFT key.

Values:

Title Name
Pressed PRESSED
Released RELEASED
Ignored IGNORED

Control

name: control, type: Enum, default: IGNORED

Defines the mask for the CONTROL key.

Values:

Title Name
Pressed PRESSED
Released RELEASED
Ignored IGNORED

Alt

name: alt, type: Enum, default: IGNORED

Defines the mask for the ALT key.

Values:

Title Name
Pressed PRESSED
Released RELEASED
Ignored IGNORED

Creator Extension Id

name: creatorExtensionId, type: String, default: __default

Sets an extension id of an attached editor that creates a new CSO.

If this field is set to __default, the first attached editor is used to create a new CSO.

Always create a new CSO

name: alwaysCreateNewCSOs, type: Bool, default: FALSE

If checked, a new CSO is always created if an appropriate editor is found.

Otherwise, an existing CSO is selected on clicking into a viewer.

Keys enabled

name: keyCommandsEnabled, type: Bool, default: TRUE

If checked, key commands are enabled.

By default, the keyboard commands

Shortcut Effect
CTRL+C Copy selected CSO.
CTRL+X Cut selected CSO.
CTRL+V Paste selected CSO.
DEL Delete selected seed point.
SHIFT+DEL Delete selected CSO.

are available.

Interact only with selected CSO

name: interactOnlyWithSelectedCSO, type: Bool, default: FALSE

If checked, interaction (modification) is only allowed with selected CSOs.

Render left-over CSOs with default renderer

name: renderLeftOverCSOsWithDefaultRenderer, type: Bool, default: FALSE

If checked, an internal default renderer is used for rendering all CSOs without a specific, attached editor.

Render

name: renderCSOsOnImagesDependingOnCreationMode, type: Enum, default: ON_ALL_IMAGES

Defines on which images the CSOs should be rendered on. This is decided by the imageInstanceSOP which is stored as userData in the CSO on creation.

Values:

Title Name Description
On All Images ON_ALL_IMAGES CSOs are rendered on all images, the imageInstanceSOP is ignored.
Only On Images They Were Created On ONLY_ON_IMAGES_THEY_WERE_CREATED_ON The CSOs are rendered only on the images they were created on.
Only On Images They Were Not Created On ONLY_ON_IMAGES_THEY_WERE_NOT_CREATED_ON

The CSOs are rendered only on images they were NOT created on.

This mode is useful to render CSOs with different visualization settings on secondary captures.

Update CSO id under mouse

name: updateCSOIdUnderMouseCursor, type: Bool, default: TRUE

If checked, the field CSO Id Under Mouse is updated on each mouse movement.

CSO Id Under Mouse

name: csoIdUnderMouseCursor, type: Integer, persistent: no

Shows the id of the CSO currently under the mouse cursor.

This field is only touched if its value changes.

If the field Update CSO id under mouse is off, this field is never updated.

Is creating new CSO

name: isCreatingNewCSO, type: Bool, persistent: no

Shows whether any editor is currently creating a new CSO.

Is editing existing CSO

name: isEditingExistingCSO, type: Bool, persistent: no

Shows whether any editor is editing/modifying an existing CSO.

Render CSOs only on image they were created on

name: renderCSOsOnlyOnImagesTheyWereCreatedOn, type: Bool, default: FALSE

If checked, CSOs are only rendered on image they were created on.

This check uses the instanceSOP id of images.

Hidden Fields

maskValid

name: maskValid, type: Bool, default: FALSE

fixZOn

name: fixZOn, type: Bool, default: TRUE

color

name: color, type: Color, default: 1 1 1

needsValidVoxel

name: needsValidVoxel, type: Bool, default: TRUE

wantsAllEvents

name: wantsAllEvents, type: Bool, default: FALSE

wantsKeyEvents

name: wantsKeyEvents, type: Bool, default: FALSE

wantsMouseWheelEvents

name: wantsMouseWheelEvents, type: Bool, default: FALSE

setEventHandled

name: setEventHandled, type: Bool, default: FALSE

ignoreHandledEvents

name: ignoreHandledEvents, type: Bool, default: FALSE

createNewMode

name: createNewMode, type: Bool, default: FALSE

createNewModeRequest

name: createNewModeRequest, type: Trigger

renderOnSlab

name: renderOnSlab, type: Bool, default: FALSE

clipToSlice

name: clipToSlice, type: Bool, default: FALSE

cursorShape

name: cursorShape, type: Enum, default: UNDEFINED_CURSOR

Values:

Title Name
Undefined Cursor UNDEFINED_CURSOR
Default Cursor DEFAULT_CURSOR
Forbidden Cursor FORBIDDEN_CURSOR
Pointing Hand Cursor POINTING_HAND_CURSOR
Open Hand Cursor OPEN_HAND_CURSOR
Closed Hand Cursor CLOSED_HAND_CURSOR
Move All Cursor MOVE_ALL_CURSOR
Move Hori Cursor MOVE_HORI_CURSOR
Move Vert Cursor MOVE_VERT_CURSOR
Move Fdiag Cursor MOVE_FDIAG_CURSOR
Move Bdiag Cursor MOVE_BDIAG_CURSOR
Move Inout Cursor MOVE_INOUT_CURSOR
Rotate X Cursor ROTATE_X_CURSOR
Rotate Y Cursor ROTATE_Y_CURSOR
Rotate Z Cursor ROTATE_Z_CURSOR
Rotate Xy Cursor ROTATE_XY_CURSOR
Zoom Cursor ZOOM_CURSOR
Zoom In Cursor ZOOM_IN_CURSOR
Zoom Out Cursor ZOOM_OUT_CURSOR
Cross Cursor CROSS_CURSOR
Cross Plus Cursor CROSS_PLUS_CURSOR
Cross Minus Cursor CROSS_MINUS_CURSOR
Cross Move Cursor CROSS_MOVE_CURSOR
Cross Rotate Cursor CROSS_ROTATE_CURSOR
Cross Rect Cursor CROSS_RECT_CURSOR
Cross Oval Cursor CROSS_OVAL_CURSOR
Cross Vector Cursor CROSS_VECTOR_CURSOR
Cross Freeform Cursor CROSS_FREEFORM_CURSOR
Cross Point Cursor CROSS_POINT_CURSOR
Cross Line Cursor CROSS_LINE_CURSOR
Cross Curve Cursor CROSS_CURVE_CURSOR
Cross Polyline Cursor CROSS_POLYLINE_CURSOR
Cross Polygon Cursor CROSS_POLYGON_CURSOR
Cross Fill Cursor CROSS_FILL_CURSOR
Cross Link Cursor CROSS_LINK_CURSOR
Cross 0 Cursor CROSS_0_CURSOR
Cross 1 Cursor CROSS_1_CURSOR
Cross 2 Cursor CROSS_2_CURSOR
Cross 3 Cursor CROSS_3_CURSOR
Cross 4 Cursor CROSS_4_CURSOR
Cross 5 Cursor CROSS_5_CURSOR
Cross 6 Cursor CROSS_6_CURSOR
Cross 7 Cursor CROSS_7_CURSOR
Cross 8 Cursor CROSS_8_CURSOR
Cross 9 Cursor CROSS_9_CURSOR
Lut Cursor LUT_CURSOR
Lut 1 Cursor LUT_1_CURSOR
Lut 2 Cursor LUT_2_CURSOR
Lut 3 Cursor LUT_3_CURSOR
Slicing Cursor SLICING_CURSOR

alwaysModifyExistingCSOs

name: alwaysModifyExistingCSOs, type: Bool, default: FALSE