SoView2DOverlayMPR

InventorModule

genre

View2DExtended

author

MeVis Medical Solutions AG

package

MeVisLab/Standard

dll

SoView2DScene

definition

SoView2DScene.def

see also

SoView2D

inherits from

SoView2DExtension

keywords

slice, reformat, overlay, MPR

Purpose

The SoView2DOverlayMPR module renders the input image as an overlay onto any SoView2D.

It calculates the intersection between the input image and the SoView2D image in world coordinates and calculates a reformatted overlay image on the fly.

The overlay can be calculated in screen space resolution (resampling the input image for each output screen pixel), or in input image resolution. In case of screen space resolution, the applied Filter Mode does not affect the output image, since the reformatting already calculates a value for each screen pixel.

In addition to rendering a single slice, it also provides slab rendering of thick slabs.

For general details on overlays, see SoView2DOverlay.

Usage

It can be used as a software replacement for a SoView2DScene and SoGVRVolumeRenderer or as a replacement for a SoView2DOverlay / Reformat combination.

Details

Internally, this module makes use of a MPR module. For details on the resampling options, have a look at the MPR module as well.

Windows

Default Panel

../../../Modules/Inventor/SoView2DScene/mhelp/Images/Screenshots/SoView2DOverlayMPR._default.png

Input Fields

image

name: image, type: Image

The input image.

Output Fields

self

name: self, type: SoNode

The Open Inventor output that should be placed in front of the SoView2D.

Parameter Fields

Field Index

Alpha Factor: Float

Drawing On: Bool

Render Bounding Box: Bool

alt: Enum

editingOn: Bool

Render On Slab: Bool

Apply LUT: Bool

Fill Value: Double

Resample Border Handling: Enum

Base Color: Color

Fill Value Mode: Enum

Resample Interpolation: Enum

Blend Mode: Enum

Filter Mode: Enum

selectionTolerance: Float

Bounding Box Color: Color

fixZOn: Bool

setEventHandled: Bool

button1: Enum

ignoreHandledEvents: Bool

shift: Enum

button2: Enum

Inherit filter mode from SoView2D: Bool

Slab Mode: Enum

button3: Enum

interactionProviderID: String

Slab Size: Double

clipToSlice: Bool

Lut Precision: Enum

Time Slab Render Mode: Enum

color: Color

maskValid: Bool

Time Slab Size: Integer

control: Enum

maxTimePoint: Integer

Timepoint: Integer

createNewMode: Bool

memoryAccess: Enum

Use Input Resolution If Axis Aligned: Bool

createNewModeRequest: Trigger

needsValidVoxel: Bool

wantsAllEvents: Bool

cursorShape: Enum

Overlay Name: String

wantsKeyEvents: Bool

Depth Slab Render Mode: Enum

Overwrite Current Time Point: Bool

wantsMouseWheelEvents: Bool

Visible Fields

Drawing On

name: drawingOn, type: Bool, default: TRUE

Selects if rendering is on.

see also SoView2DExtension.drawingOn

Render On Slab

name: renderOnSlab, type: Bool, default: TRUE

If checked, the overlay is rendered onto each slice of a slab; otherwise, it is rendered just once.

This only affects rendering if the slab mode of the SoView2D is used and has more than one slice.

Overlay Name

name: overlayName, type: String

Sets a name of the overlay.

If this name is given to the overlay, it will be used by a SoView2DShaderOverlay module that is located to the right of this overlay. If a name is given, but no SoView2DShaderOverlay follows in the scene graph, the overlays is rendered normally.

Blend Mode

name: blendMode, type: Enum, default: BLEND_ADD

Defines the blend mode, see SoView2DOverlay.blendMode.

Values:

Title

Name

​Replace

​BLEND_REPLACE

​Add

​BLEND_ADD

​Blend

​BLEND_BLEND

​Premultiplied Blend

​BLEND_PREMULTIPLIED_BLEND

​Maximum

​BLEND_MAXIMUM

​Minimum

​BLEND_MINIMUM

​Reverse Subtract

​BLEND_REVERSE_SUBTRACT

​Subtract

​BLEND_SUBTRACT

​Screen

​BLEND_SCREEN

Overwrite Current Time Point

name: overwriteCurrentTimePoint, type: Bool, default: FALSE

If checked, the Timepoint field is used to select the time point.

Otherwise, the time point of the SoView2D is used.

Timepoint

name: timePoint, type: Integer, default: 0, minimum: 0, maximum: :field:`maxTimePoint`

Sets the time point.

Use Input Resolution If Axis Aligned

name: useInputResolutionIfAxisAligned, type: Bool, default: FALSE

If checked, the input resolution is used instead of the screen resolution if the data is axis-aligned to the reference image. This is an optimization that allows for skipping trilinear interpolation in such cases.

Filter Mode

name: filterMode, type: Enum, default: FILTER_LINEAR

Defines the filter mode; see SoView2DOverlay.filterMode.

Note: The filter mode will not affect the visual image much, since the resampling already resamples to screen resolution.

Values:

Title

Name

​Nearest

​FILTER_NEAREST

​Linear

​FILTER_LINEAR

​Linear Postclass

​FILTER_LINEAR_POSTCLASS

​Cubic Postclass

​FILTER_CUBIC_POSTCLASS

Inherit filter mode from SoView2D

name: inheritFilterMode, type: Bool, default: TRUE

If checked, the filter mode is taken from the SoView2D.

Lut Precision

name: lutPrecision, type: Enum, default: VIEW2D_LUT_AUTO

Defines the LUT precision.

Values:

Title

Name

​Auto

​VIEW2D_LUT_AUTO

​8bit

​VIEW2D_LUT_8BIT

​12bit

​VIEW2D_LUT_12BIT

​16bit

​VIEW2D_LUT_16BIT

Fill Value

name: fillValue, type: Double, default: 1

Sets the fill value that is used for values outside of the input image area, if Fill Value Mode is set to USER_VALUE.

Fill Value Mode

name: fillValueMode, type: Enum, default: IMAGE_MIN_VALUE

Defines how the fill value is selected.

Values:

Title

Name

Description

​Image Min Value

​IMAGE_MIN_VALUE

​Use the input image min value.

​Image Max Value

​IMAGE_MAX_VALUE

​Use the input image max value.

​User Value

​USER_VALUE

​Use the value specified in Fill Value.

Resample Interpolation

name: resampleInterpolation, type: Enum, default: MPR_TRILINEAR

Defines the interpolation that is used for resampling of the input image. See details on the filtering on the MPR module.

Values:

Title

Name

Description

​Nearest

​MPR_NEAREST

​Nearest Neighbor Filtering

​Trilinear

​MPR_TRILINEAR

​Trilinear Filtering

Resample Border Handling

name: resampleBorderHandling, type: Enum, default: MPR_CLAMP_TO_EDGE

Defines how resampling handles sampling on borders of the input image.

Values:

Title

Name

Description

​Clamp To Edge

​MPR_CLAMP_TO_EDGE

​Clamps the sampling value to the border of the input image and uses the fill value outside. This will result in sharp outer borders that are not interpolated into the fill value.

​Use Fillvalue

​MPR_USE_FILLVALUE

​Values outside the input image are replaced with the fill value. This will result in borders that are interpolated into the fill value.

Slab Size

name: slabSize, type: Double, default: 1

Sets the size of the slab.

Slab Mode

name: slabMode, type: Enum, default: USE_VIEW2D_SLAB_SIZE

Defines how the slab size is used.

Values:

Title

Name

Description

​Use View2d Slab Size

​USE_VIEW2D_SLAB_SIZE

​Use the slab size from the SoView2D.

​Slab Size In Mm

​SLAB_SIZE_IN_MM

​Use Slab Size and interpret it as millimeters. The slab is centered to the current slice.

​Slab Size In Mm Forward

​SLAB_SIZE_IN_MM_FORWARD

​Use Slab Size and interpret it as millimeters. The slab starts on the current slice.

​Slab Size In Slices

​SLAB_SIZE_IN_SLICES

​The slab is defined in SoView2D image slices and is placed around the current slice as the SoView2D slab rendering.

​Slab Size In Slices Negative First

​SLAB_SIZE_IN_SLICES_NEGATIVE_FIRST

​Compatibility mode for MeVisAP.

​Slab Size In Slices Forward

​SLAB_SIZE_IN_SLICES_FORWARD

​The slab starts at the current slice and the slab size is given in SoView2D image slices.

Depth Slab Render Mode

name: depthSlabRenderMode, type: Enum, default: MPR_MAXIMUM

Defines the depth render mode that is used for slab projection.

Values:

Title

Name

​Minimum

​MPR_MINIMUM

​Maximum

​MPR_MAXIMUM

​Average

​MPR_AVERAGE

Time Slab Render Mode

name: timeSlabRenderMode, type: Enum, default: MPR_AVERAGE

Defines the time render mode that is used for slab projection.

Values:

Title

Name

​Minimum

​MPR_MINIMUM

​Maximum

​MPR_MAXIMUM

​Average

​MPR_AVERAGE

Time Slab Size

name: timeSlabSize, type: Integer, default: 1

Sets the time slab size.

Alpha Factor

name: alphaFactor, type: Float, default: 1, minimum: 0, maximum: 1

Sets the alpha factor that is used for blending.

It is not used if the Blend Mode does not use the alpha value (e.g., BLEND_REPLACE).

Base Color

name: baseColor, type: Color, default: 1 1 1

Sets the base color that is multiplied with the overlay.

Apply LUT

name: applyLut, type: Bool, default: TRUE

If checked, the current LUT is used.

Otherwise, the data is rendered without applying a LUT.

Render Bounding Box

name: renderBoundingBox, type: Bool, default: FALSE

If checked, the rendering of the projected input image intersection bounding box is enabled.

Bounding Box Color

name: boundingBoxColor, type: Color, default: 1 1 1

Sets the color of the bounding box.

Hidden Fields

interactionProviderID

name: interactionProviderID, type: String

see SoView2DExtension.interactionProviderID

editingOn

name: editingOn, type: Bool, default: TRUE

see SoView2DExtension.editingOn

maskValid

name: maskValid, type: Bool, persistent: no

fixZOn

name: fixZOn, type: Bool, default: TRUE

color

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

see SoView2DExtension.color

selectionTolerance

name: selectionTolerance, type: Float, default: 4

needsValidVoxel

name: needsValidVoxel, type: Bool, default: TRUE

see SoView2DExtension.needsValidVoxel

button1

name: button1, type: Enum, default: IGNORED

see SoView2DExtension.button1

button2

name: button2, type: Enum, default: IGNORED

see SoView2DExtension.button2

button3

name: button3, type: Enum, default: IGNORED

see SoView2DExtension.button3

shift

name: shift, type: Enum, default: IGNORED

see SoView2DExtension.shift

control

name: control, type: Enum, default: IGNORED

see SoView2DExtension.control

alt

name: alt, type: Enum, default: IGNORED

see SoView2DExtension.alt

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

see SoView2DExtension.setEventHandled

ignoreHandledEvents

name: ignoreHandledEvents, type: Bool, default: FALSE

see SoView2DExtension.ignoreHandledEvents

createNewMode

name: createNewMode, type: Bool, default: FALSE

see SoView2DExtension.createNewMode

createNewModeRequest

name: createNewModeRequest, type: Trigger

see SoView2DExtension.createNewModeRequest

clipToSlice

name: clipToSlice, type: Bool, default: TRUE

cursorShape

name: cursorShape, type: Enum, default: UNDEFINED_CURSOR

see SoView2DExtension.cursorShape

maxTimePoint

name: maxTimePoint, type: Integer, persistent: no

memoryAccess

name: memoryAccess, type: Enum, default: GLOBAL

Values:

Title

Name

​Global

​GLOBAL

​Virtual Volume

​VIRTUAL_VOLUME