Spatial Announces Major Releases Of Their 3D ComponentsFeatured, Reviews Tuesday, June 25th, 2013
Today Spatial, the 3D component arm of Dassault Systemes, announced major releases of their 3D components:
- R24 of 3D ACIS Modeler, 3D Mesh and 3D InterOp
- R2014 of Convergence Geometric Modeler and Constraint Design Solver
Here is a list of new features I found interesting in the R24 release of 3D ACIS Modeler, 3D Mesh and 3D InterOp.
Beginning with R24, Spatial is dropping support for a some compilers, one of them being Visual Studio 2005. Also R24 will be the last version to support Visual Studio 2008 and is the first version to add support for Visual Studio 2012. Support for Windows XP and Vista will also be dropped after R24.
Spatial claims that they have improved the performance of boolean operations in R24. Boolean operations in R24 run 60% faster then in R23. If this is indeed the case then we should see significant performance improvements in direct modeling applications like SpaceClaim which are based on the 3D ACIS Modeler. According to Spatial, the performance improvement is more pronounced on models that have:
- large number of topological elements
- analytic geometry
- significant portion of the interactions are coincidences
Here is a graph that compares a non-regularized boolean union operation between bodies that have planar geometry and a large number of faces in R23 and R24.
Another new feature added in R24 is the ability of the Faceter to create global meshes in addition to local per face meshes. Two new apis have been added to do this – api_create_global_mesh and api_create_global_meshes. Global meshes are useful when it comes to things like FEA where you are interested in treating the body as a single entity as opposed to when you want to render the object in a graphics window using OpenGL, DirectX, HOOPS, etc. in which case you really need per face meshes.
The Faceter has also been improved to handle bad geometry. For example, in the image below the outer boundary intersects itself yielding incorrect facets.
CAD systems use the facets supplied by the modeling kernel and send them to the graphics engine to display on the screen. That’s why you see artifacts like the image on the left, especially when importing geometry from external files like STEP and IGES that have been written or interpreted in an incorrect manner.
Another enhancement in R24 that will help ACIS based direct modeling CAD system is the increase in performance in local operations that are carried out close to a large number of faces in the body. For example, consider the situation in the image below where a set of holes are to be moved radially inwards.
Why does this matter? Well, when you move a face in a direct modeling CAD system, with every mouse movement, the modeling kernel constantly tries to figure out whether the new location of the face interferes with some other face in the body. If it does it needs to call the necessary boolean operator to perform a computationally expensive boolean operation, facet the model and display the updated facets in the graphics window. This figuring out of whether two faces intersect or not becomes increasingly complex when a number of faces are in close proximity to the face (or bunch of faces) that are being moved. So having the modeling kernel quickly figure this out is always going to result in significant performance improvements for the end user of the direct modeling CAD system.
Hybrid meshes have been introduced in R24. A hybrid mesh contains both surface as well as volumetric elements. The regions to be meshed are denoted by cells. In the image below the original model has two cells that define the closed volume of the model. The image on the right shows a hybrid mesh for the body, with a tetrahedral mesh on the outer cell and a surface mesh on the inner cell.
In previous versions of 3D Mesh, the parameters controlling the generated mesh were global controls. This means they affected the entire model. In R24, localized meshing controls have been added to which aid in refining a mesh using a vertex, an edge or a face. This will be extremely useful in applications like FEA and CFD.
Click to enlarge
R24 adds the ability to export meshes to several mesh formats which include ANSYS, PATRAN and NASTRAN. Depending on the geometry and the meshing parameters the act of generating a mesh can be time consuming. R24 has the ability to view the progress while generating surface, tetrahedral and hybrid meshes.
3D InterOp is Spatial’s data exchange component. The table below lists the file formats along with their versions that can be read by 3D InterOp R24.
Click to enlarge
It is important to note that the Parasolid based formats (NX, Solid Edge and Parasolid) can be read by 3D InterOp using two methods. One that makes calls to the “authentic” Parasolid libraries supplied by Siemens PLM. And another that uses libraries created by Spatial by reverse engineering the NX, Solid Edge and Parasolid file formats. The former method needs a Parasolid Communicator license from Siemens PLM, while the latter doesn’t.
This table lists the file format that 3D InterOp can write to.
R24 adds new “graphical” components for Solid Edge and STEP. This needs a little explanation. Graphical means 3D InterOp will read the Solid Edge or STEP file you give it and return a mesh object that you can send to your graphics engine to display on the screen. Say if you want to create a Solid Edge or STEP viewer this is what you would use.
The way this works also needs to be explained. The library used to read Solid Edge files is either the Parasolid Communicator library from Siemens PLM or the reverse engineered one from Spatial. If pskernel.dll (the Parasolid Communicator DLL) is found in system path the former will be used. If not the latter will be used to read the Solid Edge file.
R24 of 3D InterOp also has the ability to write 3D PDF writer. However, solids and surfaces will be output tessellated mesh objects.
All in all, it seems like Spatial is continuing to improve ACIS in spite of Dassault Systemes deciding to license CGM, the modeling kernel over which CATIA is built.