SoView2DWEMEditor
-
InventorModule
-
Purpose
The SoView2DWEMEditor provides the possibility of interactively deform a WEM surface in a certain spherical range.
Usage
Connect this module to a View2D inventor input. Connect some WEM to its input.
Make sure you also render the WEM-scene in 2D by using either VoxelizeInventorScene (slow) or SoView2DScene (better). Have a look at the example network.
Details
If clicking onto the View2D in the vicinity of a WEM contour, all nodes in a certain sphere of influence are collected. Those nodes will follow the mouse movement to a certain degree, optionally smoothed by a sigmoid function.
Interaction
Simply click on the 2D viewer into the vicinity of a WEM contour. Hold the according button pressed (whichever you chose on the 'Button' panel) and deform the WEM surface interactively (click & drag).
Windows
Default Panel
Output Fields
self
-
name: self, type: SoNode
Parameter Fields
Visible Fields
Influence Radius
-
name: influenceRadius, type: Float, default: 10, minimum: 0
The radius of influence around a selected node: all nodes within this radius are deformed.
The radius is measured in world coordinates.
Patch Mode
-
name: patchMode, type: Enum, default: WEM_PATCH_MODE_CLOSEST
Determines which nodes of which WEMPatch are being displaced.
Values:
Title |
Name |
Description |
Closest |
WEM_PATCH_MODE_CLOSEST |
Only the nodes of the closest WEMPatch are being displaced. |
All |
WEM_PATCH_MODE_ALL |
All nodes of all WEMPatches in the influence radius are being displaced. |
Interpolation Function
-
name: interpolationFunction, type: Enum, default: WEM_INTERPOLATION_FUNCTION_COSINE
Determines the type of influence interpolation.
Values:
Title |
Name |
Description |
Cosine |
WEM_INTERPOLATION_FUNCTION_COSINE |
Smooth characteristic. |
Linear |
WEM_INTERPOLATION_FUNCTION_LINEAR |
Triangular characteristic. |
Use Angle Damping
-
name: useAngleDamping, type: Bool, default: TRUE
If checked, only those nodes with a node normal that has an angle less than 90 degree with the node normal of the node closest to the mouse pointer are being displaced.
Recompute Normals While Interacting
-
name: recomputeNormalsWhileInteracting, type: Bool, default: FALSE
If checked, the deformed WEM's normals are recomputed while interacting.
Note that this slows down the interaction.
Recompute Normals On Release
-
name: recomputeNormalsOnRelease, type: Bool, default: TRUE
If checked, the WEM's normals are recomputed on release (finishing the interaction and releasing the mouse button).
Hidden Fields
drawingOn
-
name: drawingOn, type: Bool, default: TRUE
editingOn
-
name: editingOn, type: Bool, default: TRUE
maskValid
-
name: maskValid, type: Bool, default: FALSE
fixZOn
-
name: fixZOn, type: Bool, default: TRUE
color
-
name: color, type: Color, default: 1 1 1
selectionTolerance
-
name: selectionTolerance, type: Float, default: 24
needsValidVoxel
-
name: needsValidVoxel, type: Bool, default: TRUE
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 |
Lut Cursor |
LUT_CURSOR |
Slicing Cursor |
SLICING_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 1 Cursor |
LUT_1_CURSOR |
Lut 2 Cursor |
LUT_2_CURSOR |
Lut 3 Cursor |
LUT_3_CURSOR |