Tools

  • group objects

    Organize multiple renderable objects by grouping them into a single renderable object.

  • group objects to 2d overlay

    Applies all connected module's output to the Viewer's 2D overlay. Objects in the overlay are not transformed (rotated, zoomed, panned). These objects are locked in position. This provides a mechanism to apply graphics like drawing title blocks or company logos.

  • trigger script

    Allows any change in a module property to trigger a python script.

  • merge fields

    Combine the input fields from up to 4 separate inputs into a unified single field with any number of nodal data components.

  • float math

    Perform mathematical operations on values coming from various numeric and string input ports to generate a resultant value.

  • create tin

    Convert nodes into a three-dimensional surface of triangular cells representing an unstructured mesh.

  • material to cellsets

    Recreates the cell sets based on nodal data.

  • loop

    Iterates an operation. For example, you could use a loop object to control the movement of an object in your application; such as incrementing the movement of a slider for a slice plane.

  • modify data 3d

    Alter the data within its inner radius to a set value and the blend data in its outer radius between its original value and the set modification value.

  • create mask

    Create convex and concave hulls from points.

Subsections of Tools

group objects

The group objects module organizes multiple renderable objects by grouping them into a single renderable object. Unlike a data object, group objects does not include data. Instead, it serves as a node in the rendering hierarchy that groups other data objects together and supplies common attributes for them. This object is connected directly to one of the viewers or to another data object.

Group objects combines the following:

  • DefaultDatamap to convert scalar node or cell data to RGB color values. By default, the datamap’s minimum and maximum values are 0 and 255, respectively. This datamap is inherited by any children objects if they do not have their own datamaps.
  • DefaultProps to control color, material, line attribute, and geometrical attributes.
  • DefaultModes to control point, line, surface, volume, and bounds rendering modes.
  • DefaultPickInfo to contain information when this object is picked.
  • DefaultObject to control visibility, pickability, caching, transform mode, surface conversion, and image display attributes.

Ports

DirectionNameTypeDescription
InputInput ObjectsRenderableAny number of renderable objects.
OutputOutput ObjectRenderableA renderable object created from all passed in objects.

Properties

PropertyTypeDescription
VisibilityBooleanThe Visibility toggle will turn on or off the visible state of the output objects.

group objects to 2d overlay

The group objects to 2d overlay module applies any connected module’s output to the viewer’s 2D overlay. Objects in the overlay are not transformed (rotated, zoomed, panned). These objects are locked in position. This provides a mechanism to apply graphics like drawing title blocks or company logos.

You must ensure that the object sent to the 2D overlay fits inside its limited spatial extent. The 2D overlay is a window with an x-extent from -1.0 to 1.0. The y-extent is dependent on the aspect ratio of the viewer. With a default viewer having a 4:3 aspect ratio, it is three-quarters of the x-extent (e.g. -0.75 to 0.75).

Ports

DirectionNameTypeDescription
InputInput ObjectsRenderableAny number of renderable objects.
OutputOutput ObjectRenderableA renderable object created from all passed in objects.

Properties

This module has no user-configurable properties.

trigger script

The trigger script module provides a powerful way to link parameters and actions of multiple modules. This gives you the ability for a sequence of events to be “triggered” as the result of one or more parameters changing.

The module requires a Python script be created, which runs when you “Add” triggers. Triggers are module parameters that might change and thereby cause the script to be run. The script can do just about anything.

In addition to the triggers that you specify, there are 4 input (and output) ports that accept numbers (such as a plume level) that can be used in your script, and are more readily accessible without editing the Python script.

Ports

DirectionNameTypeDescription
InputInput Value N1NumberA value to use as a variable.
InputInput Value N2NumberA value to use as a variable.
InputInput Value N3NumberA value to use as a variable.
InputInput Value N4NumberA value to use as a variable.
OutputOutput Value N1NumberA value to use as a variable.
OutputOutput Value N2NumberA value to use as a variable.
OutputOutput Value N3NumberA value to use as a variable.
OutputOutput Value N4NumberA value to use as a variable.

Properties

PropertyTypeDescription
Allow RunBooleanDetermines whether the module is allowed to execute. Set to True to allow this module to run.
ExecuteButtonExecutes the script immediately.
FilenameStringThe script which is run whenever appropriate triggers occur.
TriggersStringThe parameters used to trigger the script to execute.
Run On LoadBooleanDetermines whether the module is allowed to execute when the application is being loaded. Set to True to allow this module to run.

Variables

PropertyTypeDescription
N1DoubleNumber passed into script.
N2DoubleNumber passed into script.
N3DoubleNumber passed into script.
N4DoubleNumber passed into script.
TriggerStringThe parameter which triggered the script.

merge fields

The merge fields module combines the input fields from up to 4 separate inputs into a unified single field with any number of nodal data components, which can be output to other modules for processing or directly to the viewer. This is useful when you want to slice through or otherwise subset multiple fields using the same criteria.

You must be aware that fields contain more than just grids and data. They contain meta-data set during the creation of those grids and data, including, but not limited to:

  • Data Processing (log or linear)
  • Coordinate units
  • Data units (mg/kg or %)
  • Data Min and Max values (ensures that datamaps from kriging match datamaps in post samples)

NOTE: There are potential dangers and serious consequences of merging fields because we allow for merging of data without requiring strict name or meta data matching.

  • Meta data from the leftmost input field is always used for the merged result.
  • You can only merge fields having the same number of nodal and/or cell data components.
  • We do not require strict name matching, therefore it is possible to merge data with very negative consequences. Examples are:
    • Benzene data from one input field with Toluene from another field.
    • Log Processed TPH data with linear processed TPH data.
    • One field with coordinate units of meters with another in feet.
  • Overlapping Volumes: When you merge fields you must be aware that this is not an alternative way to create the union of multiple plumes.
    • The merge fields module does not remove overlapping volumes.
    • Volume calculations with volumetrics can count overlapping regions multiple times giving nonsensical values.

The Merge Cell Sets When Possible option works only if you have matching types and names. A good and appropriate example is merging fault blocks so that all “Clay” cell sets are controlled as a single entity.

Ports

DirectionNameTypeDescription
InputFirst Input FieldFieldA field to be used for merging.
InputSecond Input FieldFieldA field to be used for merging.
InputThird Input FieldFieldA field to be used for merging.
InputFourth Input FieldFieldA field to be used for merging.
OutputOutput FieldFieldA field containing the merged fields.
OutputOutput ObjectRenderableA renderable object displaying the data from the merged fields.

Properties

PropertyTypeDescription
Allow RunBooleanThe Allow Run toggle will prevent the module from running. This allows the user to make multiple changes without the module constantly updating.
ExecuteButtonThe Run Once button will cause the module to run one time even if the Allow Run toggle has been turned off.
Merge Cell Sets When PossibleBooleanIf all input fields have matching cell set types and names, automatically merge them in output.
Nodal Data From Field1Multi-selectThe nodal data from Field 1 that should be included in the output. Be sure that the order of the components is identical from each input.
Cell Data From Field1Multi-selectThe cell data from Field 1 that should be included in the output. Be sure that the order of the components is identical from each input.
Nodal Data From Field2Multi-selectThe nodal data from Field 2 that should be included in the output. Be sure that the order of the components is identical from each input.
Cell Data From Field2Multi-selectThe cell data from Field 2 that should be included in the output. Be sure that the order of the components is identical from each input.
Nodal Data From Field3Multi-selectThe nodal data from Field 3 that should be included in the output. Be sure that the order of the components is identical from each input.
Cell Data From Field3Multi-selectThe cell data from Field 3 that should be included in the output. Be sure that the order of the components is identical from each input.
Nodal Data From Field4Multi-selectThe nodal data from Field 4 that should be included in the output. Be sure that the order of the components is identical from each input.
Cell Data From Field4Multi-selectThe cell data from Field 4 that should be included in the output. Be sure that the order of the components is identical from each input.

float math

The float math module provides a simple means to perform mathematical operations on numbers coming from up to 4 input ports. By using multiple float math modules, any number of values may be combined.

The default equation is N1 + N2 + N3 + N4, which adds all four input values. Any of the available mathematical operators may be used in the expression.

The output Result Value port produces the numeric value resulting from the equation. The value will update when any of the input values are changed.

Ports

DirectionNameTypeDescription
InputInput Value 1NumberA value to use as a variable.
InputInput Value 2NumberA value to use as a variable.
InputInput Value 3NumberA value to use as a variable.
InputInput Value 4NumberA value to use as a variable.
OutputOutput Value 1NumberA value to use as a variable.
OutputOutput Value 2NumberA value to use as a variable.
OutputOutput Value 3NumberA value to use as a variable.
OutputOutput Value 4NumberA value to use as a variable.
OutputResult ValueNumberA value created by solving the module expression.

Properties

PropertyTypeDescription
ExpressionStringThe Expression allows the user to control the sequence of variables used to create the output double value.
N1DoubleA double value that can be used as the variable {N1} in the expression.
N2DoubleA double value that can be used as the variable {N2} in the expression.
N3DoubleA double value that can be used as the variable {N3} in the expression.
N4DoubleA double value that can be used as the variable {N4} in the expression.
ResultDoubleThe output double value created by resolving the Expression.

create tin

The create tin module is used to convert scattered sample data into a three-dimensional surface of triangular cells representing an unstructured mesh.

“Scattered sample data” means that there are discrete nodes in space. An example would be geology or analyte (e.g. chemistry) data where the coordinates are the x, y, and elevation of a measured parameter. The data is “scattered” because there is not necessarily an implicit grid of data.

Create tin uses a proprietary version of the Delaunay tessellation algorithm.

Ports

DirectionNameTypeDescription
InputInput PointsFieldThe main input field consisting of points or lines.
OutputOutput FieldFieldThe field with selected data.
OutputOutput ObjectRenderableA renderable object displaying the selected data.

Properties

PropertyTypeDescription
Color ByChoice: Node Data, Cell Data, Solid ColorThe Color By selection sets the data map of the output TIN.
Nodal Data ComponentChoiceIf Color By is set to Node Data, the Nodal Data Component selects which nodal data will set the data map.
Cell Data ComponentChoiceIf Color By is set to Cell Data, the Cell Data Component selects which cell data will set the data map.
Vector ComponentIntegerIf Color By is set to Node Data, the Vector Component allows the user to use just a single component of a vector data to set the data map.
Use Vector MagnitudeBooleanIf Color By is set to Node Data, allows the user to use the magnitude of a vector data to set the data map.
Object ColorColorIf Color By is set to Solid Color, the Object Color will set the data map.

material to cellsets

The material to cellsets module is intended to receive a 3D field into its input port which has been processed through a module like plume. If the original field (pre-plume) had multiple cell sets related to geologic units or materials, the output of plume will generally have only two cell sets which comprise all hexahedron and all tetrahedron cells. The ability to control the visibility of the layer-cell sets is normally lost.

This module takes plume’s output and recreates the cell sets based on nodal data. However, since each geologic layer will likely have two cell sets each (one for all hexahedron and all tetrahedron cells), the output tends to have twice as many cell sets as the original pre-plume field.

Ports

DirectionNameTypeDescription
InputInput FieldFieldThe field containing the data to create cell sets with.
InputGeologic Legend Input InformationGeology LegendGeologic legend input information.
OutputOutput FieldFieldA field containing cell sets created by input data.

Properties

PropertyTypeDescription
Allow RunBooleanThe Allow Run toggle, when deselected, will prevent the module from running.
ExecuteButtonThis button will force the module to run even if the Allow Run toggle has been turned off. This allows the user to make a number of changes before updating.
Data TypeChoice: Nodal Data, Cell DataThe Data Type selects either nodal or cell data to be used to create cell sets.
Nodal Data ComponentChoiceThe data from the input field that is used to set cell sets.
Cell Data ComponentChoiceThe data from the input field that is used to set cell sets.

loop

The loop module iterates an operation. For example, you could use a loop object to control the movement of an object in your application, such as incrementing the movement of a slider for a slice plane.

Ports

DirectionNameTypeDescription
InputInput Starting ValueNumberStarting value used for animation range.
InputInput Ending ValueNumberEnd value used for animation range.
InputInput Current ValueNumberCurrent value of interest.
OutputOutput Starting ValueNumberStarting value used for animation range.
OutputOutput Ending ValueNumberEnding value used for animation range.
OutputOutput Current ValueNumberCurrent value of interest.

Properties

PropertyTypeDescription
Current ValueDoubleThe current value of interest.
LoopLoopThe Loop controls setting the Current Value by specified increments.
Starting ValueDoubleThe starting value is the beginning value for the simulation.
Ending ValueDoubleThe ending value is the end value for the simulation.
Step SizeDoubleThe Step Size value specifies a factor for the increment for advancement when stepping or running.

modify data 3d

The modify data 3d module provides the ability to interactively change data in 3D volumetric models. This is not a recommended practice since volumetric models created in EVS generally have underlying statistical measures of quality that will be meaningless if the data is modified in any way.

However, it is not unusual for a model to occasionally have regions where extrapolation artifacts cause shards of plumes to appear. This module provides a way to remove those.

The basic approach is to move the modification sphere to the problem region and set the size and shape of the ellipsoid before changing your data.

Note: This module does not modify the upstream data.

Ports

DirectionNameTypeDescription
InputInput FieldFieldThe field containing the data to be modified.
InputZ ScaleNumberThe factor for vertical scaling.
OutputOutput FieldFieldA field containing the field with modified data.
OutputSampleDataRenderableA renderable object displaying the selected data.

Properties

PropertyTypeDescription
Transition OptionChoice: Linear, Non-LinearThe Transition Option control allows the user to select how the values are modified. Linear causes the weighting to be a straight line from the Inner Weighting value to zero at the outer change radius. Non-Linear is a smooth transition from the Inner Weighting value to zero at the outer change radius.
AnisotropyDoubleThe Anisotropy is the ratio of the change radius in the x-y plane to the vertical (z) direction for undistorted coordinates.
Pre Altered Z ScaleDoublePre-Altered Z Scaling is the z-exaggeration you are using for display purposes.
Create Output FieldButtonCreate Modified Output Field button causes the modified data to be output.

Modification Settings

PropertyTypeDescription
X CenterDoubleThe X Center slider controls the center of the change sphere.
Y CenterDoubleThe Y Center slider controls the center of the change sphere.
Z CenterDoubleThe Z Center slider controls the center of the change sphere.
Glyph Display RadiusDoubleGlyph Display Radius is the size (in your units) of the spherical glyph that identifies the center modification location.
Modification ValueDoubleThe Modification Value is the value to change (clamp) the data set.
Inner WeightingDoubleThe Inner Weighting is the constant value over the inner change radius.
Inner Change RadiusDoubleThe Inner Change Radius is the radius in the x-y plane of the region affected at the constant Inner Weighting.
Outer Change RadiusDoubleThe Outer Change Radius is the radius in the x-y plane of the total region affected.

Display Settings

PropertyTypeDescription
Display PointsBooleanThe Display Points toggle controls whether the affected nodes (cloud of points) will be displayed.

create mask

The create mask module creates convex and concave hulls from input point data. The resulting mask can be output as a triangulated surface or as lines.

Ports

DirectionNameTypeDescription
InputInput FieldFieldThe input field with the nodes to create the mask from.
OutputOutput FieldFieldThe output mask field.
OutputOutput ObjectRenderableA renderable object to display.

Properties

PropertyTypeDescription
Allow RunBooleanThis toggle can prevent the module from running. Allowing the user to make changes to large data sets without waiting for updates.
ExecuteButtonThis button will force the module to run even if the Allow Run toggle has been turned off. This allows the user to make a number of changes before updating.
Mask TypeChoice: Convex, ConcaveControls whether the output is a convex or concave hull.
Bridging TargetDoubleDistance between two points used to determine the fidelity of the concave hull in coordinate system units.
Disconnected RegionsIntegerThis value represents the estimated number of disconnected regions in the input, which is used to determine the optimal default Bridging Distance value.
OffsetDoubleThis value represents the offset in user coordinates the resulting mask will be inflated by.
Arc ResolutionIntegerThis specifies the number of points used on each corner for smoothing if a value in the Offset option other than 0 is chosen. An Arc Resolution of 1 results in just the corner point without any smoothing.
Output As SurfaceBooleanIf enabled, this option will output the resulting mask as a triangulated surface. Otherwise, the output will be lines.
Z PositionDoubleZ Position determines the Z location of the output. This allows you to position the output at the most convenient elevation.