TypeFromDimension¶
- MLModule¶
genre
author
package
dll
definition
see also
InterleaveDimension,TypeFromScalars,TypeToScalars,Info,TypeComposer,TypeDecomposer,TypeDecomposerN,TypeComposerNkeywords
compose,merge,extract,separate,merge,bind,join,mix,connect,link,tie,pack,extended,carrier,datatype,voxel,complex,vector,matrix,components
Purpose¶
The module TypeFromDimension creates a non-scalar voxel image from the components of a given dimension.
Tips¶
The
Component Base Indexescan also be used to reorder the composed voxel components; for example, if the y-components are stored first in a dimension and then the x-components at higher positions.The
Component Base Indexescan be, for example, 0, 3, 6, andBlock Offsetcan be 1; in this way, separated vector channels can be composed.
Windows¶
Default Panel¶
Input Fields¶
input0¶
- name: input0, type: Image¶
Image whose extent in the
Source Dimshould be large enough to compose its values to at least one non-scalar voxel ofOutput Type.
Output Fields¶
output0¶
- name: output0, type: Image¶
The output image of the non-scalar voxel type specified in
Output Type.
Parameter Fields¶
Field Index¶
|
|
|
|
|
Visible Fields¶
Output Type¶
- name: outputType, type: Enum, default: vec3¶
Defines the voxel type of the output image; currently, it must be a non-scalar voxel type, which is composed of the values along the given
Source Dim.Scalar voxel types will lead to an invalidated output image.
Values:
Title |
Name |
|---|---|
int8 |
int8 |
unsigned int8 |
unsigned int8 |
int16 |
int16 |
unsigned int16 |
unsigned int16 |
int32 |
int32 |
unsigned int32 |
unsigned int32 |
float |
float |
double |
double |
int64 |
int64 |
unsigned int64 |
unsigned int64 |
complexf |
complexf |
complexd |
complexd |
quaternionf |
quaternionf |
quaterniond |
quaterniond |
vec2 |
vec2 |
vec3 |
vec3 |
vec4 |
vec4 |
vec5 |
vec5 |
vec6 |
vec6 |
vec7 |
vec7 |
vec8 |
vec8 |
vec9 |
vec9 |
vec10 |
vec10 |
vec16 |
vec16 |
vec32 |
vec32 |
vec64 |
vec64 |
Vector2i8 |
Vector2i8 |
Vector2i16 |
Vector2i16 |
Vector2i32 |
Vector2i32 |
Vector2i64 |
Vector2i64 |
Vector3i8 |
Vector3i8 |
Vector3i16 |
Vector3i16 |
Vector3i32 |
Vector3i32 |
Vector3i64 |
Vector3i64 |
Vector4i8 |
Vector4i8 |
Vector4i16 |
Vector4i16 |
Vector4i32 |
Vector4i32 |
Vector4i64 |
Vector4i64 |
Vector5i8 |
Vector5i8 |
Vector5i16 |
Vector5i16 |
Vector5i32 |
Vector5i32 |
Vector5i64 |
Vector5i64 |
Vector6i8 |
Vector6i8 |
Vector6i16 |
Vector6i16 |
Vector6i32 |
Vector6i32 |
Vector6i64 |
Vector6i64 |
Vector7i8 |
Vector7i8 |
Vector7i16 |
Vector7i16 |
Vector7i32 |
Vector7i32 |
Vector7i64 |
Vector7i64 |
Vector8i8 |
Vector8i8 |
Vector8i16 |
Vector8i16 |
Vector8i32 |
Vector8i32 |
Vector8i64 |
Vector8i64 |
Vector9i8 |
Vector9i8 |
Vector9i16 |
Vector9i16 |
Vector9i32 |
Vector9i32 |
Vector9i64 |
Vector9i64 |
Vector10i8 |
Vector10i8 |
Vector10i16 |
Vector10i16 |
Vector10i32 |
Vector10i32 |
Vector10i64 |
Vector10i64 |
Vector16i8 |
Vector16i8 |
Vector16i16 |
Vector16i16 |
Vector16i32 |
Vector16i32 |
Vector16i64 |
Vector16i64 |
Vector32i8 |
Vector32i8 |
Vector32i16 |
Vector32i16 |
Vector32i32 |
Vector32i32 |
Vector32i64 |
Vector32i64 |
Vector64i8 |
Vector64i8 |
Vector64i16 |
Vector64i16 |
Vector64i32 |
Vector64i32 |
Vector64i64 |
Vector64i64 |
mat2 |
mat2 |
mat3 |
mat3 |
mat4 |
mat4 |
mat5 |
mat5 |
mat6 |
mat6 |
matf2 |
matf2 |
matf3 |
matf3 |
matf4 |
matf4 |
matf5 |
matf5 |
matf6 |
matf6 |
vecf2 |
vecf2 |
vecf3 |
vecf3 |
vecf4 |
vecf4 |
vecf5 |
vecf5 |
vecf6 |
vecf6 |
vecf7 |
vecf7 |
vecf8 |
vecf8 |
vecf9 |
vecf9 |
vecf10 |
vecf10 |
vecf16 |
vecf16 |
vecf32 |
vecf32 |
vecf64 |
vecf64 |
Component Base Indexes¶
- name: componentBaseIndexes, type: String¶
Sets the positions of the first components of the first target voxel to be created.
For example:
If a vec3 image is created and
Component Base Indexesare 0, 1, 2, and theSource Dimis c, then a created output voxel reads its component values from the c-positions 0, 1, and 2.If
Component Base Indexesare 0, 3, 6, then a created output voxel reads its component values from the c-positions 0, 3, and 6.See
Block Offsetto find out from where the source components of the subsequent target voxels are read.
Source Dim¶
- name: sourceDim, type: Enum, default: T¶
Sets the dimension to be reordered and packed into non-scalar voxel.
Values:
Title |
Name |
|---|---|
X |
X |
Y |
Y |
Z |
Z |
C |
C |
T |
T |
U |
U |
Block Offset¶
- name: blockOffset, type: Integer, default: 1, minimum: 1¶
Sets the index difference between corresponding source components of two subsequent target voxels.
The source dimension
Source Dimcan contain more components than necessary to create one non-scalar target voxel. TheComponent Base Indexesdetermines the indexes and order of the source components of the first target voxel. However, subsequent voxels have other locations, which usually differ from the first ones by an offset that can be specified byBlock Offset.Thus, the
Block Offsetis the difference between the index of a source component for the first target voxel and the corresponding index of the next target voxel.Two typical configuration examples:
If components 0, 1, and 2 are packed into the first vec3 target voxel (
Component Base Indexesare 0, 1, and 2), and the component 3, 4, and 5 are packed into the second target voxel, then the Block Offset is 3. (Interleaved source components.)If components 0, 3, and 6 are packed into the first vec3 target voxel (
Component Base Indexesare 0, 3, and 6), the components 1, 4, and 7 are packed into the second target voxel, and the components 2, 5, and 8 are packed into the third target voxel, then theBlock Offsetis 1. (Separated source components.)
Fill Value¶
- name: fillValue, type: Double, default: 0¶
Sets a value used for target voxel components whose corresponding source voxels are outside the valid image range.