Application Network

The Application Network is the primary workspace in Earth Volumetric Studio for building and managing your data processing workflows. It is a visual, node-based environment where you construct “applications” by placing modules and connecting them to define a data flow from input to final visualization.

Modules

Modules are the fundamental building blocks of an application. Each module performs a specific task, such as reading data, performing a calculation, creating a geometric object, or rendering a scene. They are represented by rectangles on the Application Network, each stating a user-defined name and the module type under it. You add modules to your network by dragging them from the Module LibraryĀ onto the Application Network canvas.

Each module has a set of icons that appear when you hover over it, providing quick access to key functions:

IconDescription
Disable/Enable ModuleClicking this icon disables the module and any downstream modules that depend on it. A disabled module will not execute when the application is run. The icon appearance will change to quickly notice disabled modules. Clicking the icon again re-enables it and will make it run immediately.
Hide/Show OutputThis icon is available on modules that produce a visual output. Clicking the eye icon toggles the visibility of that module’s output in all viewers.

SeeĀ Module IconsĀ for more information.

Ports and Connections

Modules communicate with each other through ports. Each module has one or more input ports (on the top) and output ports (on the bottom). You create ConnectionsĀ between modules which define the top-downĀ Data Flow of the application, directing the output of one module to become the input for the next. See theĀ Connecting and Disconnecting ModulesĀ topic.

Ports are color-coded to indicate the type of data they handle, and you can only connect ports of a similar color. While there are many port types, the two most critical and frequently used are Field ports and Renderable Object ports.

SeeĀ Port Colors,Ā Red Port Properties (Renderable Port)Ā andĀ Blue Port Properties (Field Port) for more information about ports.

How to Remove connections

Connections can be removed by selecting the connection with the left mouse button in the Application Network and then either using the DEL key or by clicking the right mouse button and choosing the Disconnect option.

Module Right-Click Menu

Right-clicking on any module in the Application Network opens a context menu that provides quick access to several common actions and properties for that module.

OptionDescription
RenameAllows you to change the display name of the module as it appears on the Application Network canvas.
EditOpens the selected module’s parameters in the Properties window.
CopyCreates a duplicate of the selected module, including its current settings. The new module can be pasted with CTRL+V.
VisibleThis toggle, represented by an eye icon, controls the visibility of the module’s output in the viewer (applies only to modules with a red output port).
OpacityThis slider and input box allow you to adjust the transparency of the module’s visual output in the viewer.
PositionDisplays the read-only X and Y coordinates of the module’s top-left corner on the Application Network canvas.
DeleteRemoves the module and all of its connections from the Application Network.

Input Port Context Menu

Right-clicking on a module’s input port opens a context menu providing details and actions for the incoming connection.

OptionDescription
Port NameDisplays the name of the port.
Port TypeShows the type of data the port accepts, indicated by a colored icon and a description.
Port SubtypesLists the specific kinds of data this port requires the output port to provide.
No Connections Available / Connect from…Indicates if compatible output ports are available. If so, it allows you to create a connection.
DisconnectRemoves the connection that is currently feeding data into this port. SeeĀ Connecting and Disconnecting Modules.

Output Port Context Menu

Right-clicking on a module’s output port opens a context menu with information and actions related to that specific port.

OptionDescription
Port NameDisplays the name of the port.
Port TypeShows the type of data the port provides, indicated by a colored icon and a description.
Port SubtypesLists the specific kinds of data this port provides, such as “Node Data” or “Cell Data”.
Connect to…Opens a submenu listing all compatible input ports on other modules in the network to create a new connection.
DisconnectRemoves an existing connection originating from this port. SeeĀ Connecting and Disconnecting Modules.
Edit PortOpens the options for the port in the Properties window for more advanced configuration.
  • Module Icons

    Modules in the Application Network feature a set of icons directly on their surface that provide at-a-glance information and quick control over their execution and visibility. Modules that can be executed or produce a visible output have icons on their left and right sides. The right-side icon controls execution, while the left-side icon controls visibility in the viewer.

  • Module Status Indicators

    Modules in the Application Network display several visual cues to indicate their current status. These indicators help you quickly understand which module is selected, which is being edited, whether a module has run successfully, and if it is set to execute automatically. This allows for efficient management of your application’s workflow. Selection and Editing Status The border of a module changes color to reflect its selection and editing state.

  • Connecting and Disconnecting Modules

    Modules in the Application Network are linked together by connections, which represent the flow of data from an output port of one module to an input port of another. Creating and removing these connections is fundamental to building and modifying your application’s workflow. The system helps ensure that you only make valid connections between compatible port types.

  • Port Colors

    The color of the ports on a module provides an immediate visual cue about the type of data they accept or output. Understanding these colors and types helps in quickly assessing a module’s function and ensuring you are making valid connections within the Application Network. Port Types Each port type is designed to handle a specific kind of data. The primary types are listed below.

Subsections of Application Network

Modules in the Application Network feature a set of icons directly on their surface that provide at-a-glance information and quick control over their execution and visibility. Modules that can be executed or produce a visible output have icons on their left and right sides. The right-side icon controls execution, while the left-side icon controls visibility in the viewer.

Execution Control

The icon on the right side of a module indicates its execution status. Clicking this icon toggles the module’s Run property, which is the same setting found in the Module Properties window.

StateIconDescription
RunRun icon Run iconThe downward-pointing arrow signifies that the module is active. It will execute automatically whenever its properties change or when it receives new data from an upstream module.
OffOff icon Off iconThe pause symbol indicates that the module’s automatic execution is turned off. It will not run until it is manually triggered through the Run Once button in its Module Properties window or its status is toggled back to Run.

Visibility Control

The icon on the left side of a module controls the visibility of its output in the 3D viewer. Clicking this icon cycles through the available visibility states, which is the same as the visibility icon in the Table of Content in the Viewer.

StateIconDescription
VisibleVisible icon Visible iconThe open eye indicates that the module’s output is currently visible in the viewer.
HiddenHidden icon Hidden iconThe crossed-out eye indicates that the module’s output is hidden in the viewer.
ExcludedExcluded icon Excluded iconThis special state also hides the output in the main EVS viewer. More importantly, it completely excludes the object from being exported to web formats (CTWS) or 3D PDFs.
LockedLocked icon Locked iconThis state ensures the module’s output is always visible. It is primarily used for web exports (CTWS), where it forces the object to be visible, overriding any user attempts to hide it.

Special Visibility States for Parent Modules

Modules that can have multiple renderable children connected to them (such as group_objects or sequence modules) can display combined visibility states if their children have different settings.

StateIconDescription
Indeterminate Shown when some connected children are Visible and others are Hidden.
Visible with Excluded Child Shown when the parent is set to Visible, but at least one child is Excluded.
Hidden with Locked Child Shown when the parent is set to Hidden, but at least one child is Locked.

Modules in the Application Network display several visual cues to indicate their current status. These indicators help you quickly understand which module is selected, which is being edited, whether a module has run successfully, and if it is set to execute automatically. This allows for efficient management of your application’s workflow.

Selection and Editing Status

The border of a module changes color to reflect its selection and editing state.

StatusDescription
Selected Module (Darker Background)When you single-click a module, it becomes selected, indicated by a darker background. You can select multiple modules at once (e.g., by holding Ctrl or Shift), and all will show this background.
Selected module with a darker background Selected module with a darker background
Editable Module (Green Border)When you double-click a module, it becomes the single “editable” module, and its properties are displayed in the Properties window. This state is indicated by a thick green border. There can only be one editable module at a time.
Editable module with a green border Editable module with a green border
Editable PortIf you double-click on a specific output port of a module, that port’s properties will be shown in the Properties window. The parent module will receive the green “editable” border to indicate it is the focus of the properties window.
Module with an editable port, showing a green border Module with an editable port, showing a green border

Output Status

A key indicator of a module’s state is the presence or absence of a solid red bar along its bottom edge. This simple visual cue instantly tells you whether a module has successfully run and produced data that is available to downstream modules.

StatusDescription
No Output (Red Bar Visible)When a module displays a prominent red bar, it signifies a “No Output” state. This occurs if the module has not yet been executed or if it failed to generate any valid output. The red bar serves as a clear warning that downstream modules will not receive any data.
Module with a red bar indicating no output Module with a red bar indicating no output
Has Output (No Red Bar)When the red bar is absent, it indicates a “Has Output” state. This confirms that the module has run successfully and its output data is ready and available for downstream modules.
Module without a red bar, indicating it has output Module without a red bar, indicating it has output

Status in the Application Overview

The Application Overview window also provides a simplified summary of module statuses, which is useful for monitoring complex applications. In the overview, you can still see which module is selected for editing (highlighted in green) and which modules have successfully run (those without the red “No Output” bar).

Application Overview showing module statuses Application Overview showing module statuses

Modules in the Application Network are linked together by connections, which represent the flow of data from an output port of one module to an input port of another. Creating and removing these connections is fundamental to building and modifying your application’s workflow. The system helps ensure that you only make valid connections between compatible port types.

Creating Connections

There are two primary methods for connecting modules: dragging with the mouse or using the right-click context menu.

Method 1: Drag and Drop

This is the most common and intuitive way to connect modules.

  1. In the Application Network, locate the output port on the source module that you wish to connect from.
  2. Press and hold the left mouse button on the output port and begin dragging your cursor away from it. A line will appear and follow your cursor, originating from the port.
  3. Drag the cursor towards the target module. While you keep the left mouse button down, all compatible input ports will be highlighted, indicating where a valid connection can be made. Incompatible ports will remain un-highlighted. This guidance behavior can be controlled in theĀ OptionsĀ page in the Menu.
  4. Release the mouse button over one of the highlighted, compatible input ports. The connection will be established, and a solid line will now link the two ports.

Method 2: Using the Context Menu

This method is particularly useful in complex applications where modules are far apart, making dragging impractical.

  1. Move your cursor over the desired port (input or output) on the source module.
  2. Click the right mouse button to open the port’s context menu.
  3. Select the Connect to… option. This will typically open a sub-menu or a dialog window that lists all compatible ports available in the entire application.
  4. Choose the target module and port from the list. The connection will be created automatically.

Removing Connections

You can remove existing connections using either a keyboard shortcut or the right-click context menu.

Method 1: Using the Delete Key

  1. Move your cursor over the connection line you wish to remove. The line will highlight to indicate it is interactive.
  2. Click the connection with the left mouse button to select it. A selected connection is typically indicated by a change in its appearance, such as becoming thicker or changing to a dashed line.
  3. With the connection selected, press the Delete key on your keyboard. The connection will be removed if you confirm the warning that will pop up.

Method 2: Using the Context Menu

  1. Move your cursor directly over the connection line you wish to remove.
  2. Click the right mouse button to open the context menu for that connection.
  3. Select the Disconnect option from the menu. The connection will be removed immediately.

Once a connection is removed, the flow of data between the two modules is stopped. The downstream module will no longer receive updates from the upstream module and may enter a “No Output” state (indicated by a red bar) if it no longer has a valid data source. SeeĀ Module Status Indicators.

Connection Style

The Application Network provides flexibility in how the connections between modules are displayed. You can customize the visual style of these connections, choosing between direct, straight lines or smooth, curved lines. This setting allows you to tailor the appearance of your workspace for optimal clarity, which can be particularly helpful when working with complex applications where numerous connections might overlap.

Curved Connections:Straight Connections:

The color of the ports on a module provides an immediate visual cue about the type of data they accept or output. Understanding these colors and types helps in quickly assessing a module’s function and ensuring you are making valid connections within the Application Network.

Port Types

Each port type is designed to handle a specific kind of data. The primary types are listed below.

Port TypeColor NameColorDescription
Renderable ObjectRedRed port icon Red port iconThis port handles renderable geometry and connects to the Viewer to display objects like isosurfaces, axes, or legends. It contains the fields, data, and rendering information necessary for visualization.
FieldBlueBlue port icon Blue port iconThis is the most common port type, used to pass datasets - such as grids with nodal or cell data - between the modules that create, subset, or modify them.
Realization FieldLight BlueLight Blue port icon Light Blue port iconThis is a special variant of the Field port used in stochastic modeling workflows to pass data for geostatistical realizations.
StringOlive GreenOlive Green port icon Olive Green port iconThis port is used to pass text data, which can range from single words and phrases to full file names and paths.
Geologic Legend InformationDark GreenDark Green port icon Dark Green port iconThis data port contains material names and related information from geology modules, often used to populate legends.
Vistas DataBrownBrown port icon Brown port iconThis port is specifically used to pass geologic surface information to Groundwater Vistas for initializing MODFLOW models.
NumberGreenGreen port icon Green port iconThis port passes a single real number between modules.
Date-TimeYellowish GreenYellowish Green port icon Yellowish Green port iconThis port passes date and time information.
ViewLight MaroonLight Maroon port icon Light Maroon port iconThis port is an output from the viewer that passes the entire scene’s information, used by modules that export the viewer contents.

Port Subtypes

In addition to the primary colors, some ports feature one or more small colored dots. These dots indicate port subtypes, which provide more specific information about the data and enforce stricter connection rules. A connection is only valid if the output port includes all subtypes on the input port. This system prevents invalid connections, such as connecting a module that expects cell-based data to a port that only provides node-based data.

Below is an example of the output port for the 3d estimation module, which has three subtypes: Node Data, Uniform, and Structured.

Example of a port with multiple subtypes. Example of a port with multiple subtypes.

The subtypes are grouped by their primary port category:

CategorySubtypeColorDescription
Field Subtypes
These subtypes describe the structure of the grid or the nature of the data within a Field object.GeologyGoldenrodIndicates that the field contains data representing geologic materials or stratigraphy, typically as integer material IDs.
StructuredLight SalmonIndicates that the field is a structured grid, where the grid points are arranged in a regular, logical pattern (i.e., an i, j, k lattice).
UniformPurpleA more specific version of a structured grid, indicating that the spacing between grid points is constant along each axis.
Node DataLight BlueIndicates that the data values in the field are associated with the nodes (vertices) of the grid.
Cell DataGreenIndicates that the data values in the field are associated with the cells of the grid.
Number Subtypes
These subtypes specify the intended use for a numeric value that is passed between modules.Z ScalePinkRepresents a numeric factor for vertical exaggeration, used to stretch or compress the Z-axis in the 3D viewer.
ExplodeGoldRepresents a numeric factor that controls the “explode” distance, which separates components of a model for better visibility.
String Subtypes
These subtypes specify that the string data represents a path to a particular kind of file.FilenameBlueA generic file path.
Analytical FileGreen YellowA path to a file containing analytical chemistry data.
Stratigraphy FileLight Goldenrod YellowA path to a file defining stratigraphic layers or surfaces.
Lithology FileDark GrayA path to a file defining lithologic materials and their properties.

Identifying Ports

To identify which port on a module corresponds to a specific item in the documentation, follow this order:

  • Input Ports are read from top to bottom on the left side of the module, then left to right on the top side.
  • Output Ports are read from top to bottom on the right side of the module, then left to right on the bottom side.

You can also hover your cursor over any port to see a tooltip with its name and data type details.