May 1999 newsletter < news < home

 
Newsletter: May 1999
SMLib Market Position White Paper
Introduction

This white paper discusses the market position of SMLib relative to the other two available Solid Modeling Kernels, Spatial Technology’s ACIS and Unigraphics’ Parasolid. "How does SMLib compare to ACIS and Parasolid?" is one of the questions that we get asked on a fairly consistent basis. This white paper is an attempt to address this question along with other marketing issues related to the decision to purchase our SMLib product.

Geometry: Build or Buy?

Developers of 3-D applications face two important decisions. The first decision is to build a geometry library in-house or to buy an existing library from an external source. Here are some of the factors which contribute to the build or buy decision process:

  • What are the costs involved?
    • Initial license cost
    • Product royalty costs
    • Training costs
    • Cost of software development


  • What are the benefits?
    • In terms of time-to-market
    • In terms of reliability
    • In terms of performance
    • In terms of available functionality


The build or buy decision can be a very difficult one. On one hand if you develop your own geometry software, you are in control of your own destiny. If bugs need to be fixed, you can fix them quickly. If you need to make improvements, you can do it. You internally have the technology and expertise to understand what is going on. You don’t have to rely on a "Black Box" where no one at your company really understands how it works and why it does the things it does. What if you pay the initial license fee of a geometry kernel and the software simply does not satisfy your requirements? On the other hand you see the benefits of purchasing a component because geometry software development is not really the focus of your business. You could purchase a geometry kernel at a small fraction of the cost of the equivalent in-house development, and you could drastically reduce your time-to-market. Even if you require only a small subset of the functionality provided by a geometry kernel, it could cost you many man-years to develop and maintain that software in-house. There is also the possibility that the software you produce will not be as robust as that provided by a kernel developed by some of the top experts in their field and validated by a significant user base.

With SMLib we have tried to make this build-or-buy decision easier for you by addressing some of these issues. First, we only license fully documented "C" and "C++" source code. When you purchase our software you get an "Open Box" not a "Black Box". This really gives you back the ability to control your own destiny. You can fix critical bugs or get them fixed by SMS in a matter of days not months. You can make performance improvements where needed. You can augment or customize functionality in SMLib using the C++ object-oriented features. You can make SMLib objects become an integrated part of your system and its architecture. We believe that for a large percentage of 3-D applications, SMLib will enable the development team to build superior applications and will enable them to do it faster than with the other geometry kernels.

Secondly, we have addressed the cost issue by the way we sell our software. The SMLib license is sold using a monthly maintenance fee with NO product royalties. The SMLib license is very much like a rent-to-own agreement. There is no large up front license fee to pay. If you decide at any point not to continue to use SMLib, you can simply terminate payments and remove SMLib from your systems. If you pay the monthly maintenance fee for two years or more, you will own a permanent SMLib license. We have chosen this method of selling SMLib because we are quite confident in the initial quality of our software and documentation as well as our ability to support our customers development efforts. In many respects, purchasing SMLib is like acquiring a long-term development partner.

SMLib in the Kernel Market

The decision about which kernel to purchase really depends largely on the requirements of your 3-D application. In some cases, SMLib may be the best choice to satisfy your requirements. In other cases, ACIS or Parasolid may be your best choice. It is also possible that your requirements are only satisfied by a combination of things from two or all three of the kernels. From our point of view, we see two distinct market segments for Solid Modeling Kernels. The first is the high-end mechanical CAD market. The second market is basically everything except high-end mechanical CAD. This market includes Engineering, CAM, CAQ, PDM, Graphics, Animation, Medical, Game Development, and Scientific applications. Here is how we see SMLib playing in these two markets.

High-End Mechanical CAD Market

This market is the primary focus for both ACIS and Parasolid. Much of their development efforts have gone into satisfying requirements for this market. The typical application in this market is a feature-based solid modeling package targeted at the design of mechanical parts. Examples of products in this market include SolidWorks, SolidEdge, ProDesktop, Mechanical Desktop, Microstation, SDRC Ideas, IronCAD, and several others. There are probably between 15 and 20 legitimate contenders in this market. The movement of one of these 20 customers from one kernel to the other is big industry news, because this is the area where there is the greatest royalty revenue potential. They both have concentrated a majority of their development effort toward satisfying this customer base. This market requires such advanced features as shell offsetting, comprehensive solid filleting, Booleans, draft angles, local feature operations, etc. Both companies have put tremendous effort into squeezing every bit of performance and reliability out of these advanced construction operations as possible. The primary focus of these applications is definition of and creation of part geometry. If you are building an application to compete in this market, ACIS or Parasolid are possible choices for a core geometry engine. However, SMLib does offer a sufficient number of unique capabilities that you might want to consider in order to augment the functionality of your chosen core geometry kernel. In many respects, we see SMLib as a complementary product to ACIS and Parasolid in this high-end mechanical CAD market.

The Other Market – Everything except High-End Mechanical CAD

This market is the primary focus for SMLib. The number of potential kernel geometry users in this market is 100 or more times that of the Mechanical CAD Market. Our pricing structure as well as our support philosophy is really designed to address this "other" market. For the many 3-D applications which do not need the full-blown functionality of an ACIS or Parasolid, we think that SMLib offers an exciting new alternative. For some applications, we feel that SMLib is a far superior choice because we have focused our development efforts in areas other than just the creation of mechanical parts.

SMLib – Distinguishing Features

As we see it, the three most distinguishing technological features of SMLib are a fully functional NURBS modeler, NMT Merge Operation, and Query Performance. This comparison is based both on direct experiences with the other kernels as well as information gathered from a number of sources.

NURBS

SMLib’s NURBS are based on Nlib from GeomWare, Inc. There are over 85 licensed users of Nlib around the world. Wayne Tiller the president of GeomWare, Inc. is one of the world’s foremost NURBS experts and co-author of The NURBS Book, the standard industry reference on NURBS. Nlib contains a comprehensive set of low-level curve and surface functionality such as knot insertion/removal, subdivision, extension, degree reduction/elevation, basis evaluation, construction from various forms, etc. Additionally Nlib contains a complete set of higher level functionality such as interpolation, approximation, smoothing, construction with tangent field constraints, fitting a curve network, etc. Nlib is a software package that is continuing to be enhanced. Over the past year major functionality added to Nlib includes: N-Sided Patches, Point-Cloud Surface Approximation, Surface Offseting, Functional Offseting, and Surface Extension. We believe that the breadth of functionality as well as the quality of the geometry produced by Nlib is unmatched anywhere in the industry.

NMT Merge

SMLib’s core topology is Non-Manifold. Non-manifold Topology (NMT) is a super-set of Manifold Topology. The basic operators in SMLib support NMT. Parasolid does not have any NMT capabilities. It is strictly a Manifold Solids Modeler. ACIS has some ability to represent non-manifold objects, however, this functionality was added after the initial development of the ACIS kernel and is not an integral part of the kernel. Consequently, many of the important operators in ACIS, such as Booleans, do not support non-manifold topology. One very important operator in SMLib is the ability to combine two boundary representations in what we call a MERGE operation. Boolean operators are a special case of the MERGE operator where topology is delete to "regularize" the result. The MERGE operator works equally well with wire edges, surfaces, shells, solids and cellular topologies. The generality and flexibility of the Merge operator make it an extremely useful tool in many design and analysis scenarios.

Query Performance

The Trimmed Surface Library (TSLib), another component of SMLib, is also available in a separate product from IntegrityWare, Inc. TSLib was specifically designed for the post-creation query applications. TSLib utilizes a proprietary caching technology to deliver exceptional performance for trimmed NURBS surface operations. The low-level trimmed surface operations such as UV point classification (10,000/sec.), dropping points (2,000/sec.), ray firing (300/sec), and point minimization (400/sec.) are highly optimized. (Time test results were generated on Windows NT with a 266mhz Pentium II). Thus, it becomes possible to do real time measurement between complex solids. The same caching technology that is used for these low-level operations is also used to speed up operations such as sectioning, surface/surface intersection, projection, etc.

SMLib Architecture – Modular & Open

SMLib is constructed using separate and independent libraries, Nlib Basic, Nlib Advanced, GSLib, TSLib, ASPin and NMTLib. Each of these libraries, with the exception of NMTLib, is a powerful product in its own right with substantial existing customer base. All of these libraries except ASPin and NMTLib can be built into standalone libraries. This makes it possible to utilize only a subset of SMLib for a given application. From the perspective of a developer it means that you can work at any level in the software. You have access to the low-level free-standing NURBS curves and surfaces. You can work with individual trimmed surfaces. You can perform high level solid modeling operations. You can even access all levels simultaneously if that is what your development requires. This "Open Architecture" gives you access to all of the same utilities that we utilize in the development of SMLib. For example, if you have two free-standing NURBS surfaces you can utilize the same surface/surface intersection operator that is utilized by the Boolean and Merge operations. There are no "Hidden APIs" which you cannot access.

Data Interoperability

It is probably appropriate to discuss why we do not have plans to do some of the database management operations typically associated with geometry kernels. We feel that this promotes a "loose" integration of the Kernel and the 3-D application. Both ACIS and Parasolid promote a proprietary data format to enable data interoperability across applications. The ACIS Geometry Bus (SAT File) and the Parasolid Pipeline (XT File) are the preferred file formats for exchanging data between applications based on the corresponding kernel. Although SMLib does have the ability to dump out its data into both ASCII and binary files, this is not the preferred data representation. It is simply a convenient way to allow users to send us data for debugging purposes. SMLib’s preferred representation is a runtime memory structure called a topology table. The topology table is compressed and indexed representation of the topology and geometry. The topology table is an intermediate format that is designed to allow SMLib users to read/write from/to their own databases. The topology table is used in both the IGES translation and the file I/O of SMLib. We feel that this will give developers the ability to create a much tighter integration between the geometry and other data elements of their application.

IGES/SMLib - Read and Write

Solid Modeling Solutions offers an add-on module to SMLib that reads and writes IGES data. This module was developed by HarmonyWare, Inc (www.harmonyware.com) This library enables SMLib to work with data generated by most CAD/CAM/CAE systems. The IGES/SMLib module utilizes the powerful tools inside of SMLib to "clean up" bad IGES data. It is able to detect and correct much of the bad data that is typically found inside of IGES files. It is able to detect and fix gaps in the trimming curves, intersections and self-intersections of the trimming curves, loops with the wrong orientation, and many other geometry problems. Because SMLib is based on NURBS technology, there is no loss of geometric information and no approximation required when writing IGES files.

Concluding Remarks

Both ACIS and Parasolid are good products that have many customers who have developed successful applications. If one of them satisfies the requirements of your specific application significantly better than SMLib, then you should go ahead and purchase it. If you are not sure, we would appreciate the chance to work with you as you consider your alternatives. We believe that SMLib is an excellent product both in terms of its technology and its quality. There are many successful products based on the major components (Nlib and TSLib) of SMLib. As a company, we stand behind SMLib with an unmatched level of support for all of our development partners no matter what their size.

Back To Top