Initial Graphics Exchange Specification IGES Home IGES Home NIST U.S. Pro Page Examples & Figures Tools Next Version In-work Items Current Version About Disclaimer

RFC 600

Title: Need to clarify use of solid assemblies in IGES

Submitted by: Edward Clapp
Autodesk, Inc.


Description of Problem

IGES does have a Assembly entity, entity type 184, but it needs improvement. Given that IGES is not likely to undergo change after Version 6.0 and that assemblies are becoming increasingly important to CAD users, it seems a good idea to attempt to make improvements for this release.

First, the 184 was originally created as part of the CSG entity set and has undergone only one change since. A new form number was added to permit the use of B-rep solids in the assembly tree. CAD systems today use assemblies to group together B-rep solids, so the asymmetry should probably be removed.

Second, CAD systems are now re-using the same object in an assembly tree, but giving it a different name. For example, an object called TIRE may be used in four different places in an assembly, being called TIRE_LEFT_FRONT, TIRE_LEFT_REAR, and so on. IGES cannot directly represent this at present.

Third, CAD systems are increasingly using what are effectively external references as components, which may be in an external library, in an assembly tree. At present, the Solid Assembly may not reference such items.

Proposed Solution

Proposed solution to the first problem:
---------------------------------------------------

Add a Form 2 to the Solid Assembly, which is like the Form 0, except that primitives are replaced by Manifold Solid B-rep Objects. Question: should there also be a form number to indicate the sending system is making no statement about the type of solids being used?

Alternative solutions to the second problem:
-----------------------------------------------------------

  1. Create another set of Form numbers (10, 11, and 12) for the Solid Assembly to permit a change to the   syntax to include a list of N strings, any or all of which may be null, where N is the number of items in   the Assembly.

  2. Establish an explicit convention that if one wishes to reuse a solid in an assembly with different names   for each use, an instance of a Solid Assembly Instance (entity type 430) must be placed between the   solid and the original assembly. So, if Assembly A contains two named instances of solid B, the   referencing must be done as follows:

    Assembly A references Assembly Instances B1 and B2, both of which reference solid B. B1 and B2 will also reference different instances of the Name Property (entity type/form 406:15).

      The Solid Instance Entity description must be changed to permit it to reference a Manifold B-rep Solid   Object. This is my preferred solution.

  3. Establish an explicit convention in which assembly A references a Subfigure Instance who's   Subfigure Definition consists of solid B. The Subfigure Instances reference different instances of the   Name Property. In addition, the description of the Assembly entity must be changed to permit the list of   items in an assembly to include Subfigure Instances. This alternative has the advantage that the   Subfigure Definition being used may be replaced by one of the forms of the External Reference Entity   (entity type 416) without requiring any change to the description of that entity. There are disadvantages:

    a) The Subfigure Definition/Instance capabilities are already being used by many, perhaps most,   IGES translators. This use in a Solid Assembly may cause an unwanted translation of instances   of Subfigure Definitions into the native equivalent.
    b) The Subfigure Instance may have a scale factor other than 1.0, while CAD systems typically   do not permit this in assemblies.

Proposed solution to the third problem:
----------------------------------------------------

In the event that option 3 is not chosen as a solution to the second problem, the description of the External Reference Entity (entity type 416) needs to be changed to include, for forms 0, 2, and 4, the ability to reference solid assemblies in addition to subfigures.

An addendum:
--------------------

The taxonomy for geometry should be altered slightly to account for use of the Solid Assembly Entity. At present, Curve, Surface, CSG, and B-rep solids are all at the same level. The change should be to introduce a class of Solid on the same level as Curve and Surface. It would contain classes CSG, B-rep, and Solid Assembly. The Solid Assembly class contains the Assembly and Assembly Instance.


Posted for comment 8/24/98


Program questions: ssd@nist.gov
Phone: (301) 975-4000, Fax: (301) 975-4715
Standards Services Division, NIST, 100 Bureau Drive, Stop 2100, Gaithersburg, MD 20899-2100

Website comments: tsweb@nist.gov

If you have any questions regarding this website, or notice any problems or inaccurate information, please contact the webmaster by sending e-mail to: TSWeb@nist.gov
NIST is an agency of the U.S. Department of Commerce.




Web site owner: Technology Services