excavate_brick3D


Synopsis

perform 3D texture mapping on a 3D uniform field

Input Ports

in_field

Mesh_Unif + Dim3 + Node_Data + Byte + Scalar

texture_map

colors, from colormap

ui_parent

user interface parent object

 

Parameters

X, Y, Z

UIslider

set the X, Y, and Z position of the slice planes

Flip X

UItoggle

set cube to positive or negative X

Flip Y

UItoggle

set cube to positive or negative Y

Flip Z

UItoggle

set cube to positive or negative Z

Draw Sides

UItoggle

show volume's sides

 

Output Ports

out_fld

Mesh + Node_Data

out_obj

output renderable object

 

Description

excavate_brick3d is a technique for visualizing 3D uniform volume data. The volume is displayed with an X, Y, and Z slice plane. The slice removes a rectangular subvolume of the field, revealing the structures inside.

Texture mapping is much faster than the sampling techniques used by slice, particularly for large datasets. Texture mapping's point sampling is done at the resolution of the data; thus, differences in data values within a small area are not obscured as they can be with slice.

Note: The excavate_brick3D module does not generate vertex normals by default.

Input Ports

in_field

The input is a reference to a Mesh_Unif, Dim3 field with scalar byte Node_Data.

texture_map

A colormap to provide the texture map. From Libraries.Main.Fields.Data.colormap.

ui_parent

A port to connect to a user interface object that contains the macro's widgets. By default, it is connected to the default user interface object in the application in which the macro is instanced. (This default connection is not drawn.)

Parameters

X
Y
Z

UIsliders that set the X, Y, Z position of their respective slice planes. The default is the mid-point of the input field's dimensions. The range is the field's dimensions.

Flip X
Flip Y
Flip Z

UItoggles. These select whether the excavating cube should be positioned on the positive or negative axis for each of the X, Y, and Z dimensions. When on, the cube is positioned on the negative axis. The default is off.

Draw Sides

UItoggle. When off, only the excavating cube is drawn. When on, a texture map of the bounding faces of the volume is also drawn. The default is off.

Output Ports

out_fld

The output is a new Mesh and Node_Data. u, v, w textures are added.

out_obj

This is a renderable version of the output field.

Algorithm

excavate_brick3D creates its picture of the volume data using 3D texture mapping. In this method, the boundary of the volume has three values, u, v, w, associated with each of its vertices. Where the slice planes intersect this volume, u, v, w values are computed for the vertices of the resulting solid. These values are attached to the vertices of the output object. Viewers use the u, v, w information to create the texture-mapped rendering.

Example

Libraries.Examples.Vizualization.Excavate_Brick: examples/excvt.v

File

v/modules.v

See also

Related modules