SoVascularSystem

InventorModule

genre

VesselVis

author

MeVis Medical Solutions AG

package

MeVisLab/Standard

dll

SoVascularSystem

definition

SoVascularSystem.def

see also

LoadBase

keywords

vessel

Purpose

The module SoVascularSystem visualizes any vascular system described by a MLVesselGraph structure as a 3D Open Inventor scene graph.

There are several display modes available, such as displaying a vascular system as a point cloud or as a surface model.

Additionally, the appearance regarding the coloring or point size if in point cloud mode may be adjusted to the user’s need.

Furthermore, the module provides some information about edges or nodes the user has clicked on interactively in the viewer.

Windows

Default Panel

../../../Modules/Inventor/SoVascularSystem/mhelp/Images/Screenshots/SoVascularSystem._default.png

Input Fields

inputGraph

name: inputGraph, type: Graph(MLBase)

Input graph must be of type MLVesselGraph.

For accessing this object via scripting, see the Scripting Reference: MLGraphWrapper.

inLUT

name: inLUT, type: LUTFunction(MLBase)

Input LUT to color the vessel segments.

Parameter Fields

Field Index

Alt. Transp. Color: Color

interactionProviderID: String

selectionTolerance: Float

Apply: Trigger

Interactive Preview Alpha: Float

Show lines: Bool

Auto apply: Bool

Interactive Preview Color: Color

Skeleton Smoothness: Float

Cap Scaling:: Float

Label Mode: Enum

Smooth independently: Bool

Complexity: Float

Line Width:: Integer

Smoothness: Float

Continuous Hit Check: Bool

Min Radius Cut Off Value: Float

Snap Mode: Enum

cursorShape: Enum

Mode:: Enum

Status: String

Cut Off Alpha: Float

Nearest Color: Color

triggerHighlight: Trigger

Cut Off Color: Color

Nearest Coordinate: Vector3

unsetHighlight: Trigger

Depth:: Integer

Nearest Label: Integer

Use alt. transp.: Bool

Display Mode: Enum

Nearest Radius: Float

Use Direct Graph: Bool

Edge ID: Integer

Num. Smoothing Passes: Integer

Use general color: Bool

Enable: Bool

Point Size:: Integer

Use integer LUT: Bool

Enable Interactive Preview Mode: Bool

Radius Fixed Size: Float

Use Min Radius Cut Off: Bool

Enable Recursive Highlighting: Bool

Radius Mode: Enum

Use skeleton colors: Bool

General Color: Color

Radius Scale: Float

Visible: Bool

Generate: Enum

Radius Smoothness: Float

Work Directly On Input Graph: Bool

Generate texture coordinates: Bool

Range for Smart Snap in Skeletons: Integer

X:: Float

Has Clicked On Surface: Trigger

Selected Coordinate: Vector3

Y:: Float

Highlight Mode: Enum

selectedNodeId: Integer

Visible Fields

Auto apply

name: autoApply, type: Bool, default: TRUE

If checked, changes to any field triggers an update of the output scene.

Apply

name: apply, type: Trigger

When pressed, the output scene is rendered anew.

Status

name: status, type: String, persistent: no

Shows status information about the module.

Complexity

name: complexity, type: Float, default: 0.60000002, minimum: 0, maximum: 1

Sets the complexity of the resulting Open Inventor scene (the number of generated polygons).

Point Size:

name: pointSize, type: Integer, default: 1, minimum: 1, maximum: 20

Sets the point size if points are rendered.

Line Width:

name: lineWidth, type: Integer, default: 1, minimum: 1, maximum: 10

Sets the line width if lines are rendered.

X:

name: textureScaleX, type: Float, default: 0.5

Sets a scale factor for texture coordinates in the x-direction.

Y:

name: textureScaleY, type: Float, default: 0.5

Sets a scale factor for texture coordinates in the y-direction.

Depth:

name: recursionDepth, type: Integer, default: -1

Sets a value to determine the branching depth of a vessel system.

Default value is -1, which means that the entire tree is generated. A value of 10, for example, means that the tree is generated up to a branching depth of 10.

Show lines

name: showLines, type: Bool, default: FALSE

If checked, the surface polygons (if rendered in ‘Surface’ mode) are rendered in wire frame mode.

Otherwise, the surface polygons are rendered as surface polygons. This option is some kind of an alternative transparency rendering option and meant more for testing/debugging.

Label Mode

name: labelMode, type: Enum, default: GENERAL_LABEL

Defines how the textures relate to labels.

Values:

Title

Name

Description

​Hierachy Label

​HIERACHY_LABEL

​Use the hierarchy label to determine how textures are applied. The hierarchy label gives information about the branching depth.

​General Label

​GENERAL_LABEL

​Use the general label to determine how textures are applied. The general label is used to label branches with user-determined attributes such as supply areas.

​Free Label

​FREE_LABEL

​Use the free label to determine how textures are applied. The free label is similar to the general label.

Mode:

name: textureMode, type: Enum, default: SIZE_ALMOST_EQUAL

Defines the texture mode.

Values:

Title

Name

Description

​Scale By Radius

​SCALE_BY_RADIUS

​Textures appear small on branches with a small average circumference and big on branches with a big average circumference.

​Size Almost Equal

​SIZE_ALMOST_EQUAL

​Textures are approximately the same size across all branches. Wrapping depends on the vessel’s radius, rounded to the nearest whole number.

This avoids visible seams, but could cause a distortion of the textures.

​Size Almost Equal With Seams

​SIZE_ALMOST_EQUAL_WITH_SEAMS

​Textures have approximately the same size on all branches. In contrast to the mode explained above, no rounding is applied here.

This causes visible seams but minimizes texture distortion.

Generate

name: textureCoordinateMode, type: Enum, default: FOR_ALL_ELEMENTS

Defines how texture coordinates are generated.

Values:

Title

Name

Description

​For All Elements

​FOR_ALL_ELEMENTS

​Generates texture coordinates for all elements of the vascular system (caps, intermediate nodes, edges).

​Only For Edges And Caps

​ONLY_FOR_EDGES_AND_CAPS

​Do not generate texture coordinates for intermediate nodes, but for caps and edges.

​Only For Edges And Intermediate Nodes

​ONLY_FOR_EDGES_AND_INTERMEDIATE_NODES

​Do not generate texture coordinates for caps, but for edges and intermediate nodes.

​Only For Edges

​ONLY_FOR_EDGES

​Do not generate texture coordinates for caps and for intermediate nodes, only for edges.

Radius Mode

name: radiusMode, type: Enum, default: MIN_DIST

Defines the radius mode.

Values:

Title

Name

Description

​Min Dist

​MIN_DIST

​The measured min. distance is taken as a radius.

That is not really the minimum distance but has its name from the method to measure the radius.

​Max Dist

​MAX_DIST

​The measured max. distance is taken as a radius.

That is not really the maximum distance but has its name from the method to measure the radius.

​Average Dist

​AVERAGE_DIST

​The average between min. and max. distance.

​Fixed Radius

​FIXED_RADIUS

​A fixed radius is set.

Display Mode

name: displayMode, type: Enum, default: DISPLAY_SURFACE

Defines the display of the data as a vascular system.

Values:

Title

Name

Description

​Skeleton

​DISPLAY_SKELETON

​Only the skeleton is displayed as lines.

​Points

​DISPLAY_POINTS

​The skeleton is displayed by rendering a point at a measured skeleton point.

​Random Points

​DISPLAY_RANDOM_POINTS

​Around each measure skeleton point, a point cloud of random points with a radius in the set mode is rendered.

​Random And Skeleton

​DISPLAY_RANDOM_AND_SKELETON

​Combination of skeleton as a line and cloud of random points in the measured radius.

​Points And Skeleton

​DISPLAY_POINTS_AND_SKELETON

​Shows the measured skeleton points and the measured vessel points (if the latter are stored in the vessel graph).

​Surface

​DISPLAY_SURFACE

​Displays the vascular system with surface polygons.

​Points Jittered

​DISPLAY_POINTS_JITTERED

​The measured vessel points are rendered using random jittering to break the pattern.

​Points And Skel Jittered

​DISPLAY_POINTS_AND_SKEL_JITTERED

​Combination of the skeleton line and jittered measured vessel points.

​Fast Edges

​DISPLAY_FAST_EDGES

​Displays a surface polygon rendering with straight edges between nodes, which do not take any measured skeleton points into account.

Radius Scale

name: radiusScale, type: Float, default: 1

Sets a scale factor for all radii.

Radius Fixed Size

name: radiusFixedSize, type: Float, default: 1

Sets a fixed radius (if in fixed radius mode).

Visible

name: visible, type: Bool, default: TRUE

If checked, the rendering is visible.

Generate texture coordinates

name: texture, type: Bool, default: FALSE

If checked, texture coordinates are being generated.

Num. Smoothing Passes

name: numSmoothingPasses, type: Integer, default: 3, minimum: 0, maximum: 100

Sets the number of smoothing passes for the Laplacian smoothing that is applied to the skeleton points and the radii.

Smoothness

name: overallSmoothness, type: Float, default: 0.69999999, minimum: 0, maximum: 1

Sets a smoothing factor for the Laplacian smoothing of skeleton points and radii.

Smooth independently

name: smoothIndependently, type: Bool, default: FALSE

If checked, the skeleton positions and the radii can be smoothed by using independent smoothing factors.

Radius Smoothness

name: radiusSmoothness, type: Float, default: 0.69999999, minimum: 0, maximum: 1

Sets the smoothing factor for radius smoothing.

Skeleton Smoothness

name: skeletonSmoothness, type: Float, default: 0.69999999, minimum: 0, maximum: 1

Sets the smoothing factor for skeleton position smoothing.

Cap Scaling:

name: endCapScaling, type: Float, default: 1, minimum: 0, maximum: 10

Sets a factor to scale the length the ending caps of vessels.

Use general color

name: useGeneralColor, type: Bool, default: FALSE

If checked, the entire vascular system is colored with one general color.

General Color

name: generalColor, type: Color, default: 1 1 1

Sets the general color for general coloring.

Use integer LUT

name: useIntegerLUT, type: Bool, default: TRUE

If checked, the internally used LUT is an integer LUT; so only integer values are used as a look-up.

If unchecked, float/double values can be used as look-up values; this is especially important if the (skeletons’) label values are in range [0..1].

Use alt. transp.

name: useAlternativeTransparency, type: Bool, default: TRUE

If checked, transparent colors are mapped to Alt. Transp. Color.

Alt. Transp. Color

name: alternativeTransparencyColor, type: Color, default: 0 0 0

Sets an alternative color that is used instead of transparent colors.

Selected Coordinate

name: selectedCoordinate, type: Vector3, default: 0 0 0

Shows the picked coordinate.

Snap Mode

name: snapMode, type: Enum, default: SNAP_TO_SKELETON

Defines the snapping mode for picking.

Values:

Title

Name

Description

​Surface

​SNAP_TO_SURFACE

​The original picking point is shown.

​Skeleton

​SNAP_TO_SKELETON

​The position of the nearest skeleton point is shown.

​Node

​SNAP_TO_NODE

​The position of the nearest node is shown.

Enable

name: enableSelection, type: Bool, default: TRUE

If checked, picking is enabled.

Continuous Hit Check

name: continuousHitCheck, type: Bool, default: FALSE

If checked, the mouse cursor will be a selection cursor only if over the rendering of the vascular system.

Also, if this mode is enabled, the interactive preview can be activated.

Has Clicked On Surface

name: hasClickedOnSurface, type: Trigger

This is triggered from the inside if the surface has been clicked on.

This is to be used to differentiate between a change of Selected Coordinate by clicking or by moving the mouse over the surface.

Nearest Coordinate

name: nearestCoordinate, type: Vector3, persistent: no

Shows the coordinate of the nearest structure, depending on Snap Mode.

Edge ID

name: selectedEdgeId, type: Integer, persistent: no

Shows the ID of the selected edge.

Nearest Radius

name: nearestRadius, type: Float, persistent: no

Shows the radius of the nearest structure.

Nearest Label

name: nearestLabel, type: Integer, persistent: no

Shows the label value of the nearest structure.

Nearest Color

name: nearestColor, type: Color, persistent: no

Shows the color of the nearest structure.

Enable Interactive Preview Mode

name: enableInteractivePreviewMode, type: Bool, default: FALSE

If checked, the module colors the edges and nodes from the position under the mouse cursor to the leaves in the selected color/alpha.

Enable Recursive Highlighting

name: enableRecursiveHighlighting, type: Bool, default: TRUE

If checked, all edges are highlighted recursively down to the leaves.

Highlight Mode

name: highlightMode, type: Enum, default: HIGHLIGHT_OFF, deprecated name: highlightWholeEdge

Defines the highlighting mode.

Values:

Title

Name

Deprecated Name

Description

​Off

​HIGHLIGHT_OFF

​FALSE

​No highlighting.

​Skeleton

​HIGHLIGHT_SKELETON

​Highlights only the skeleton under the cursor.

​Edge

​HIGHLIGHT_EDGE

​TRUE

​Highlights only the edge under the cursor.

​Tree

​HIGHLIGHT_TREE

​Highlights the entire tree under the cursor.

​Nearest Node

​HIGHLIGHT_NEAREST_NODE

​Highlights the nearest node of the selected edge.

​Smart Snap

​HIGHLIGHT_SMART_SNAP

​Highlights the nearest node towards the root if the hit skeleton’s distance to that node is less or equal to Range for Smart Snap in Skeletons.

If an edge has more than one label set (there is a label difference in the edge’s skeleton), the first skeleton of the hit label section towards the root is selected if within range of Range for Smart Snap in Skeletons.

Interactive Preview Color

name: interactivePreviewColor, type: Color, default: 1 1 0

Sets a color for the interactive preview from the position under the mouse to all leaves.

Interactive Preview Alpha

name: interactivePreviewAlpha, type: Float, default: 0.5, minimum: 0, maximum: 1

Sets an alpha value for the interactive preview from the position under the mouse to all leaves.

Range for Smart Snap in Skeletons

name: numSkeletonsSmartSnap, type: Integer, default: 5, minimum: 0

Sets the distance in edge skeletons towards a node for the smart snapping.

Use Min Radius Cut Off

name: useMinRadiusCutOff, type: Bool, default: FALSE

If checked, the resulting vessel visualization is colored as follows:

  • from all roots down to the leaves, while the skeletons’ min radius is greater/equal than Min Radius Cut Off Value, the color set in Cut Off Color (and Cut Off Alpha) is used

  • if a skeleton’s radius is less than the cut-off value, the original color is used from that skeleton on down to the leaves recursively

Min Radius Cut Off Value

name: minRadiusCutOffValue, type: Float, default: 1

Sets the cut-off value for recursively separating the vessel trees by the min radius of skeletons for coloring.

Cut Off Color

name: cutOffColor, type: Color, default: 1 1 1

Sets a color that is used for skeletons with a greater radius than Cut Off Color from the roots to those skeletons.

Cut Off Alpha

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

Sets an alpha value that is used for skeletons with a greater radius than Cut Off Color from the roots to those skeletons.

Use Direct Graph

name: useDirectGraph, type: Bool, default: TRUE

If checked, the module internally directs the input graph.

Note that this might cause also a splitting of the graph, so handle with care!

Work Directly On Input Graph

name: workDirectlyOnInputGraph, type: Bool, default: TRUE

If enabled (default), the module works on the input Graph object, directs the graph and performs some cleanup on the graph.

This can have unexpected side-effects because the input Graph object is modified by these actions. If disabled, a copy of the graph is made, so that the input graph is not modified.

Use skeleton colors

name: useSkeletonColors, type: Bool, default: TRUE

If checked, an internal LUT is use to color the vascular system.

Hidden Fields

interactionProviderID

name: interactionProviderID, type: String

cursorShape

name: cursorShape, type: Enum, default: CROSS_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

​Other Cursor 0

​OTHER_CURSOR_0

​Other Cursor 1

​OTHER_CURSOR_1

​Other Cursor 2

​OTHER_CURSOR_2

​Other Cursor 3

​OTHER_CURSOR_3

​Other Cursor 4

​OTHER_CURSOR_4

​Other Cursor 5

​OTHER_CURSOR_5

​Other Cursor 6

​OTHER_CURSOR_6

​Other Cursor 7

​OTHER_CURSOR_7

​Other Cursor 8

​OTHER_CURSOR_8

​Other Cursor 9

​OTHER_CURSOR_9

​Other Cursor 10

​OTHER_CURSOR_10

​Other Cursor 11

​OTHER_CURSOR_11

​Other Cursor 12

​OTHER_CURSOR_12

​Other Cursor 13

​OTHER_CURSOR_13

​Other Cursor 14

​OTHER_CURSOR_14

​Other Cursor 15

​OTHER_CURSOR_15

​Other Cursor 16

​OTHER_CURSOR_16

​Other Cursor 17

​OTHER_CURSOR_17

​Other Cursor 18

​OTHER_CURSOR_18

​Other Cursor 19

​OTHER_CURSOR_19

​Other Cursor 20

​OTHER_CURSOR_20

​Other Cursor 21

​OTHER_CURSOR_21

​Other Cursor 22

​OTHER_CURSOR_22

​Other Cursor 23

​OTHER_CURSOR_23

​Other Cursor 24

​OTHER_CURSOR_24

​Other Cursor 25

​OTHER_CURSOR_25

​Other Cursor 26

​OTHER_CURSOR_26

​Other Cursor 27

​OTHER_CURSOR_27

​Other Cursor 28

​OTHER_CURSOR_28

​Other Cursor 29

​OTHER_CURSOR_29

​Other Cursor 30

​OTHER_CURSOR_30

​Other Cursor 31

​OTHER_CURSOR_31

​Other Cursor 32

​OTHER_CURSOR_32

​Other Cursor 33

​OTHER_CURSOR_33

​Other Cursor 34

​OTHER_CURSOR_34

​Other Cursor 35

​OTHER_CURSOR_35

​Other Cursor 36

​OTHER_CURSOR_36

​Other Cursor 37

​OTHER_CURSOR_37

​Other Cursor 38

​OTHER_CURSOR_38

​Other Cursor 39

​OTHER_CURSOR_39

​Other Cursor 40

​OTHER_CURSOR_40

​Other Cursor 41

​OTHER_CURSOR_41

​Other Cursor 42

​OTHER_CURSOR_42

​Other Cursor 43

​OTHER_CURSOR_43

​Other Cursor 44

​OTHER_CURSOR_44

​Other Cursor 45

​OTHER_CURSOR_45

​Other Cursor 46

​OTHER_CURSOR_46

​Other Cursor 47

​OTHER_CURSOR_47

​Other Cursor 48

​OTHER_CURSOR_48

​Other Cursor 49

​OTHER_CURSOR_49

​Other Cursor 50

​OTHER_CURSOR_50

​Other Cursor 51

​OTHER_CURSOR_51

​Other Cursor 52

​OTHER_CURSOR_52

​Other Cursor 53

​OTHER_CURSOR_53

​Other Cursor 54

​OTHER_CURSOR_54

​Other Cursor 55

​OTHER_CURSOR_55

​Other Cursor 56

​OTHER_CURSOR_56

​Other Cursor 57

​OTHER_CURSOR_57

​Other Cursor 58

​OTHER_CURSOR_58

​Other Cursor 59

​OTHER_CURSOR_59

​Other Cursor 60

​OTHER_CURSOR_60

​Other Cursor 61

​OTHER_CURSOR_61

​Other Cursor 62

​OTHER_CURSOR_62

​Other Cursor 63

​OTHER_CURSOR_63

​Other Cursor 64

​OTHER_CURSOR_64

​Other Cursor 65

​OTHER_CURSOR_65

​Other Cursor 66

​OTHER_CURSOR_66

​Other Cursor 67

​OTHER_CURSOR_67

​Other Cursor 68

​OTHER_CURSOR_68

​Other Cursor 69

​OTHER_CURSOR_69

​Blank Cursor

​BLANK_CURSOR

selectedNodeId

name: selectedNodeId, type: Integer, persistent: no

selectionTolerance

name: selectionTolerance, type: Float, default: 2

triggerHighlight

name: triggerHighlight, type: Trigger

unsetHighlight

name: unsetHighlight, type: Trigger