From its inception in 1988 Okino has long been an active developer and provider of CAD conversion software that has helped to bridge the CAD-world with the non-CAD animation and visual simulation worlds. The following are answers to very common questions posed by our users over the last decade and a half.
In the minds of Okino staff there is usually only one "ideal" file format to import from any CAD package. If you don't want to read through our WEB pages or these FAQS then please send a quick email to Robert Lansdale right now and he'll provide the ideal answer + some overview if needed (firstname.lastname@example.org, email@example.com).
This probably relates to “units matching”. When the person modeled the original scene they implicitly or explicitly chose a “unit of measurement” for measuring sizes in the source modeling program. The imported geometry will have to be scaled in size to match the units of measurement from the source modeling program to the destination program. For example, Microstation files are always measured in millimeters while Maya and Lightwave uses centimeters, and 3ds Max uses inches. Most Okino CAD importers will allow you to specify the desired units of measurement for your destination program which will provide automatic scaling.
Most CAD modelers are BREP “solids” based which define each object by Bodies, Shells and Faces. Faces are one of the basic elements of a solids object. Okino’s CAD importers typically provide you with an option to import the objects “By Body” or “By Face”. Importing “By Body” will create a minimal number of objects in your scene. If these options are disabled (not available for the current import operation) then simply enable the “Optimize Hierarchy” or “Optimize Scene” checkbox that is available on almost all Okino CAD importers – this option was created to reduce the excessive number of “Face” elements. Alternatively, import into the stand-alone PolyTrans or NuGraf software and choose the “Optimize Number of Objects” command from the “Win” menu of the Selector Window’s main menu bar.
STEP AP214 files imported through Okino's Granite module is the defacto method to import data from UG NX. We have found that STEP is much more precise and error free compared to using the moving-goalpost Parasolid .x_t file format.
This is best explained via our dedicated Microstation DGN importer help system. Okino spent over 12 years writing the main DGN importer implementation and we are super-experts in all aspects of DGN files.
The best method to move data from Microstation will depend on what type of entities were used to create the Microstation scene, whether it was made with Parasolid BREP solids ("smart solids") or built-up from endless numbers of basic Microstation elements like lines/curves/extrusions/revolutions.
3D piping models are often best converted using VRML2 format and a small pixel tolerance. Scenes created with Parasolid entities ("smart solids") are most often best converted using STEP format. Otherwise, U3D export from Microstation and imported into Okino software via U3D works very well.
Lightwave 9.5 or older needs special attention and instructions in order to properly import CAD models. Lightwave and 3ds Max have their origins in the mid-1980’s and both still cling to the usage of approximating “smoothing groups” instead of accurate vertex normals, the latter which is the modern method of representing mesh smoothing. Smoothing groups have the most problems with CAD data where they are a lot of abrupt angular changes within a single mesh object. To compound the problem Lightwave only allows a single smoothing angle to be defined per mesh object which can be very limiting. Due to these facts, you will have to “guess” an appropriate smoothing angle for your data when exporting to Lightwave files via the “Geometry Smoothing Angle” type-in box on the Okino Lightwave exporter. In general, use a smoothing angle between 18 and 30 degrees. After import into Lightwave you can interactively set this smoothing angle with the material editor.
But, there is one case you should be aware of. First of all, each object in the source CAD model becomes one .lwo file on disk, and thus can create a tremendous number of .lwo files. To overcome this situation enable the “Optimize Hierarchy” or “Optimize Scene” checkbox found on most Okino CAD importers; this will heavily reduce the complexity of the scene and create many fewer .lwo files. The only side effect of doing this is that some new "combined" objects may not smooth properly in Lightwave due to the "single smoothing angle per object" (ie: a new combined object might now have a combination of creased and smoothed faces). If this problem occurs then you can either explode those objects based on material assignment inside Lightwave or inside PolyTrans and the problem will go away.
For Lightwave 9.6 or newer, just make sure to enable the "Explicit vertex normals" on the Okino Lightwave exporter (so that the CAD vertex normals flow through to the Lightwave program). Also, enable the "Optimize hierarchy" option where available on an Okino CAD importer so that the number of .lwo files created on disk will be minimized.
1) Use the “Shrink Wrap” feature inside the Pro/Engineer software. This will create a new assembly and related parts which represent the outer visible surfaces of the original assembly.
2) Make sure you have chosen the "Topology = Bodies" radio button on the native Granite Pro/E importer.
3) Change the tessellation sliders on the native Granite Pro/E importer to be higher than the 0.1% default settings (however, we expect that nearly all of our users will use these default settings for their Pro/E imports).
4) Go back to Pro/E and remove all useless or hidden sub-assemblies.
5) Okino software ships with a top notch polygon reduction system which we spent a good 3 years writing as the main reduction system for CAD files. It will remove 80% of polygonal data on average, or more, if the source data is over tessellated. As much as this is available to all users, we do not expect it to be used for CAD imports because our CAD importers provide fine control of NURBS to mesh tessellation during the import phase. It is up to yourself to determine if the use of the polygon reduction system is needed.
Export from your CAD modeling program as “solids” and not “surfaces”. Then, use one of the PTC Granite importers such as ProE, IGES, ACIS, STEP or Parasolids. They will create a mesh based on the BREP (solids) representation of the model.
Okino’s view windows implicitly only show objects up to 1 million units away from the camera to improve z-buffer drawing efficiency (10 million units in more recent versions of the software). We would recommend you update your DXF/DWG importer module (imp_dxf.dll) which will allow you to scale the imported geometry smaller so that the extent of the data is not so large.
The realistic answer is that you need to be reasonable with the size of the source data set. If the data came from a solids modeling program then the data will be in parametric or NURBS geometric format. Once this data gets converted to a mesh representation it will expand by 10 to 100 times in size on average (in terms of memory usage). If the source data is highly curved (like an oil refinery plant with many tubes) then the meshed version of the solids data will become huge. In general if your source data is very large (say, over 600MB of source data) then you just have too much data to start with in the first place – remove excess and useless geometry items in the source modeling program, and use “Shrink Wrap” if you are using Pro/Engineer-Creo. There is no definitive answer in terms of “What is too large” but in our experience assemblies up to 600MB in size can generally be imported, optimized and animated adequately in programs such as 3ds Max, Cinema-4D, Maya, Softimage and Lightwave.
You need to export your IGES file as a “surfaced model” (128/144/142 entities) with “uv-space trim curves”. If you import the model, press F2 on the keyboard and scroll backwards in the message window then you may find that your IGES file has no “uv-space” trim curves defined in it. Alternatively, import via the PTC Granite IGES importer.
A long time ago, Maya v2.51 added the new capability of importing vertex normals for its mesh based objects (these are needed to represent the smoothing of the objects). However, the internal routines inside Maya can become incredibly slow to accept the vertex normals during an import process of large mesh models. The solution is to choose the “Create new vertex normals based on angles” radio button on the “Mesh” sub-panel of the PolyTrans-for-Maya “Import Options” panel; this will use smoothing groups instead of the more accurate vertex normals.
There are 6 more extensively worded "speed-up solutions & historical explanations" provided in the "Potential Speedups of the PolyTrans to Maya Transfer process" in the "Other pertinent info" section of the PolyTrans-for-Maya help file (ptio.chm). This can be accessed by pressing the Help button on the PolyTrans-for-Maya UI panel within Maya, or by viewing the ptio.chm file which is located in the 'maya\bin\plug-ins' directory. This section explains why Maya can be very slow to import CAD files (or any large file in general) and the methods which can be used to speed up the process. - Updated: May 12, 2013
The import and handling of truly large CAD files has been the life's work and focus of Okino's founder and primary system architect Robert Lansdale since the late 1980's. He has spent thousands of hours writing friendly and educational emails to Okino's user base about how to make the import of large CAD files a simple process. Most of it comes down to a change in pure human perception.
From a realistic standpoint, most non-CAD programs were not written to handle more than 5000 to 50000 objects per scene. Chairs, tables and basketball objects do not require many objects in such programs. However, CAD files such as oil refineries or 3D plants can have tens of thousands to hundreds of thousands of objects per scene. Okino software has been written from day one to be a stepping stone program, allowing such complex files to be imported, optimized and then re-exported to 3D programs or file formats which cannot handle such extreme files. As an example, Okino software has been optimized to handle a particular 550,000 object CAD file over the years. Even so, there's always an upper limit to what any non-CAD-modeller program can handle.
In no particular order, some of the basic comments (in a simplified and shortened manner) are:
1) The following paragraphs will only scare most people reading this FAQ. In true reality most Okino customers just import their CAD files and never have to deal with memory issues or "files which are too big". This FAQ entry is geared more towards those people trying to import CAD files which are ultra massive.
2) You have to be realistic about how much data you are trying to import. One or two customers per year will approach Okino wanting to do a conversion which is not realistic. In extreme cases it will most often relate, for example, to the import of a 2GB Honda/GM car datasets from the original raw CAD files into 3ds Max, Maya, XSI, Lightwave, CINEMA-4D or any number of downstream file formats. As the short answer, such conversions are not possible without some work. 2GB of CAD data is 2GB of pure NURBS geometry - there will be an explosion in size of 10 to 100 once that NURBS data is tessellated. Hence, 2GB of pure NURBS will convert to something like 10-20GB of mesh data. On top of that memory requirement, there will be the need for a second copy of data for the OpenGL display lists, and another 1 or 2 copies needed to optimize + re-export the data. This is why you will want to keep your CAD file size in the 300-500MB range for pure sanity.
3) As a gospel rule explained by Robert Lansdale in his daily emails, a very comfortable and sane CAD dataset size is in the 300-450MB range. That is an ideal upper limit size to a single CAD file, as the 10-100x expansion size due to tessellation will result in a file with a finite number of polygons that can be handled by most downstream 3D programs. Keep in mind that a $5k BREP solids modelling program is not the same as a major 3D animation system which was written originally in 1985 (as most were) and was never made to load + animate large CAD files. Just as so much water came be forced into a garden hose, there is only so much data that can be forced into a non-CAD program with a fixed amount of memory.
4) Make sure you have chosen the "Topology = Bodies" radio button found on most Okino CAD importers. That uses considerably less memory than the "Import by Faces" radio button. Also make sure you keep the "Optimize Hierarchy" checkbox enabled on each Okino CAD importer.
5) Change the tessellation sliders on the native Okino CAD importers to be higher than the 0.1% default settings if you wish a coarser import.
6) Go back to source CAD program and remove all useless or hidden sub-assemblies. We rarely mention this to our customers, but it is the most sane thing to do once a CAD file starts to get up past the 500MB file size. Trying to downsize a massive CAD file after tessellation does not make much sense -- it is much simpler and quite trivial to delete sub-assemblies in the source CAD program.
7) Okino software ships with a top notch polygon reduction system which we spent a good 3 years writing as the main reduction system for CAD files. It will remove 80% of polygonal data on average, or more, if the source data is over tessellated. As much as this is available to all users, we do not expect it to be used for CAD imports because our CAD importers provide fine control of tessellation during the import phase. It is up to yourself to determine if the use of the polygon reduction system is needed.
8) Within Pro/Engineer or CATIA, use the “Shrink Wrap” feature to created simplified representations. This will create a new assembly and related parts which represent the outer visible surfaces of the original assembly. This can reduce the size of the source CAD file considerably.