DG:20.2 CAD FORMATS
Ȧã§ãX§ãEDIF - Electronic Design Interchange Format supports VLSI design, and is expected to incorporate Circuit Boards soon
STEP and PDES (Standard for the Exchange of Product model data and Product Data Exchange Specification) An attempt to model other attributes of a product, in addition to geometry, such as tolerancing. This is the emerging standard, but it is not widely available yet.
DG:20.2.1 Proprietary "Standard" Formats
As mentioned before, these should be treated as non-standard formats, but they will increase some of the transferability of data.
For marketing reasons most major vendors of CAD systems attempt to define their own "standards". Examples include `DXF' for Autocad, `CADL' for Cadkey, `SAT' for ACIS.
An example of a proprietary format is the CADL file produced by Cadkey for transferring geometric entities through the use of an ASCII file. Such entities may be lines, points, arcs, splines, etc.
DG:20.2.2 Standard Formats
A device independent format is based on public standards that are controlled by non-commercial bodies.
DG:20.2.2.1 - IGES
IGES was first developed by the National Bureau of Standards, Boeing Corporation, and General Electric Corporation and published by the National Bureau of Standards in 1980.
Initially the only data that could be exchanged were basic entity types such as points, lines, arcs, and circles.
September 1981, IGES version 2.0 was approved by the American National Standards Institute as ANSI standard Y14.26M for CAD/CAM communications.
More recent versions of IGES contain the ability to transfer constructive solid geometry and boundary representations of solid models.
The IGES can be in either binary or ASCII format. In ASCII the file is easy to read and modify by hand but it tends to be larger.
In the fixed formatted data, there are several sections that must be entered in a highly structured approach. Data must be right justified within the specified column locations, and these locations must occupy the columns between 1 and 80, inclusive. The following is a brief outline of some rules that must be followed in creating the IGES file.
1. Blanks: Blanks are only significant in string constants. A numeric filed of blanks is considered to denote the default value for that field. No blanks are allowed between the beginning of a numeric constant and the end of that constant. Leading blanks in numeric constants are ignored. Blanks between the end of any constant and the delimiter following the constant are not allowed.
2. Numeric Constants: Embedded commas in numeric constants are not permitted. The absolute magnitude of a numeric constant may not exceed the value of , where N is the number of bits used to represent an integer of a real value. Real constants may be double or single precision. Valid integer constants can be expressed as:
3. String Constants: A string constant is defined as an arbitrary sequence of ASCII characters. Blanks, commas, and numbers are treated as characters within the string. String constants are represented in Hollerith notation. This form consists of a non-zero integer constant (i.e. the number of characters in the string), followed immediately by the letter H, followed by the character string. Valid string constants can be expressed as:
4. Sequence numbers: A sequence number is a string of up to seven digits and is used for indexing the lines within the various sections of the IGES file. Sequence numbers begin ar 1, (i.e. 0000001) in each section and continue sequentially without interruption to the end of that section. This is primarily used to indicate the number of physical lines of the particular section, or may be thought of as section line counters. Sequence numbers must be used in each section of the IGES file. These numbers are right justified in the columns 74 to 80. Sequence numbers may have leading zeros (0) or blanks.
An IGES file consists of six (6) sub-sections that must appear as follows:
This section identifies whether the IGES file is written as a bit string binary file, or as a "compressed" ASCII file. If this section is ignored, then the default format for the IGES file is ASCII.
This section of the IGES file is to provide a readable prologue to the file. There must be at least one (1) start record. All records must have the letter "S" in the 73rd column and a sequence number in columns 74 to 80. Information in columns 1 to 72 are ASCII characters. Figure 3
DG:20.2.2.2 - Global section
The global section contains information regarding the IGES pre-processor, and any information that is required by the IGES post-processor. There are 24 parameters that must be entered. These include:
Parameters of the global section (All string constants are represents in Hollerith notation).
1. Parameter delimiter character: Indicates which character is used to separate values in free formatted data (including the global section). Default is a comma (,).
2. Record delimiter: Indicates which character is used to indicate the end of a list of parameters in free formatted data sections (including the global section). Default is a period (.).
5. System ID: Name and version of software containing the pre-processor which created the IGES file.
7. No. of bits for integers: No. of bits present in the integer representation of the sending system.
8. Single precision magnitude: Maximum power of 10 which may be represented as a single precision floating point number from the sending system.
9. Single precision significance: No. of significant digits of a single precision floating point number on the sending system.
10. Double precision magnitude: Maximum power of 10 which may be represented as a double precision floating point number from the sending system.
11. Double precision significance: No. of significant digits of a double precision floating point number on the sending system.
13. Model space scale: Ratio of model space to real space (e.g. 0.125 indicates a ratio of 1 unit model space to 8 units real space).
A value of "3" should only be used when the receiving system is using the same units. In this case, parameter 15 must be used to provide additional information as to those units.
When a unit flag of "3" is used, the string constant naming the desired unit should conform to MIL-STD-12D (DOD12D), or ANSI/IEEE 260 (IEEE260).
19. Minimum user intended resolution: Smallest distance in model space units that is discernible by the system.
20. Approximate Max. coordinate value: Upper bound on the values of all coordinate data occurring in this model.
23. IGES version: Integer number representing the corresponding version of IGES used to create the file.
24. Applicable drafting standard: Integer number representing the drafting standard to which the data in the IGES file was specified.
A sample of the global section is given below,
DG:20.2.2.3 - Directory entry sections
provides attribute information for each entity entered in the parameter section
each directory entry consists of two, 80 character, fixed formatted lines
4. Line font pattern: Integer value indicating the pattern to be used in displaying the geometric entity.
5. Level: An integer value indicating the graphic display level, or layer, to be associated with the entity.
6. View: Specifies the type of entity view desired. This value is a pointer to the directory entry of a view entity (type 410). It can also be a pointer to an associativity instance. A value of zero (0) indicates the entity is displayed with the same characteristics in all views.
7. Transformation matrix: This value is either a pointer to the directory entry of a transformation matrix used in defining this entity, or a zero indicating the identity matrix used in defining this entity, or a zero indicating the identity matrix for rotation (zero rotation) and zero translation.
8. Label display associativity: Pointer to the directory entry of a label display associativity which defines how the entity's label and subscript are to be displayed in different view.
9. Status number: This is an 8 digit number relaying 4 pieces of entity information, described as follows:
Blank status - defines whether the entity is meant to be visible on the output device of the receiving system. A value of 00 implies the entity is displayed, a value of 01 indicates the entity is not to be displayed.
Subordinate entity switch - indicates if an entity is referenced by another entity in the file. A value if 00 indicates the entity is independent, and not referenced by other entities. A value of 01 indicates the entity is dependent on some other parent entity. A dependent on some other entity. A dependent entity cannot exist without its parent entity.
Entity use flag - indicates the use of the entity. A value of 00 indicates the geometry, 01 indicates annotation (descriptive purposes), 02 indicates an entity used in definition of structures of data, 03 indicates all other used for entities such as defining structural features in the file, 04 indicates logical or positional entities and 05 indicates 2D parametric entities defined by a mathematical parametric equation.
Hierarchy - indicates the relationship between entities in a hierarchical structure and is used to determine which entity's directory entry attributes should be applied. Applies to line font, view, entity level, blank status, line weight, and color number. A value of 00 indicates all the above directory entry attributes apply to this entity.
10. Sequence number: The sequence number for the position of the directory entry line in the IGES file. This sequence number will always be an odd number.
12. Line weight number: Denotes the width for which an entity is to be displayed. Largest line thickness is specified in global parameter 16, smallest thickness is specified in global parameter 17. A value of zero (0) indicates the default line weight as specified by the receiving system.
14. Parameter line count number: The number of lines in the parameter data section which contain the entity whose attributes are described in the directory entry section.
15. Form number: A value of zero (0) causes individual interpretation of the entity type entered in the parameter data section.
18. Entity label: This is an alphanumeric identified for the particular entity type in consideration.
20. Sequence number: The sequence number for the position of the directory entry line in the IGES file. This sequence number will always be even.
A sample of a directory section is given below,
DG:20.2.2.4 - Parameter entry section
This section of the IGES file provides entity identification and coordinates to be plotted on the receiving system. The following is a partial list of some common entities:
The structure is a free formatted data entry from columns 1 to 64. Each line of free formatted data consists of the entity type number followed by the parameter data describing the entity. Columns 65 to 72 are reserved for a parameter data index which is an odd number counter, right justified in the field, which begins at the number 1 and progresses in odd increments for each entity entered. Column 73 is reserved for the letter `P' to indicate the data element belongs to the parameter data section. Columns 74 to 80 are reserved for the sequence number. Each line of data corresponds to the entity type as specified in the global section. For example, the first entity element of the global section corresponds to the first line of coordinates in the parameter data section. Each portion of data in the global section is matched with its coordinate counterpart in the parameter data section.
Circular arc entity parameter data:
A sample of a data section is given below,
DG:20.2.2.5 - Terminate section
This section provides information needed by the post-processor to properly signal the end of the IGES file. The information that is relayed to the receiving system is the number of lines in each of the sections of the IGES file.
A sample of the termination section is given below,
DG:20.2.2.6 - A Sample IGES File
A Sample IGES File (Note: the columns are out of alignment)
DG:20.2.3 A DXF File
The DXF file below is shown only for illustration (Not for casual reading)