Purpose

The MLToVTKArray module offers a simple way to create vtk arrays, just by specifying a number of values in a field or by connecting an ML base object containing point, vector or scalar like structures. The number of tuples in the created array and results from Element Component Size and the number of specified values. If the number of specified values is not dividable by Element Component Size then only the number of tuples is created which can be filled completely with values.

Details

The example network shows a MLToVTKArray module creating a vtkDoubleArray from the connected XMarkerListContainer. The array properties can be seen in the array subpanel of the VTKInputInfos module. You can switch the Use Input toggle to specify the array with values from Values field alternatively.

Tips

With field connections the values field can simply be filled with points, vectors or other numeric values from other modules.

Windows

Default Panel

../../../Modules/ML/MLVTKAdapters/mhelp/Images/Screenshots/MLToVTKArray._default.png

Input Fields

inputList

name: inputList, type: MLBase

The input can be used to connect base objects containing a PointList, a VectorList, an XMarkerList or an XMarkerListContainer. It is only used if Use Input is enabled.

Output Fields

outputArray

name: outputArray, type: VTKObjectWrapper(MLBase), deprecated name: outputAbstractArray

The module presents the created vtkArray object as base object at its output 0 or a NULL base pointer if the array could not be created successfully (which then is also mentioned with a comment in the status field).

outputDataObject

name: outputDataObject, type: VTKObjectWrapper(MLBase)

At output 1 a vtkDataObject is provided which contains the generated vtkArray. It is useful, because many vtk filters expect a vtkDataObject containing a vtkArray instead of a vtkArray itself.

Parameter Fields

Field Index

Array Type: Enum
Element Component Size: Integer
Status: String
String Line Values: String
Use Input: Bool
Values: String

Visible Fields

Array Type

name: arrayType, type: Enum, default: Bit

Specifies the type of array to be set at the output. All selections but the last one define numeric array types which also can be composed in tuples. The last selection “StringLineList” disables the option for input connector usage and for numeric tuple selection- then only the String Line Values can be used for value inputs. All unused input fields are made insensitive in this case.

Values:

Title Name
Bit Bit
Char Char
Double Double
Float Float
Id Type IdType
Int Int
Long Long
Short Short
Signed Char SignedChar
Type Float32 TypeFloat32
Type Float64 TypeFloat64
Type Int16 TypeInt16
Type Int32 TypeInt32
Type Int64 TypeInt64
Type Int8 TypeInt8
Type UInt16 TypeUInt16
Type UInt32 TypeUInt32
Type UInt8 TypeUInt8
Unsigned Char UnsignedChar
Unsigned Int UnsignedInt
Unsigned Long UnsignedLong
Unsigned Short UnsignedShort
String Line List StringLineList

Element Component Size

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

Number of components in each tuple.

Values

name: values, type: String

All values to be stored in array Element Component Size elements define one tuple, default is “”, thus no values are specified. The number of specified values divided by Element Component Size implicitly specifies the number of tuples in the created array. The division result is rounded down if necessary.

String Line Values

name: stringLineValues, type: String

This field allows the specification of string values. each line defines a string which is inserted as one entry in a vtkStringArray if the Array Type StringLineList is selected.

Use Input

name: useInput, type: Bool, default: FALSE

If enabled the values to be used for the array are retrieved from the input connector. Supported are PointLists, VectorLists and XMarkerLists and XMarkerListContainer values, default is off. The number of values retrieved from the list divided by Element Component Size implicitly specifies the number of tuples in the created array. The division result is rounded down if necessary.

Status

name: status, type: String, persistent: no

Shows state of array at output, thus also problems if module output could not be set correctly.