Re: igs to stl

From: BROCK ROONEY (brockrooney@delphi.com)
Date: Tue Dec 05 1995 - 20:55:27 EET


At 07:59 AM 12/2/95 -0800, Joe DeGuglielmo wrote:
>I'd like to change the subject for a while if that's okay. How about
>RP, we haven't talked about that lately. My question deals with the
>Iges file to STL file conversion.
>
>1)Could someone briefly explain how this process works and what its
>limits are?
>
>2)What systems are compatible and which are not?
>
IGES is not a replacement for the STL file, it is a replacement for the
CAD Database. Our STL generation products deal with surfaces. We do not
care whether these surfaces come from a IGES file or from a Cad database.
For our purposes, a Solid Modeler is just a powerful surface creation tool.

If you have only a wireframe model, then you have a lot of work to do.
Experience indicates that most wireframe models are ambiguous, and so
require significant CAD design work to complete the surface or solid model.

Usually people use our IGtoSTL or other STL generation products for one or
more of the following reasons:
 1) The original CAD system does not offer STL output.
 2) The CAD system STL output program costs money, and the customer
    cannot justify the cost due to the small quantity of rp work.
 3) The CAD system STL output doesn't work very well. It could be
    tessellation quality (too many or not enough triangles) or failure
    to match the triangle vertices.
 4) The CAD system STL software only works well with solid models, and this
    is a surface model. This could be because:
     a) the part was designed as a surface model.
     b) The part was moved from one CAD system to another and the solid
        model turned into a surface model.
    Some customers report saving up to a week of work per part by not
    having to turn a surface model into a solid or volume.
 5) The CAD system stl generation fails on this particular model.

Our IGtoSTL has been used to make STL files from just about every BREP Solid
or Surface modeler capable of IGES surface output.

Problems:
All software has bugs. So all CAD systems have bugs. All IGES translators
have bugs. All STL generators have bugs. One hopes the bugs are obscure.
Cad models are made by people. People make mistakes.

As a result, our STL generation products are designed to help you fix
problem areas. IGtoSTL detects and removes many duplicate surface situaions.
Any gaps are pulled together of filled, resulting in completly closed
volumes with all triangle verticies matching exactly. Any problem
areas where filling was necessary are reported. We have our own triangle
format (STH) which is smaller (30-50% of the stl file size) and contains
more information, including which triangles were fill triangles. The fill
triangles can be separated from the main body and examined do determine
what, if anything, needs to be fixed in the CAD model. You can do this by
viewing the STH file, or converting All or just Fill triangles back to IGES
and reading them in on top of your CAD model. Indeed, we have customers
who use our STL generation software just to find problems with the CAD model.

I recommend you have available a CAD system capable of manipulating
trimmed nurb surfaces. If the IGtoSTL has problems, you can read the IGES
into your CAD system, fix the problem surface areas, and then rerun IGtoSTL.
You DO NOT need to make a solid.

The major problem areas:
  1) Problems with the Cad model.
    a) Surface Models. In a surface model, the User is responsible
      for making sure all the surfaces are present and trimmed up nicely.
      So chances are, there will be instances of duplicate, overlapping,
      or missing surfaces, or incomplete features.
    b) Solid Models. Much less error prone. But sometimes you will get
      models where the Solid Modeler had problems, but the user ran out
      of time, and sent it anyway. I have seen models where a shell
      operation failed, and so lots of inner surface were missing. Or
      a feature was modified, and some of the old still remains. You can
      also have the situation where several versions of the model are
      saved. The result is several slightly different models in the
      same space, which results in garbage.
  2) Problems with the IGES output from the Cad system.
    a) Bugs in the output IGES translator.
      The quality of IGES output has improved markedly in the last
      couple of years. Plus our IGtoSTL works hard to read funny IGES
      files, recognizing some 30 different CAD systems from the header.
      But some systems still have bugs. You can have missing surfaces,
      surfaces with incorrect trim boundaries, untrimmed surfaces.
    b) Operator chooses inappropriate options on CAD iges output.
      Most IGES translators have options. Some have LOTS of options.
      We translator writers do not add options for fun, so different
      settings are appropriate under various conditions. The most
      frustrating problem is when some "Idiot from IS" says "That's not
      the way we do it here at Mega-Corp.", and as a result sends
      garbage, when useful output is only a menu pick away.
      IGES output advice:
        We want Surfaces. Trimmed Surfaces. Preferably Trimmed NURB Surfaces.
        If the IGES output translator offers a choice of
          1) Bspline, Nurbs, Rational Bspline, 126/128
                -or-
          2) Something else,
        choose (1) in the vast majority of cases.
  3) Problems with IGtoSTL
    Occasionally IGtoSTL can have problems determining how to connect surfaces,
    even when the surfaces are technically correct. Usually this happens with
    surface models, since a surface modeler can create situations that a
    solid modeler would not allow. IGtoSTL has to sew the surfaces together,
    not unlike the sew operations in a solid modeler. IGtoSTL can sew better
    than a Solid modeler because IGtoSTL can move things in ways a BREP
    solid modeler cannot, and because the tolerances in this application
    are HUGE compared to those in a Solid Modeler, and because IGtoSTL tries
    harder.

We also can treat 5 point closed polylines as surfaces (Some Cad systems
can output facets this way).
  
We can also use curves to generate supports. This curve feature is not used
much any more, since there is now automatic support generation software
available.

(If you are from IS, and not an Idiot, sorry, please do not bother to tell me.)
C. Brock Rooney, Pres., Brock Rooney & Associates Inc. (Brockware)
       268 George St. Birmingham Michigan 48009 USA
(810) 645-0236 fax/bbs (810) 645-9020 email brockrooney@delphi.com



This archive was generated by hypermail 2.1.2 : Wed Jun 20 2001 - 12:57:30 EEST