The technical tutorials described below provided complete coverage of the core SEDRIS technologies, SEDRIS-based tools and utilities, and were intended for those interested in gaining a deeper understanding of the technical details and how-to techniques.
These tutorials were designed to impart working knowledge of the key SEDRIS technologies. The tutorials covered the practical aspects of these technologies such that environmental modelers and software engineers could gain a full appreciation for their depth and breadth.
Quick Scroll To:
SEE-IT is a powerful tool that provides two primary utilities for dealing with terrain databases: it checks for conditions that may be inaccurate descriptions of the physical environment, and it finds conditions that can lead to anomalous behaviors by entities operating in the simulated world. SEE-IT also provides data query and filtering mechanisms for identification, detection, and further diagnosis of environmental data. This tutorial included examples of finding conditions such as: improper road junctions, misaligned boundaries between features, cracks in the terrain, narrow or sliver polygons, and a variety of other anomalies usually found in terrain databases.
This tutorial was for environmental modelers and software engineers interested in the verification and analysis of SEDRIS transmittals, and those interested in improving their SEDRIS transmittal production capabilities.
At completion, the attendee had gained an understanding of the power of SEE-IT, and how it is used to identify and interpret various anomalies that may occur in environmental databases.
In Introduction to the Synthetic Environment Evaluation - Inspection Tool (SEE-IT), Tim Stone and Keith Green began with a discussion of Why is SEE-IT useful? -- verification and validation of environmental data. They discussed SEE-IT's purpose and system requirements. Next, Tim and Keith addressed what alternative methods are available, illustrating the value of SEE-IT through a time analysis and comparison. They continued by discussing how SEE-IT relies on SEDRIS, by addressing the SEE-IT software structure. The SEE-IT philosophy of data inspection was then discussed, addressing importing SEDRIS data, the data that is kept, the data that is ignored, the SEE-IT classificatory system, and numerous detailed examples of viewing and inspecting data with SEE-IT. Data correction / repair via SEE-IT was addressed, and a hands-on tour and demonstration of the SEE-IT system capabilties was provided. Tim and Keith concluded the tutorial by discussing future work, and the SEE-IT User's Guide.
Fundamentals of the DRM
The SEDRIS DRM allows you to describe and articulate your environmental data clearly, while at the same time using the same representation model to understand others' data unambiguously. The DRM includes the logical relationships or associations between object classes. It also ensures the syntax and the structural semantics of the data are fully expressed and correctly understood by users. This tutorial provided a complete introduction to the SEDRIS DRM. It included: a review of the notation used; the DRM organization and usage with sample applications; how the DRM utilizes the Environmental Data Coding Specification (EDCS) and the Spatial Reference Model (SRM); and a description of key concepts that are represented by DRM classes such as metadata, libraries, topology, point-sampled and grid data, organizational schemes, attributes, features, and geometry.
This tutorial was for environmental modelers interested in using SEDRIS, software engineers who plan to implement applications based on SEDRIS technologies, and those interested in gaining a better appreciation for the most fundamental SEDRIS technology, the DRM.
At completion, the attendee was able to read and understand the DRM, the rules defined and imposed by the DRM, the use of the EDCS and SRM, and the use and organization of the data classes in the DRM.
In Fundamentals of the DRM, Michele Worley and Greg Hull began with a discussion of what is a data representation model (DRM), with illustrative examples. They proceeded to address what is the SEDRIS DRM, discussing it's classes, broad categories of class functionality, and how the SEDRIS DRM is expressed in actual data sets. Next, Michele and Greg provided a detailed overview of key classes and their use in data representation, discussing the fundamentals of geometric, tabular and feature representation, and high-level organizing principles for feature and geometric representation that provide powerful mechanisms for expressing various kinds of semantic information. They then addressed library classes and organizations, followed by metadata requirements and use. Michele and Greg concluded the tutorial with a discussion of where attendees could seek additional information on the SEDRIS DRM.
Advanced Use of the SEDRIS SDK
This tutorial covered the more advanced aspects of the SEDRIS API, such as the many traversal techniques, creating and accessing images and data tables, sharing of objects, object IDs, and ITR among others. Code examples were demonstrated using a simplified C++ wrapper for some SEDRIS API functions. OpenGL was used to display geometry and feature data containing colors and images. Issues when dealing with large environmental data sets and optimization techniques were also discussed.
This tutorial was for experienced SEDRIS developers, developers dealing with large environmental data sets, and developers looking for an understanding of advanced traversal techniques for accessing SEDRIS transmittals.
At completion, the attendee had gained an understanding of the various how-to techniques for use of the SEDRIS API in the creation and extraction of transmittals, and an understanding of the role of a TCRS for both producers and consumers of environmental data.
In Advanced Use of the SEDRIS SDK, Jesse Campos and Warren Macchi began with a short overview of building applications with the SEDRIS software development kit (SDK) with discussions of component dependencies, build modes, and static versus dynamic builds. They proceeded to address the anatomy of STF transmittals, progressing into discussions of opening transmittals and techniques with extensive examples of traversing transmittals, including discussion of how transmittal options are supported by the component iterator. Jesse and Warren then covered error handling, cleaning up (freeing constructs and objects, and closing the transmittal), and object IDs that are used to persistently refer to objects in a transmittal. Next, they discussed the SEDRIS Parallel and Distributed Interface, providing an example of its use with the Syntax Checker application. Jesse and Warren also addressed abstracting the SEDRIS API through the use of helper and utility classes that deal with the most common API activities. They concluded the tutorial with brief discussions of using OpenGL to display transmittal content, and working with SEDRIS transmittals.
Environmental Data Coding Specification (EDCS)
The EDCS is the means for identifying the classification and characteristics of environmental objects. Designed as a stand alone technology, it unifies the characterization of environmental "things" regardless of the method by which such "things" are represented (e.g., as surfaces, features, etc.), or whether they are cast as individual primitives or structured collections. The EDCS tutorial introduced the concept of a coding specification, how it is applied to environmental data, and the major environmental coding systems currently in use. It reviewed how the structure and function of the EDCS standard covers all domains of the environment, and how EDCS relates to other coding systems. Examples from various environmental domains were provided. Use of EDCS within the SEDRIS Data Representation Model was described, and mappings between the EDCS and external environmental coding specifications was described.
This tutorial was for those desiring to define the semantics of environmental data (the environmental "things" and what they "mean"), either as data providers, data consumers, or both. Both project managers and technical implementers benefited from this tutorial.
The attendee learned about both the current implementation, and the target standardization, of the EDCS. Related standards and coding conventions were discussed as a starting point for the attendee developing mappings to/from coding systems they may be currently using. Planned developments of the EDCS were addressed in order to assist attendees in preparing to use the EDCS within their domain and ensuring that ongoing EDCS developments can be taken into account in project planning. Mechanisms for elaborating the EDCS were defined and attendees were encouraged to get involved in extending the EDCS to meet their project requirements.
In Environmental Data Coding Specification (EDCS), Peggy Gravitz began with a discussion of using SEDRIS for data interchange (described as a high-level process), and addressed how the EDCS supports the data interchange process through discussions of the steps in the SEDRIS production and comsumption processes. She proceeded to address the motivation for an EDCS, discussed its critical requirements, and provided extensive discussion and examples of other available environmental data coding methods. Next, Peggy discussed the EDCS ISO/IEC Standard, addressing its background, purpose, an overview of its content, its development approach and process, and discussing the EDCS as part of SEDRIS technology. She then addressed specifics regarding the EDCS ISO/IEC Standard, discussing through numerous illustrative examples its concepts, dictionary structures and relationships. Peggy also discussed using the EDCS with a demonstration walk-through of the EDCS ISO/IEC Standard, addressing methods for searching its content, and discussing the registration of new EDCS dictionary entries. She then discussed applying the EDCS, providing several examples of EDCS use cases and implementations, and addressing mapping to and from the EDCS through discussions of mapping cases and patterns, as well as illustrations of other EDCS mappings. Peggy concluded the tutorial with a brief description of EDCS support and participation, addressing the SEDRIS web site, on-line user support, documentation, and coding references.
Developing Effective Applications with the API
A working knowledge of the interface specification and the SEDRIS API is key to developing SEDRIS-based applications. This tutorial provided insights into the basic capabilities of the SEDRIS API, and introduced the attendee to the most common functions and data structures used by the application developers. The key capabilities of the Read/Write/Modify API, along with explanations of the major data types and how to invoke most commonly used functions, were covered. The relationship of the API to the DRM and the SEDRIS Transmittal Format (STF) were discussed, and examples of simple applications were given.
This tutorial was for software engineers who intend to design and implement SEDRIS-based applications, or those interested in learning the design and implementation of the SEDRIS API.
Attendees gained an in-depth understanding of the SEDRIS Read and Write APIs (extraction and insertion of data), general techniques for using the API, construction of iterators and filters, and basic data types and API conventions. A basic knowledge of the design and capabilities of the SEDRIS Transmittal Format (STF), as well as the general approach for the SEDRIS interchange mechanism were also gained.
In Developing Effective Applications with the API, John Carswell and Greg Hull began by providing API background and fundamentals, which included discussions of basic definitions, API functional components, the SEDRIS transmittal format, API conventions, API data types, basic tools, and reference material. They then discussed the extraction component of the SEDRIS API in terms of its capabilities, illustrated through several detailed examples, numerous advanced features of component iterators, and miscellaneous extraction features. John and Greg concluded the tutorial by addressing the insertion component of the SEDRIS API, discussing its capabilities, providing numerous illustrative examples, and touching on miscellaneous insertion topics such as inserting image data.
The SRM is a unified approach for the representation and use of spatial location information. Designed as a standalone technology, the SRM provides a complete and concise treatment of the different descriptions of spatial location, and precisely defines the relationship between various spatial reference frames. This tutorial provided a detailed review of the SRM capabilities, concepts, and requirements. Challenges and issues in implementing precise and efficient coordinate transformations and conversions were discussed, and an overview of the SRM reference implementation software, and its API, was provided.
This tutorial was for those interested in gaining a more complete understanding of the SRM, and those who plan to use it as a stand alone component, or as part of a SEDRIS-based application development project.
At completion, the attendee gained an appreciation for the complexities involved with the use and accurate description of coordinate systems. Topics such as earth reference models, horizontal and vertical datums, and ellipsoids and geoids were covered, among others.
In Introduction to the SEDRIS Spatial Reference Model (SRM), Ralph Toms and Paul Birkel began the tutorial by identifying that there would be two aspects of the SRM discussed in this tutorial -- the SRM as an International Standard, and the implementation of the SRM in SEDRIS. They proceeded to address simulation interoperability and a spatial reference model in terms of why a SRM is needed, simulation interfaces, interoperability examples, SRM requirements, and the structure of the SRM ISO/IEC Standard. Ralph and Paul then discussed basic terminology and mathematical infrastructure topics such as coordinates and coordinate systems, reference datums, object reference models (ORM), and spatial reference frames (SRF). Next they addressed map projections, augmented map projections and geometric distortions through the use of numerous illustrative examples. Ralph and Paul also discussed models using SRFs, addressing object reference models versus object models. They described spatial operations (on coordinates, directions and locations, and distinguishing between conversion, transformation and validation), the SRM, quality assurance for spatial operations, and SRM concept management. Ralph and Paul covered the details of computational considerations such as accuracy, errors, efficiency, and testing. They briefly addressed the selection of a SRF for models, simulations and other applications, as well as the SEDRIS implementation of SRFs. Ralph and Paul concluded the tutorial with discussions of the implementation of spatial operations, addressing topics such as ORM/ERM-related transformations, and valid, extended and invalid coordinates.
Applying the Side-by-Side Viewer (SbS)
The SbS is a versatile tool designed to perform visual database comparisons. SbS is a powerful tool that enables the simultaneous visual inspection of multiple SEDRIS transmittals in an intuitive, easy-to-use manner. This tutorial demonstrated the key features of SbS, and showed how the tool supports the visual comparison and identification of discrepancies of multiple environmental databases. The discussion covered how differences between transmittals may be corrected.
This tutorial was for environmental modelers and software engineers interested in the interpretation of environmental data using SEDRIS-based tools and utilities, those who intend to design and implement other SEDRIS-based conversion applications, tools or utilities that operate on SEDRIS transmittals, or anyone who is interested in learning how to use the SbS.
At completion, the attendee had gained an understanding of the SbS, how it is used to identify discrepancies, and what additional functionality future SbS Viewer Plug-ins will bring.
In Applying the Side-by-Side Viewer (SbS), Andrew Tosh began by providing an overview of what is the SbS Viewer, describing its features and system requirements at a glance. He described the plug-in nature of its architecture, and covered the Database Manager plug-in in detail. Andrew then addressed the general viewer options, to include rendering mode, views mode, reposition and grid toggle. He discussed the details of the 3D Viewer and 2D Viewer plug-ins, as well as importer plug-ins developed for the SbS such as the SEDRIS, OpenFlight / Performer / VRML, and the CTDB plug-ins. Andrew then addressed filename template loading, adding/removing file paths, and the Correlation Report Generator and Evolver plug-ins. He provided a description of exporters as a type of plug-in used to write out an imported database. Andrew concluded the tutorial describing the software development kit developed to create plug-ins that can be used by those interested in developing additional SbS plug-ins.
Integration of SEDRIS Capabilities through Focus
This tutorial presented the SEDRIS Focus tool, which is used to edit, examine, and analyze SEDRIS transmittals. It described the functional capabilities and goals of Focus, including the integration of other SEDRIS tools such as Depth, Model Viewer, Rules Checker, and Syntax Checker. Future enhancements and capabilities being planned were also discussed.
This tutorial was for those users of SEDRIS who will be working with SEDRIS transmittals for any purpose, as well as developers of new SEDRIS applications who would like to provide such applications to the rest of the SEDRIS community.
The attendees gained an understanding of the potential and features of the Focus tool, and how the Focus tool can provide the mechanism to integrate the broad range of SEDRIS capabilities.
In Integration of SEDRIS Capabilities through Focus, Jesse Campos began with a description of the current state of specialized stand-alone SEDRIS tools used to fulfill disparate functions, and the need for an integrated work environment. He proceeded into discussions and demonstrations of examining and analyzing SEDRIS transmittals with Focus, and continued into discussions and demonstrations of editing SEDRIS transmittals through the use of use case examples. Jesse then addressed Focus configurability in terms of application preferences, traversal iterator parameters, editor binding, and application integration. He also covered the integrated viewer for HTML tutorials. Jesse concluded the tutorial with a discussion of future capabilities, which included global search and replace, template matching and conversion, and Transmittal Content Requirements Specification support.
This tutorial was conducted in two consecutive parts. Part 1 covered creation and writing of SEDRIS transmittals. Part 2 focused on accessing or extracting data from SEDRIS transmittals. Common application development techniques and strategies utilized in the production and consumption of SEDRIS transmittals were covered. The steps in development of mapping documents and the effective use of the SEDRIS API were discussed. A number of examples based on actual use cases were reviewed.
This tutorial was for software engineers who intend to develop tools, utilities, or conversion applications either to operate on or produce SEDRIS transmittals.
At completion, the attendee had gained an understanding of the various techniques for using the SEDRIS technology components for the creation and extraction of SEDRIS data.
Jesse began the consumption portion of the tutorial with a brief overview of using SEDRIS. He provided a synopsis of the translation process through the explanation of a language analogy. Jesse provided an overview and then discussed in detail the transmittal consumption process. Specifically, he addressed native data analysis, preparation of a mapping document, learning the implementation details and extraction capabilities, determining a consumption/translation philosophy and strategies, and creating consumption software. Jesse concluded the consumption portion of the tutorial with a discussion of expanding the consumer's consumption base.
Advanced Application of the DRM
This tutorial covered the effective application of the DRM for modeling of domain-specific environmental data, such as terrain, atmosphere, ocean and space. Advanced topics in handling tabular data, gridded data, ocean features, air/atmosphere features, hierarchy and classification, attribution of effects, raster and vector data, terrain features, along with examples were covered.
This tutorial was for environmental modelers and software engineers who are experienced users of SEDRIS, interested in the newest developments as well as future advancements.
At completion, the attendee had gained a working understanding of the various techniques for use of the DRM in modeling or converting domain-specific data sets into SEDRIS.
In Advanced Application of the DRM - Introduction, Paul Berner introduced the tutorial speakers, and presented a brief overview of the 3-part tutorial agenda.
In Advanced Application of the DRM - Terrain, Kevin Trott began by discussing the definition, sources, and uses of raster data (e.g., images), gidded data (e.g., property grids), vector data (e.g., features), and polygonal data (e.g., geometry), with examples of each. He addressed each of these types of data in the SEDRIS Data Representation Model. During his discussion of gridded data, Kevin also addressed the DTED-based SEDRIS transmittal structure. During his discussion of vector data, Kevin also addressed the VPF-based SEDRIS transmittal structure and feature topology (feature nodes, edges, faces, rings, and the relationships between them). Kevin concluded the terrain portion of the tutorial with an overall summary of terrain data.
In Advanced Application of the DRM - Ocean, Paul Berner began with a discussion of tabular data, with a property table example. He discussed data tables, including what they can represent, arbitrary dimensions, and other capabilities. Paul then addressed property grids as data tables whose cells form a grid in space. Specifically, he discussed grid structure (layout, location and alignment), and then transitioned to a property grid example demonstrating such principles for sea surface temperature and also providing other examples. Further, Paul addressed property characteristic enumerants and data table compression. He then discussed ocean features, and provided ocean acoustic feature examples. Paul concluded the ocean portion of the tutorial with a discussion of hierarchical organization and classification.
In Advanced Application of the DRM - Atmosphere, Louis Hembree began by emphasizing that to prepare for the process of mapping a native atmospheric data set into the SEDRIS Data Representation Model (DRM), one must become familiar with the SEDRIS DRM and supporting documentation. He proceeded to address the basic mapping process, discussing determination of initial class structures and completion of class fields. Louis then provided a mapping checklist, and pointed out the relevant parts of the SEDRIS DRM. He provided atmospheric mapping examples for atmospheric forecast grids, point data (e.g., surface observations), and profile data (e.g., radiosonde). Louis concluded the atmospheric portion of the tutorial with a discussion of Gridded Binary to STF conversion software.
Compact Terrain Database (CTDB) is an optimized run-time format used by the ModSAF and OneSAF applications. Two complementary converter applications that respectively take STFs to the CTDB format, and convert existing CTDB databases to STF were described. The tutorial covered the capabilities and use of both applications. The tutorial on the STF to CTDB conversion covered the basics of the CTDB format, what the compiler expects to find in a SEDRIS transmittal in order to produce a useful CTDB database, and the variety of terrain data types that can be converted to CTDB. The CTDB to STF portion of the tutorial covered the conversion process and the mapping of CTDB data to STF, and how SEDRIS-based analysis and visualization tools are utilized to examine the content of CTDB databases.
This tutorial was for developers or users of ModSAF, users of other Computer Generated Forces (CGF) applications, and those interested in converting terrain data to CTDB through SEDRIS. One goal was to educate ModSAF users on the CTDB format.
The attendees learned what type of data the STF to CTDB converter will expect, how to use both applications, and how the conversions have been implemented.
In SEDRIS to CTDB and CTDB to SEDRIS Conversions, Andrew Tosh and Kevin Wertman began by providing an overview of the CTDB process, and introducing the CTDB format. They addressed basic background information, discussing polygon attribute tables, terrain and soil representation, feature representation, and multi-elevation structures. The CTDB to STF portion of the tutorial included discussions of software architecture, extensive discussions of data mappings, geometry/feature classification, geometry coloring, the Global Coordinate System, performance, real-world use, limitations, and software availability. The STF to CTDB portion of the tutorial included extensive discussions of data mappings, an overview of operations, tool status, and examples of real-world use. Andrew and Kevin concluded the tutorial bringing it all together to illustrate the complete CTDB to STF and STF to CTDB closed-loop process.