Book Contents | Book Index | Master Index | Previous Chapter | Next Chapter
Search STEP Tools Web Support

1.1 What is STEP and ST-Developer?

The Standard for the Exchange of Product Model Data (STEP) is a family of ISO international standards that describe how to represent and exchange digital product information. In 1983, STEP merged earlier national efforts such as IGES, VDAFS, and SET. The first parts of STEP were published in 1994, including the EXPRESS information modeling language and the first application protocol, AP203, for exchanging BREP mechanical CAD geometry. Additional parts followed to address new technolgies, like Part 28 XML exchange (ISO 10303-28), and engineering information such as machine-tool control with STEP-NC AP238 (ISO 10303-238).

ST-Developer is a set of software tools to build, operate and maintain your STEP, IFC, CIS/2 and EXPRESS-defined tools, translators and databases. It contains programming bindings for C++, C, and Java, plus tools for testing data sets against verification rules and constraints, browsing through the contents of your data sets, building information models, and more.


The STEP Standard

Digital product data must contain enough information to cover a product's entire life cycle, from design to analysis, manufacture, quality control testing, inspection and product support functions. In order to do this, STEP must cover geometry, topology, tolerances, relationships, attributes, assemblies, configuration and more.

To accomplish this ambitious goal, STEP is a multi-part ISO standard. Many parts are complete and published, while more are under development. These parts cover technology, such as testing procedures, file formats and APIs, as well as content, such as geometry, features, PDM, and other industry-specific information. The key aspect of STEP is extensibility. STEP is built on a formal language that describes the structure and correctness conditions of any engineering information that needs to be exchanged.

Industry experts use this language, called EXPRESS, to detail the information required to describe products of that industry. These "Application Protocols" form the bulk of the standard, and are the basis for STEP product data exchange. In addition, the EXPRESS language can document constraints as well as data structures. These formal constraints are an explicit correctness standard for the digital product data.

Figure 1.1 shows the structure of the STEP standard. Infrastructure parts, such as the exchange file format (Part 21), are separate from industry-specific application protocols, such as the drafting AP (Part 202, also called AP202). The industry-specific portion is open-ended. APs are available for mechanical design, drafting, analysis, process planning, CNC machining, shipbuilding, architecture and building construction, with more APs in development.

STEP Organization

Some key reasons why STEP is important:


ST-Developer

ST-Developer ships with pre-built STEP AP Class Libraries, ROSE C++ and Java class libraries for many STEP APs and other models like CIS/2 and IFC. You can start programming immediately, just by linking against the appropriate library. The ST-Developer programming libraries are:

In addition, ST-Developer ships with several extension libraries for ROSE applications, such as the Part 28 library for reading and writing XML, the Part 21 filter library for working on very large STEP Part 21 files out of memory, and the ROSE Log Window library for status messages in GUI applications.

ST-Developer also includes a set of related tools, to perform various tasks on STEP data and EXPRESS definitions. This manual documents the following tools:


1.2 Getting Started

The ST-Developer Release Notes contain setup instructions for each platform. In general, you must make sure that the ST-Developer tools can find support files. On Windows systems, the support files are installed when ST-Developer is installed.

ST-Developer for Windows includes the ST-Developer Control Panel, a graphical front-end to the tools described in this manual. This is available on the Start menu and has icons corresponding to each of the ST-Developer tools..

ST-Developer Control Panel

Each of these tools is described in detail in the subsequent chapters of this manual. When a tool is run from the control panel, any text printed by the tool will appear in the Output Pane . You can browse this output and copy it onto the clipboard for later use.

When a tool such as the EXPRESS compiler produces an error message with a file name and line number, you can double click on this message in the output box. The control panel will start the Windows Notepad editor, load the file into it and highlight the line where the error or warning condition was found.

On UNIX platforms, you tell the ST-Developer tools where to find support files using a special "logicals" file. This is normally run as part of your shell login scripts to set the variables.

On UNIX platforms, there are separate versions of this file for different shells. The Rose_Logicals file sets variables using the csh syntax, while the Rose_Logicals.sh file sets them using Bourne/Korn syntax. You should use them as follows. Replace /usr/local/steptools with the name of the ST-Developer installation directory:

    % source /usr/local/steptools/Rose_Logicals  # CSH users
    % set path=($path $ROSE_BIN)                 # set path
     
    $ . /usr/local/steptools/Rose_Logicals.sh    # Bourne/Korn users
    $ PATH=$PATH:$ROSE_BIN                       # set path


1.3 Manual Organization

This manual describes the executable tools included with ST-Developer. Consult the ROSE Library Reference Manual, SDAI C Library Reference Manual and ST-Developer Java Library Reference Manual for more information on the ST-Developer programming language bindings.

This manual is divided into the following sections:

Each section describes the command line and GUI tools, with examples, screen shots, and a complete listing of all options.


Font Conventions

Within the body of a paragraph, tools, functions, keywords, and filenames are denoted with bold san-serif font, such as librose.a or /usr/local/bin . Function names are shown with trailing parenthesis, such as findDomain() or name() . When referring to a C++ member function, the C++ scope notation is used, such as RoseDesign::save() or RoseObject::domain() .

We describe environment variable settings using either UNIX convention ( $VAR ) or the DOS/Windows convention ( %VAR% )

Arguments for command-line tools are shown in a fixed-width font as below. The tool name is shown in bold. Optional arguments are shown in square brackets. An ellipsis ( . . . ) indicates that an argument can be repeated as needed.

expfront [options] expfile1 [expfile2 ...]

Function prototypes are listed with each parameter on a separate line and the function name set off in bold as shown below. Optional parameters are listed in standard C++ notation showing the default value.

RoseAggregate * findObjects(
	RoseAggregate * list_to_fill,
	RoseDesign* design = <Current>
	);

Occasionally, functions must be described in a parameterized manner, with angle brackets indicating the parameterized portion of the function definition. For example, the following prototype is used for the RoseObject getInteger() , getString() , getObject() , etc. functions:

<type_ref> get<name>(
	RoseAttribute * att
	);

Programming examples are shown in a separate paragraph, in a fixed-width font:

    /* Create a point using the default constructor
     *  and use the update methods to set its values.
     */
    Point * point1 = pnew Point;
    point1->x (1.0);
    point1->y (0.0);
     
    /* Create points using a different constructor,
     *  that fills in the values in one step. */
    Point * point2 = pnew Point (2.5, 4.0);
    Point * point3 = pnew Point (5.0, 0.0);

Sample terminal sessions are shown in the same format, and the command prompt is indicated with a percent sign (%).

    % expfront -classes geometry_schema.exp
    % cd classes
    % mkmakefile geometry
    % make


References

The ISO STEP standards documents are the ultimate reference for the EXPRESS language and the application protocols. These documents should be available from your national standards body or directly from ISO.

The following publications may be of interest to readers looking for additional information on the STEP standard, or the EXPRESS information modeling language:

If you have questions regarding the installation or use of ST-Developer or any other STEP Tools product, please contact us via electronic mail at:

    support@steptools.com

In addition, you may wish to visit the STEP Tools Web Site at:

    http://www.steptools.com/

This site has support files, tutorials, demos, sources for various documents, and other helpful material.

 

| Book Contents | Book Index | Master Index | ST-Developer Home | Previous Chapter | Next Chapter |