Solid Modeling has grown to become the preeminent CAD modeling technology. It is the modeling method of choice for CATIA, Pro/ENGINEER, Unigraphics, Autodesk Inventor, Solid Edge, and SolidWorks, along with just about any other CAD system you can name. In the past, this solid modeling technology had been reserved for large, expensive, Unix-based workstations. Recently, however, enhanced hardware and new products have brought solid modeling to personal computers (PC's). Of special interest to NC shops are CAD/CAM products that will machine solid models created by their customers, as well as greatly simplify their own creation of complex multi-surface part models for machining.

CAD Modeling
CAD (Computer-Aided Design) is any method of defining a part's shape and dimensions using a computer. CAM (Computer-Aided Manufacturing) is the process of creating an NC part program for a specific part model. Design CAD software is intended for an engineer to use in the creation of new designs. NC programming software usually includes manufacturing modeling and CAM capabilities. There are several different types of modeling currently used for NC programming. They have developed and evolved over the past forty years from simple 2D wireframe modeling, to surface modeling, to today's 3D solid modeling.

2D Wireframe Modeling 
This type of modeling consists of a collection of shapes or outlines of a part, usually built from lines and arcs, constrained to a single plane or two dimensions (X,Y). It is probably the most popular way to program simple parts. You can import the geometry for a part from other CAD systems using IGES or DXF files, or you can use your CAD/CAM system to create the required shapes from blueprint information.

2D wireframe modeling has several advantages for NC programming. It is simple and easy to understand. It is well suited for turning parts and mill parts with straight walls and flat floors. Most NC programming systems have 2D wireframe CAD capabilities built in. This means you don't need to buy separate CAD software in order to program simple parts.

The biggest disadvantage to 2D wireframe modeling is the inability to define more complex 3D mill part shapes for machining.

3D Wireframe Modeling
This type of modeling is similar to 2D wireframe modeling, except that it works in three dimensions (X,Y,Z). It produces a line drawing of the part that can be viewed from various orientations.

One advantage of 3D modeling is the ability to produce a complete 3D image of the part. It is not a collection of different 2D part views, as in a typical 2D blueprint style drawing.

The disadvantage of 3D wireframe modeling is that it does not define the complete interior surfaces for machining. In fact, it cannot define parts significantly more complex than those created with 2D modeling.

Surface Modeling

Surface Modeling
This type of modeling creates surfaces representing the area of the part where every position on the surface is defined from a mathematical method. Mathematical methods to define surfaces include Bezier, B-Spline, NURBS, Coons Patch, etc. A surface may be flat (as with a plane), or very complex and curved (as with NURBS). Surface modeling is best used to describe more complex part shapes, such as parts that are not flat-bottomed with straight walls. A good example of such a part is a telephone handset. Modeling a handset would require defining a number of surfaces. A finished handset surface model would be a collection of surfaces, defining the skin of the handset. Surface modeling was the first technology that allowed models of complex 3D shapes to be defined and machined. It is still widely used in PC-based CAD/CAM systems.

Surface modeling suffers from several disadvantages for the NC programmer. Proficiency requires more than a passing familiarity with surface mathematics. This can be learned, but is not easy for many machinists. Another disadvantage is the complexity of the finished surface model. Individual surfaces are "intersected", and "trimmed" to each of their neighbors, finally resulting in a loosely associated, patchwork quilt-like model. Another disadvantage with loosely associated surface models is inconsistency in individual surface orientations; some surfaces may be facing up while neighboring surfaces may be facing down. This plays havoc with most machining algorithms since surface orientation plays a part in determining which surfaces and parts of surfaces are to be machined.

Solid Modeling

Solid Modeling
Solid Modeling derives its name from the fact that a solid modeler creates an object called a solid, or body, to represent a part. Not only do solid models represent the vertices, edges and surfaces of the part, but it can also determine whether any point in space is either inside or outside the material of the part. This sounds simplistic, but has powerful ramifications. It allows a solid modeler to automate many of the decisions that a surface modeler relies on the user for, such as which sections of a part to keep and which to trim away.

Solid modeling also provides an extremely simple means to create complex objects - Boolean operators where the basic operation is to "add", "subtract", or "intersect" two bodies, resulting in the creation of a new body. Starting with a simple body, such as a sphere, a cube, an extrusion or revolution of a shape, Boolean operators allow complex forms to be built up. No user input is required to determine the portions to leave or remove. Behind the scenes, the solid modeler automatically trims off unneeded portions or combines portions into a new model. It ensures that the resulting model maintains all model consistency rules and can be used for subsequent modeling operations. While all this is going on, though, the users are not exposed to that level of detail.

Solid Modeling

The beauty of solid modeling is that each body is represented as a single object, not as a complex collection of surfaces. It greatly simplifies your interaction with complex parts. You can create all the details of your telephone handset, for example, without any consideration of the mold cavity that is your ultimate goal. When the handset model is complete, you can simply "subtract" it from a square block, creating a mold base cavity.

Benefits of Solid Modeling

Other Benefits of Solid Modeling 
Most solid modeling software provides a number of other key features, including fast 3D rendering, local operations (rounding), and history control.

Fast interactive rendering of solids allows you to work with "solid" images, as opposed to asking to see an image when you are finished. The graphic speed of new computers and new rendering technology is excellent, making this capability possible. Manipulating 3D rendered images directly reinforces the user's perception that he's working with tangible objects. It is also a lot easier to understand what is happening. 3D wireframe images can get a bit complex to visualize.

Local operations perform modifications that are local to the part which leverage part information inherent in the solid model. For example, the ability to round convex edges is a very powerful capability in a solid modeler. Try and find a commercial part, anything from a telephone to a computer mouse, which is not smoothly rounded on all edges and corners. Today, most solid modelers are able to round edges using either a continuous or variable radius amount. Blending concave edges or filleting convex edges are examples of other local operations.

Benefits of Solid Modeling

History control keeps track of all steps in the creation of a body. Anytime during the part definition process, a user can adjust and alter the original geometric shapes. Most solid modelers can take a body back through its creation steps to any prior condition, or to recreate any prior component body. The necessary changes are automatically made through all steps of the solid construction process, through to the finished body. This can dramatically speed and simplify the modification and editing of bodies. A user can change a model in minutes, instead of starting over from scratch.

Machining Solids
All the pretty pictures in the world will not create a machined part. For this, we need CAM capabilities. Solid models offer a complete and unambiguous part definition. This allows CAM software to automate much of the NC programming process, by providing highly efficient roughing and finishing functions to apply to the entire model. The ability to machine the entire model with multiple tools in a single step is a significant time saver. Advanced solid machining CAM systems can provide "material only" machining, where each tool only removes the material left behind by previous tools. Gouge protection and clamp avoidance are other useful capabilities.

Machining Solids

Solid models provide just such a part definition. This technology can be used to develop Knowledge-Based Machining CAM systems. A Knowledge-Based Machining system allow users to define their preferred machining methods, which the software will then apply to a solid model in order to determine a specific machining process and create the resulting toolpath elements. This is useful in both simple 2.5-axis parts as well as in complex 3-axis surface machining.

CAM systems built on solid models, such as GibbsCAM, can also support associativity between the design model and the manufacturing model. This allows incremental changes made to the design model to be rippled through the associated manufacturing model to update the machining process. Not only does this accommodate inevitable design changes, but it also supports alternative manufacturing strategies to be considered further improving the manufacturing process.

Solid model machining can create a finished part program significantly faster than other technologies. It is ideally suited for a number of NC shop tasks, including defining complex parts from a blueprint, building solid models from imported wireframe and surface data, and importing solid models from the prime customer and machining them directly.

This last point has undoubtedly become an important issue for job shops. More and more prime customers are looking for job shops that can take their solid model data and cut it directly, without going through steps that might dilute the accuracy of the process.

Data Exchange
This last issue of directly machining a customer's solid model raises the question of data compatibility. Are all solid modeling CAD systems compatible? Unfortunately the answer is no. Compounding this problem is that until recently, data exchange formats suitable for exchanging solid model data did not exist. Fortunately, today there are a number of industry standard data formats available to exchange solid model data - STEP (STandard for the Exchange of Product model data) and extensions to IGES. STEP, which is an ISO (International Standards Organization) standard, has received wide acceptance in aerospace and automotive industries. Many CAD/CAM systems support one or both of these formats for exchanging solid models.

In addition, a number of commercial solid modeling kernels are now available on which many popular CAD/CAM products are built. The two most common are Parasolid, from EDS PLM Solutions, and ACIS, from Dassault Systemes. These kernels allow companies to quickly build solid modeling-based applications without investing in developing their own solid modelers. Products that are built on the same solid modeling kernel readily support exchanging models between them, with the added advantage that they share a common kernel to evaluate and manipulate the data.

The desire to allow access to solid model data is so great that companies with proprietary solid modeling systems are also creating data servers that allow third parties to develop applications which access their solid modeling data. This way they can continue to protect the proprietary aspects of their systems, while at the same time allowing others outside their company to develop valuable extensions or companion applications to their systems.

Exchanging solid models between dissimilar systems is becoming more and more streamlined allowing solid models to become the preferred representation for CAD/CAM systems.

Solid Modeling's method of Boolean operations to combine bodies into a single body offers a tremendous simplification in the modeling of complex parts. Combined with state of the art 3D graphics, local operators, such as blending, chamfering or rounding, and history capabilities, Solid Modeling provides the most productive technology for defining and working with complex parts.

Machining directly from a solid model is a much simpler task than alternative methods, offering the opportunity for highly automated toolpath generation, Knowledge-Based Machining and associativity. It also provides the ability to directly machine a customer's solid models without fear of data degradation.

High-end workstations and expensive CAD/CAM systems used to be the domain of Solid Modeling. Today, though, with the advent of powerful technologies at PC prices, Solid Modeling is now affordable to most companies allowing them to take advantage of all the benefits it offers.