SoVolumeCutting¶
-
InventorModule
¶ author MeVis Medical Solutions AG
package MeVisLab/Standard
dll SoVolumeCutting
definition SoVolumeCutting.def see also UndoManager
keywords mask
Purpose¶
The SoVolumeCutting
module allows to interactively cut away parts of a volume.
The user can draw a 2D contour on a 3D viewer and the extruded intersection is cut away.
The input volume is used as reference volume for the output mask. Its image data will not be requested, only its image dimensions and world matrix.
The module should be placed late into the Open Inventor scene, so that the 2D contour is really drawn on top.
The output mask volume is suitable to be used with the SoGVRMaskVolume
, which allows
to cut away the rendered volume on-the-fly.
The module uses managed interactions, have a look at: Managed Interaction
.
Tips¶
If you need a finer or coarser mask volume, you can use a Resample3D module to modify the input volume (the resampled data will never be requested).
Note that the module does not clear its undo stack on input image change. in an application, you’d need to add a FieldListener to the module’s input image field and trigger a clearing of the undo stack explicitly if so desired.
Input Fields¶
inUndoContext¶
-
name:
inUndoContext
, type:
UndoContext(MLBase)
¶ Add the output from an
UndoManager
to receive undo facilities.For accessing this object via scripting see the Scripting Reference:MLUndoContextWrapper
.
Output Fields¶
Parameter Fields¶
Field Index¶
Add Mode : Enum |
Reset : Trigger |
Button : Enum |
|
cutAdded : Trigger |
|
cutMode : Enum |
|
Enabled : Bool |
|
interactionProviderID : String |
|
Line Color : Color |
|
Line Width : Float |
Visible Fields¶
Line Width¶
-
name:
lineWidth
, type:
Float
, default:
1
, minimum:
1
, maximum:
32
¶ Width used for drawing the cutting lines.
Reset¶
-
name:
reset
, type:
Trigger
¶ Restore the whole volume. (This is an undoable operation if an
UndoManager
is connected.)
Add Mode¶
-
name:
addMode
, type:
Enum
, default:
AlwaysAdd
¶ Defines how new cuts are handled.
Values:
Title | Name | Description |
---|---|---|
Always Add | AlwaysAdd | All cuts are added to existing cuts. |
Add With Shift | AddWithShift | New cuts replace old cuts if the Shift key is not pressed. |
Button¶
-
name:
button
, type:
Enum
, default:
LeftButton
¶ Which mouse button to use for drawing. This can always be overridden with
SoInteractionMapping
.
Values:
Title | Name |
---|---|
Left Button | LeftButton |
Middle Button | MiddleButton |
Right Button | RightButton |