WEMClip¶
-
MLModule
¶ genre WEMProcessing
author MeVis Medical Solutions AG
package MeVisLab/Standard
dll MLWEMModules
definition MLWEMModules.def inherits from WEMProcessor
keywords plane
Purpose¶
The WEMClip
module has been deprecated, because it does too many things at once.
It should be replaced with one of the following modules:
The module WEMClip
clips a WEM according to a given plane and generates CSOs that represent an intersection of a WEM and a plane.
Usage¶
Connect any WEM to the input of the WEMClip
module, choose a plane and click the apply button.
Details¶
Clipping (also known as culling) is a very common operation in 3D graphics. When viewing a 3D scene, all 3D meshes falling outside the user’s view or only partly visible need to be clipped against the viewing frustum. In comparison with such a frustum, which has six clipping planes, the WEMClip
module only has one. It intersects the WEM and each face either lies on the interior side or exterior side of the plane.
A smaller portion of the 3D mesh faces intersect the clipping plane. Depending on how the interior and exterior of the clipping plane are defined, some part of the WEM is kept, while the other faces are discarded. The faces intersecting the plane change their geometry since one, two, three or more nodes become invisible.
Input Fields¶
inWEM¶
-
name:
inWEM
, type:
WEM(MLBase)
¶ - For accessing this object via scripting see the Scripting Reference:
MLWEMWrapper
.
Output Fields¶
The clipped WEM and a CSO for the clipped path (can be more than a single CSO).
outWEM¶
-
name:
outWEM
, type:
WEM(MLBase)
¶ - For accessing this object via scripting see the Scripting Reference:
MLWEMWrapper
.
outCSOList¶
-
name:
outCSOList
, type:
CSOList(MLBase)
¶ - For accessing this object via scripting see the Scripting Reference:
MLCSOListWrapper
.
outXMarkerList¶
-
name:
outXMarkerList
, type:
XMarkerList(MLBase)
¶ - For accessing this object via scripting see the Scripting Reference:
MLXMarkerListWrapper
.
Parameter Fields¶
Field Index¶
Apply : Trigger |
id : Integer |
progress : Float |
Auto Apply : Bool |
isProcessing : Bool |
shouldComputeNormals : Bool |
Clear : Trigger |
Label : String |
Target Dist. : Float |
Description : String |
listenToFinishNotifications : Bool |
triangulationMode : Enum |
elapsedTime : Float |
listenToRepaintNotifications : Bool |
Update Mode : Enum |
Generate CSOs : Bool |
listenToSelectionChangedNotifications : Bool |
Which Output : Enum |
Generate Edges : Bool |
Overwrite label and description : Bool |
workDirectlyOnInputWEMs : Bool |
Generate XMarkerList : Bool |
Plane : Plane |
Visible Fields¶
Auto Apply¶
-
name:
autoApply
, type:
Bool
, default:
TRUE
¶ If checked, all changes of parameters lead to a new clipping of the input WEM.
see also WEMGenerator.autoApply
Update Mode¶
-
name:
updateMode
, type:
Enum
, default:
AutoUpdate
, deprecated name:
autoUpdate
¶ Defines how this module should react on any input field change.
see also WEMGenerator.updateMode
Apply¶
-
name:
apply
, type:
Trigger
¶ If pressed, the input WEM is clipped against the plane.
see also WEMGenerator.apply
Clear¶
-
name:
clear
, type:
Trigger
¶ If pressed, the output WEM is cleared (made empty).
see also WEMGenerator.clear
Overwrite label and description¶
-
name:
overwriteLabelDescription
, type:
Bool
, default:
FALSE
¶ If checked, label and description strings are set in the output WEM to
Label
andDescription
.
Label¶
-
name:
label
, type:
String
¶ Sets a label string in the output WEM.
see also WEMGenerator.label
Description¶
-
name:
description
, type:
String
¶ Sets a description string in the output WEM.
see also WEMGenerator.description
Generate XMarkerList¶
-
name:
generateXMarkerList
, type:
Bool
, default:
FALSE
¶ If checked, the module outputs an XMarkerList (
mlXMarkerList.h
) where the marker are located at the border WEM nodes with the nodes’ normal as the marker’svec
.
Target Dist.¶
-
name:
targetMarkerDistance
, type:
Float
, default:
0
¶ Sets a target distance between the markers to be generated.
Since the markers will be evenly distributed along a cut, the real distance between the markers will differ slightly from this value.
Plane¶
-
name:
plane
, type:
Plane
, default:
0 0 1 0
¶ Sets the clipping plane, given by its planar equation Ax+By+Cz+D = 0.
Generate Edges¶
-
name:
generateEdges
, type:
Bool
, default:
TRUE
¶ If checked, edges are generated on the output meshes.
If edges are not required for the rest of the pipeline, unchecking this option saves time.
Generate CSOs¶
-
name:
generateCSOs
, type:
Bool
, default:
TRUE
¶ If checked, CSOs are generated on the output. Generation of CSOs require edges.
Which Output¶
-
name:
whichOutput
, type:
Enum
, default:
PositiveSide
¶ Deinfes which output mesh is generated.
By default both parts of the clipped WEM are generated, but either half can be chosen.
Values:
Title | Name | Deprecated Name | Description |
---|---|---|---|
Positive Side | PositiveSide | Inner | Outputs the WEM that lies on the positive side of the plane. |
Negative Side | NegativeSide | Outer | Outputs the WEM that lies on the negative side of the plane. |
Nothing | Nothing | No clipped WEM is returned; this is a speed-up if you are only interested in the cutting edge as CSOs or a marker list. |