Solid modelling systems are distinguished from simple CAD in that they allow three dimensional objects to be designed in a three dimensional space. The three dimensional representation can then be used to automatically generate two dimensional projections.

The most primitive form of CAD solid modelling is the ``wireframe'' method. A wireframe is a description of the vertices and edges of a three dimensional object, specified by x, y and z coordinates. The wireframe description of an object can be used to generate computer drawings in various projections, and can be manipulated by an operator for such functions as on-screen rotation. Wireframe systems do not normally perform ``hidden line removal'' and the operator must therefore specify the visibility of each edge and vertex for a given projection.

Wireframes are not sufficently powerful for many spatial reasoning tasks, because it is possible for a single wireframe to represent several different objects, depending on what spaces in the frame are filled - wireframes are ambiguous. They are not altogether satisfactory for CAD tasks either, because they allow the accidental creation of ``impossible objects'', such as a cube with one edge missing.