XMarkerModify

MLModule
genre Marker
author Florian Weiler
package FMEwork/ReleaseMeVis
dll MLXMarkerUtils
definition MLXMarkerUtils.def
keywords translate, vector, scale, swap, raster, type, position

Purpose

This module allows to transform XMarkers using a variety of different modes.

Usage

Attach an XMarkerList to the input, select a transformation mode, and press update (or activate auto-update / auto-apply). The module will generate a modified copy of the input list.

Windows

Default Panel

../../../Modules/ML/MLXMarkerUtils/mhelp/Images/Screenshots/XMarkerModify._default.png

Input Fields

inXMarkerList

name: inXMarkerList, type: XMarkerList(MLBase)

The input list.

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

Output Fields

outXMarkerList

name: outXMarkerList, type: XMarkerList(MLBase)

A modified copy of the input list.

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

Parameter Fields

Field Index

[]: Trigger Scalar Parameter: Double
Clear: Trigger Status Code: Enum
doNotClearOnFailedUpdate: Bool Status Message: String
Has Valid Output: Bool Update: Trigger
Mode: Enum Vector Parameter: Vector6
On Input Change Behavior: Enum  
Plane Parameter: Plane  
Project all: Bool  

Visible Fields

Update

name: update, type: Trigger

Manually trigger an update.

Clear

name: clear, type: Trigger

Clears all output field values to a clean initial state.

On Input Change Behavior

name: onInputChangeBehavior, type: Enum, default: Clear, deprecated name: autoApply,autoUpdate,shouldAutoUpdate,shouldUpdateAutomatically

Defines whether an update should be performed on field changes.

Values:

Title Name Deprecated Name
Update Update TRUE
Clear Clear FALSE

Status Code

name: statusCode, type: Enum, persistent: no

Reflects module’s status (successful or failed computations) as one of some predefined enumeration values.

Values:

Title Name
Ok Ok
Invalid input object Invalid input object
Invalid input parameter Invalid input parameter
Internal error Internal error

Status Message

name: statusMessage, type: String, persistent: no

Gives additional, detailed information about status code as human-readable message.

Has Valid Output

name: hasValidOutput, type: Bool, persistent: no

Indicates validity of output field values (success of computation).

[]

name: updateDone, type: Trigger, persistent: no

Notifies that an update was performed (Check status interface fields to identify success or failure).

Mode

name: inMode, type: Enum, default: Translate By Vector, deprecated name: modes

Define how to modify the input XMarkerList.

Values:

Title Name Description
Translate By Vector Translate By Vector Translate all XMarkers by the direction defined by its internal vector. An additional scaling factor can be applied.
Translate by normalized Vector Translate by normalized Vector Translate all XMarkers by the direction defined by its normalized internal vector. An additional scaling factor can be applied.
Scale Vector Scale Vector Scale the internal vector of each marker by a given factor.
Set Vector Length Set Vector Length Set the length of each vector to a constant value. Setting each vectors length to 1 will normalize the vectors.
Swap Vector & Position Swap Vector & Position Swap a Markers Position and Vector. Note: An XMarkers Vector is of type vec3, whereas the position if of type vec6. When swapping these two, the c- t- and u-dimension of the XMarkers position will consequently get lost.
Translate by constant Vector Translate by constant Vector Translates all XMarkers positions by a constant vector.
Translate relative to position Translate relative to position Translates all XMarkers relative to a given reference position (ref + (pos - ref)*scale). The difference between the reference position and a XMarkers position defines the direction of transformation. A scaling factor different than 1 needs to be set in order to actually perform the transformation.
Add constant Vector to Vector Add constant Vector to Vector Add a constant vector to the internal vector of each marker.
Snap to raster Snap to raster Snaps marker positions to a raster defined by Vector Parameter
Change type Change type Sets the type of each marker to the scalar parameter.
Set Vector pointing to next Marker Set Vector pointing to next Marker Sets the vector such that it points to the next marker. The vector of the last marker will have the length 0.
Cut Vector by Plane Cut Vector by Plane If the vector cuts the given plane, it is truncated to the intersection point. If Project all is checked, shorted vectors are extended to the intersection point as well.
Set Vector pointing to constant Point Set Vector pointing to constant Point Sets the vector such that it points to a constant point.
Snap Vector To Axis Snap Vector To Axis Only keeps the vector component with the largest absolute value and sets the other two components to 0.

Scalar Parameter

name: inScalarParameter, type: Double, default: 0, deprecated name: scalarParameter

The scalar parameter is used to control the scaling factor and also to define the fixed length for a markers vector.

Vector Parameter

name: inVectorParameter, type: Vector6, default: 0 0 0 0 0 0, deprecated name: vectorParameter

The vector parameter is used only for the modes Translate by constant Vector and Translate relative to position.

Plane Parameter

name: inPlaneParameter, type: Plane, default: 0 0 0 0

The plane parameter is used only for the mode Cut Vector by Plane.

Project all

name: inBoolParameter, type: Bool, default: FALSE

If True, All vectors, independent of length and direction are intersected with the plane. If false, only intersections considering start and end point of the vector are considered.

Hidden Fields

doNotClearOnFailedUpdate

name: doNotClearOnFailedUpdate, type: Bool, persistent: no

Prevents automated clear after update failed. This does not affect status fields. It enables the developer to analyze module’s state after failure.