igs to stl

From: Joseph DeGuglielmo (Eastman Kodak Company), André Dolenc (Helsinki University of Technology), Frost Prioleau (Plynetics Express Corporation), C. Rooney (Brock Rooney & Associates Inc.)
Date: Saturday, December 2, 1995

From: Joseph DeGuglielmo (Eastman Kodak  Company), André Dolenc (Helsinki University of Technology), Frost Prioleau (Plynetics  Express Corporation), C. Rooney (Brock Rooney & Associates  Inc.)
To: RP-ML
Date: Saturday, December 2, 1995
Subject:  igs to stl
     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?
     I'm living in a somewhat isolated world here, mostly dealing with UG, some ProE, and many .stl files.  What I'm interested in knowing is what additional work is required when an IGES file is supplied to a RP Center and how the final part compares to one made from a CAD or STL file.
     Thanks
Joe DeGuglielmo
Eastman Kodak
jfdegug@kodak.com
jfdegug@ix.netcom.co

     Excuse me, but before one can answer such questions, we need to clarify something about IGES. IGES permits one to represent a variety of geometrical objects:
     1. As pointed out by Mr. Todd, the IGES file may contain a wireframe. Wireframes are *ambiguous* and it is impossible to convert them to solids automatically. Even an experienced CAD operator may derive the wrong model without input from the designer.
     2. It may contain a cloud of points. The problem, then, is in the domain of reverse engineer-ing. There are specialized tools for this.
     3. It may contain a set of cross-sections. If they represent, say, a medical model, then, again, there a specialized tools for this too.
     4. It may contain a solid model represented as a Brep or CSG tree. Well, again, the technology for facetting a solid model is an old one in CAD and approximation theory.
     5. It may contain a description of a surface model. There is a lot of literature on this one too.
     And so on. As you can see, IGES can be used for several purposes, and there is no single method to convert a generic IGES file to STL.
Regards, Andre'

From: Frost Prioleau <frost@plynetics.com>
Date: Sat, 2 Dec 1995 23:29:57 -0800
Joe-
     Our experience with Brock Rooney's  IGES to STL conversion software has been excellent, as long as the surfaced IGES file is relatively clean.
     Little extra work is required of the RP Center if the file is clean. In that case, the conversion typically works well on our default settings. For most files, the conversion takes 5 minutes or less. If the file has missing surfaces and/or gaps between surfaces, we often iterate through the software several times, changing parameters as we go.
     We have run STL files created with this software through both our stereolithography and selective laser sintering equipment and have had no problems.
     Hope all is well in Rochester.
Frost

Date: Tue, 5 Dec 1995 13:55:27 -0500 (EST)
From: BROCK ROONEY <brockrooney@delphi.com>
     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)


Previous message | Next message
Back to 1995 index