Animated NASA logo in which the orbit element circles the word NASA. Clicking on this graphic takes you to the NASA Home page,
  Image says 'GridEx'.
This is a rainbow colored horizontal rule.
Table of Contents
Software Execution
GUI Design & Operation
CAD & Geometry
Element Sizing
VGRID Sources
FELISA Sources
Quick-Link Reference

GridEx Tutorials
Geometric Primitives & Solid Operations
Generic Wing/Body - FELISA Sourcing
Generic Wing/Body - VGRID Sourcing
Feature Suppression & Regeneration
Parameter Modification & Regeneration
Transformations & Displacement

More About NASA:
LaRC Home
Empty Space

GUI Design & Operation

  GridEx coordinates the processing of all operations through a sophisticated Graphical User Interface (GUI) which is based on the MOTIF widget set.  The main window consists of:

1) a Menu Bar which provides push button access to the I/O and the graphical display/selection options within the software,

2) a 3D Working Display in which all graphical rendering is performed,

3) a Structure tree which provides a hierarchical description/grouping of geometric entities,

4) and a Task Selection pane through which the user may exercise the modeling and meshing options offered by the software.

Additionally, a status bar which contains a progress meter and associated text field is appended to the bottom of the application window.

Individual elements and the facilities contained therein are described in greater detail in later sections of this document.

The Menu Bar

  The Menu Bar provides push-button access via a collection of pull-down menus to the data management functions and graphical controls within the software.  The controls provided within each of the pull-down menus are described below.


  The File menu activates facilities responsible for data I/O.  File types and their supported formats are selectable from option menus activated within a displayed dialog window, and point-and-click access to the file system permits rapid selection of the desired model files.

  Upon import of any model data, volumes belonging to a valid solid model, and all associated faces of the solid are identified and introduced into the Structure tree and are also rendered in the Working Display. The progress bar and associated status indicator provide a dynamic indication of the I/O process.  Note also that the remaining menu bar items become sensitized after a successful import.

  Data files of the type specified below may be imported by making the appropriate selection from the Type options menu displayed within the Open dialog window.  Each supported file type, its description, and a default file extension are summarized in the table below:

Supported File Types
File Type
GridEx Session restart file containing all application information at the time of save.
CAPrI CAPrI geometry data.  Contains ancillary data used by CAPrI (i.e. the assignment of boundaries, etc).

  • Frequently used to read the geometry kernel data file as well (see software execution.
  • *.capri

  • may assume the extension required by the geometry kernel if model has not been previously saved (see software execution.
  • )
    FELISA Background Background source specifications for FELISA meshing option
    FELISA Front FELISA surface front.  This is typically the contiguous volume shell used to initiate volume grid generation.

  • Input of this file is for inspection only and it cannot currently be modified within GridEx.
  • *.fro
    FELISA Volume FELISA volume grid.

  • Input of this file is for inspection only and it cannot currently be modified within GridEx.
  • *.gri
    FELISA BC FELISA boundary condition assignment file
    FAST Unstructured A single block unstructured FAST file representing an existing unstructured surface or volume grid.

  • Input of this file is for inspection only and the data cannot currently be modified within GridEx.
  • *.*
    VGRID Sources (v3.3) Background source specifications for VGRID meshing option.  This information is scanned from the end of an existing VGRID *.d3m file.
    User Defined This option activates a field where the user can enter the name of a GEOLAB SDK compliant file translator.

      Additional options provided within the File pull-down menu permit file exporting as well as program termination.


      The Edit menu provides facilities to simplify the selection of graphical entities or objects which are available for display within the Working Display.  Though individual objects may be selected with the mouse, the selection of a large number of objects may be simplified by using the facilities present within this pull-down menu.  These facilities are described below.

      The Move Faces option allows selected faces to be reassigned to other CAPrI Boundaries.  By definition, all faces of an imported solid are initially tagged as "UnAssigned." GridEx users can create additional Boundaries and use this option to populate them with appropriate faces selected from the same solid.  This information can then be preserved for communication with other applications by writing a new CAPrI file.  CAPrI Boundary data is also saved by the GridEx session restart file.

      The Select Faces menu entry has an associated cascading menu which permits rapid selection of all domain faces which are Displayed, Not Displayed, or All currently defined faces.  All pertinent objects are then highlighted in red when subsequently rendered within the Working Display.

     The Select Sources menu entry has an associated cascading menu which permits rapid selection of all sources which are Displayed, Not Displayed, or All currently defined sources.  All pertinent sources are then highlighted in yellow.

    The edit menu contains other operations in addition to selection functions.

    The Edit Transformation dialog provides the means to apply transformations to existing volumes (see tutorial).

    The Master Model heirarchical menu provides a limited ability to create new part structures of modified size and feature sets. If a model part was created as a feature based model, GridEx will expose the features to allow feature suppression. This yields the creation of new part structures with unwanted features. Likewise, if a model was created parametrically, GridEx will expose the parameters to allow creation of resized part structures.


      The View menu provides facilities to customize both the appearance of the main interface window in terms of the panes which are displayed as well as the manner in which a portion of the rendering controls operate; these are essentially convenience features which will prove useful at various stages of model development and/or inspection.  These controls consist of the following:

      The Task Tab, Structure Tree, and Status Bar toggle buttons located at the top of the pull-down menu permit the activation and/or deactivation of their associated panes in the main interface window.  These controls can be used to enlarge the Working Display as required.  The Task Tab toggle controls the display of the Task Selection pane, the Structure Tree toggle controls the display of the Structure pane, and the Status Bar toggle controls the display of the progress bar and adjacent text field.

      The Center Dot toggle button in the menu toggles the rendering of a reference point displayed in the center of the Working Display.  This point serves as a guide for the positioning of the model as all zooming is centered about this point; any object centered at this point will remain so during the zooming operation.

      The Quick Mode toggle is used to provide reduced rendering of only the geometry outline during dynamic viewing manipulations.  When "Quick Mode" is enabled, the geometry is rendered as an outline with panning, zooming, or rotation of the view, and is drawn at full fidelity when the dynamic manipulation is completed.

      The Perspective toggle button switches the viewing mode between the orthographic and perspective options.  Though the perspective transformation more closely mimics the behavior of the human eye, there are instances in which the orthographic transformation is useful.

      The Axes menu entry has an associated cascading menu whose entries toggle the rendering of the coordinate system axes centered about the Origin (rendered in yellow), and the Rotation Axes (rendered in red) which the user may place arbitrarily within the domain.  All rotation transformations on the viewing objects are performed about this latter axis system.  Note that these axis systems are always identically oriented though their respective origins may differ by a simple translation.

      The Rotation menu entry also has an associated cascading menu whose entries enable the placement of the Rotation Axes as well as user customization of the mouse functionality insofar as rotations are concerned.

    • Selection of the Adjust Center entry will activate the display of a dialog which will accept inputs to position the Rotation Axes. The coordinates of this point may be specified via slider bars whose operational range is governed by the model bounding box, or the Pick entry may be pressed to permit interactive placement of the rotation point on a model surface.  In this mode the user simply positions the cross hair at the desired point and presses mouse Button 3.  Note that the dialog text fields are updated with the coordinates of this new point.  The ability to reposition the rotation center is particular useful when the visual focus is centered far from the system origin.
    • By default, all object rotations are performed incrementally; that is for each mouse event or movement, a single, incremental rotation of the rendered objects will result.  The relative magnitude of the mouse movement will be reflected in the extent of the rotation.  Activation of the Spin Momentum toggle causes the rotation to persist at this initial rate until a subsequent mouse event alters or cancels the previous event.  Note that such a rotation can be suspended by simply clicking the stationary mouse within the Working Display.
    • The Snap cascading menu permits control of the viewing rotation increments.  Increments of 45 and 90 degrees are available.  Whether or not a snap increment has been set, scene rotations about the rotation axes are performed by simultaneously pressing the Ctrl+Button1, Ctrl+Button2, or Ctrl+Button3 keys to achieve a rotation about the X-, Y-, or Z-axis, respectively. A selection of other than None "snaps" the view by the selected increment for each positive/negative movement of the mouse.
      The Shading cascading menu permits the user to toggle between Flat and Smooth shading options.  This selection, of course, has relevance only when one or more model surfaces are to be rendered as shaded or analysis contours.  The Flat shading mode is used to render the associated triangulation as planar facets.  The Smooth shading mode yields a more aesthetically pleasing representation as individual surface facets are smoothly blended to produce a more "realistic " view of the model.

      The Clipping... entry permits the user to reposition the clipping planes via slider controls which effectively limits the portion of the model which is to be displayed. The clipping planes are necessarily defined in screen space and remain parallel to the screen regardless of the viewing transformation. The upper and lower sliders within the dialog permit a translation of the far and near planes, respectively, and the central slider permits specification of the relative "center."

      The final menu entry, Reset, reinitializes the viewing transformation and resets the rendering of the objects in the Working Display.  This is useful when the rendered objects are inadvertently "lost" beyond the confines of the clipping planes during graphical transformation.

      Lastly, note that many of the menu entries also have accelerator mnemonics which enable the user to access or activate particular functions without having to access the menu via the mouse directly.  This time saving device will likely become attractive as the user gains experience with the software.


      The Style menu provides the controls which permit customization of the manner in which surface objects are rendered.  Note, however, that the selection made here will apply only to those surfaces which have been selected and thus currently active. The options provided consist of off, boundary, wireframe, hidden line, shaded, and analysis and, with the exception of the last, are self-explanatory.  The shaded option will employ the shading model as selected from the View menu.  The analysis option is similar to the shaded option though the shading is based on the variation of a particular scalar quantity defined on the surface rather than it's orientation to the light source.  This quantity is selected from a series of options provided within the Scalar pull-down menu described below.  Lastly, the off option suppresses the rendering of the selected surface(s).


      The Scalar menu provides a list of options which govern the manner in which the active surfaces are to be shaded if the analysis mode has been activated within the Style menu described above.. The options consist of x-normals, y-normals, z-normals, cell area, and aspect ratio and are again largely self-explanatory.  The rendering of the surfaces in this manner enables a rapid assessment of the variation of the selected quantity over the surface and may provide insight as to where additional attention is required in terms of surface meshing insofar as source distributions are concerned.  The last option, user function, permits the user to render surfaces based upon a scalar function whose definition has been hand-coded by the user.  This function is not yet implemented. 

    The Working Display

      The Working Display encompasses the graphics window within which all graphical rendering is performed.  All rendering is dynamic in that the results of certain operations invoked by the user are immediately displayed.  Furthermore, in addition to the basic transformation operations attached to the mouse, the user may also interact with the collection of displayed visualization objects to assign surface rendering attributes, select source elements for parameter redefinition, and perform surface meshing on select surfaces.

    Mouse Functionality

      Interactive picking, or the selection of one or more displayed objects, can be performed using the mouse.  This is done by simply positioning the cursor over the desired object, and then pressing mouse Button 3.  The object will become highlighted (red for surfaces, yellow for sources) to indicate which objects have been selected and placed within the internal working buffer.  If multiple objects are to be selected for simultaneous processing (as for shading or meshing), simply press and hold the Shift key while selecting the objects in sequence.  Any selected object may be removed from the pick buffer by simply picking it a second time.  Note that if multiple objects are to be selected, the Shift key must remain depressed until all objects have been selected otherwise the paradigm reverts to the single object selection mode.  Finally, all selections may be cleared by selecting NULL space (i.e. no object) in single selection mode.

    Viewing transformations within the Working Display consist of panning, zooming, and rotation operations.  Using mouse Button 1, the user may pan the scene in the direction in which the mouse is moved.  Note that Button 1 must remain depressed while the mouse is moved.  Scene zooming is performed using mouse Button 2 while moving the mouse up or down.  Moving the mouse up will zoom the view out (effectively making the scene smaller), likewise moving the mouse down will zoom in (scene gets larger).  Scene rotation is performed by using a combination of keyboard modifier keys, mouse buttons, and mouse movement.  Standard rotation is performed by pressing and holding the Shift key along with mouse Button 1 and moving the mouse.  The rotation will be about an axis that is perpendicular to the direction of mouse movement.  This axis is dynamically updated with changes in mouse movement direction.  The magnitude, direction, and speed of the rotation follow directly with that of mouse movement.  Alternatively, the geometry may be rotated about its coordinate axes using the Ctrl key in place of Shift.  In this mode, the view will be rotated about a single geometry axis based on the choice of mouse button.  Button 1 is used to rotate about the geometry X-axis, Button 2 for the Y-axis, and Button 3 for the Z-axis.  Again, rotation is directly linked to mouse movement.  Here, the best results are obtained by moving the mouse in the direction that is "most perpendicular" to the display of the associated coordinate axis.  Also in this mode, the user may elect to apply a snap to add a defined increment to each rotation.

      Facilities available under the Edit pull-down menu which have been previously described permit selection of objects en masse and are often convenient when groups of objects sharing a common disposition (displayed or not displayed) are to be selected.

    The Structure Tree

      The Structure window provides a text-based hierarchical description of the individual volumes, along with their formative faces, and any associated CAPrI Boundaries present within the current solid model.  Along with the Volume nodes, the CAPrI Boundary nodes are container nodes that form branches in the tree hierarchy.  General folder containers may also be created when organizing the Boundaries and faces of a respective Volume.  These three container types have predefined rules governing their respective children and are summarized as follows:

  • Volume containers can have both Folder and Boundary children
  • Folder containers may have Boundaries and other Folders as children
  • Boundaries may only have faces of the parent Volume as their children
  • Faces must be parented by a Boundary and may only be moved to another Boundary container of the same parent Volume
  • The restrictions listed above regarding the movement of faces are required in order to maintain the integrity of the solid model.

    Graphical objects are associated with each face node in the tree, and as such may be selected directly from the tree as well as the Working Display.  In either case, the respective entity in the alternate pane will also be selected.  For entities that have previously turned "Off" in the Style menu, the Structure window can be used to reselect the desired entity to again set its style attributes.  Within the tree, mouse Button 1 is used to select the elements. Note that the Shift modifier can be used with mouse Button 1 to select a range of "same-parented" entities, and the Ctrl modifier can be used for individual selection of multiple nodes.

      Elements within the tree may also be manipulated using the "tear-off" popup menu (shown below) activated by simultaneously pressing Ctrl + mouse Button3 within the Structure Tree pane.  This menu This is the structure tree tear-off popup. permits the creation and manipulation of tree container nodes, the movement of faces between valid Boundaries, and provides quick access to the assignment of display styles provided within the Style menu.  Master model operations are also accessible from the tear off menu allowing suppression of features and modification of parameters to be easily accessed. The sensitivity of the items in the popup will be governed by the type of node(s) selected based on the rules listed above.  Finally, the "tear-off" nature of this popup allows the menu to be instantiated as a separate, persistent window for ease of use.  This feature is activated by selecting the dashed line at the top of the popup.  The window can be closed later when no longer needed and accessed again as a popup as required.

    The Task Selection Pane

      The Task Selection pane provides access to the specific functional modules offered by the software.  A series of "tabs" activate various forms which are listed below along with a brief description.

      The Output tab contains a scrolled window used to relate detailed information to the user.  Information written to this window is similar to that which would normally be written by a program to the invoking shell window.

      The Project Management tab includes a form used to annotate the current GridEx session.  This form is not currently implemented.

      The CAD/Geom tab activates a form which contains utilities focused on the creation and manipulation of simple geometric primitives that can be used to define the domain of interest around the model geometry.

      The Background Grid tab activates controls which permit the user to prescribe the desired constraints (relating to element size and location) within the background grid which are to control the surface and volume meshing operations. GridEx supports both FELISA and VGRID source formulations, and information specific to a given scheme (i.e. the source definition) is encapsulated on embedded tab-activated forms. Specification of common information related to the physical placement of either type of source is unified under a single means of entry.

      The Meshing tab activates a form which permits execution of the supported meshing algorithms for both surface and volume entities.  Simply select the desired surfaces or volume entities, the appropriate meshing algorithm, along with the desired "Mesh Spacing" algorithm, and then activate the Face Mesher or Volume Mesher as appropriate.  Run time diagnostics are displayed in the adjacent scrollable text field.  During meshing operations, the Working Display is available for use, and for surface meshing, the results are dynamically updated.  Sensitivity of the controls on this form is dictated by the type of target entities selected.  If neither Face nor Volume entities are selected, the meshing buttons are insensitive.  Selection of these entities will make available the associated controls.  Likewise, the Mesh Spacing options available are determined based on the availability of respective user specified definitions (see Background Grid above).  Unselecting entities while meshing multiple Faces will render the currently active Face bright green, successfully completed Faces white, and failed Faces in yellow.

      The Visualization tab activates a form used to control the display of "crinkle cuts" which are useful for inspecting and evaluating the quality of a volume mesh.  These two-dimensional cuts are taken through the interior of the volume mesh and depict the uncut faces of those volume elements cut by an associated cutting plane.

    Responsible NASA Official: William T. Jones
    Site Curator: William T. Jones
    Comments and Questions
    Last Updated: Oct 2, 2003