The usual primitive parts are the rectangular block, the sphere, the cylinder, the torus, the wedge and the cone. Each is defined by a small number of dimensions locating the “vertices” of the solid. Edges connect the vertices and a set of connecting edges then defines a face. The Euler-Poincare formula:
v-e+f-h=2(b-p) must be satisfied by every “part.” Here, v=vertices, e=edges, f=faces, h=number of hole-loops, b=number of bodies (usually 1) and p=passages (through holes). A sphere has a pole (one vertex), one face and is one body, and h=e=p=0. 1-0+1-0=2(1-0) so the equation is satisfied. Using B-reps, one might add an equator dividing the sphere into 2 faces and adding one edge. This is termed an “Euler operation” and 1-1+2-0=2(1-0) is satisfied so the operation is “legal.” Drill a hole through the sphere (avoiding the pole vertex) to add one face, three edges, two vertices, two hole-loops and one passage. 3-3+2-2=2(1-1) is still satisfied. Now you can move the vertices around and bend the edges to make most any shape needed.
Let’s go back to the primitives and consider combining two of them. This Constructive Solid Geometry (CSG) method is the other important tool in CAD that you must understand. In drilling the hole we use “Feature-based Modeling” but the CAD system simply subtracts a cylinder from the sphere’s volume. The system could do the calculations to find the locations of all the new vertices and shapes of the edges and store them (B-rep). Alternatively, the system could just store the location of the cylinder and that it is to be subtracted from the sphere. The usual term is “difference” for the material which is in the sphere, but not in the hole. The other “Boolean operations” are “union” for the material in either of two primitives, and “Intersection” for the material in both of two primitive objects. In AUTODESK Inventor the sequence of Boolean operations (the CSG “tree”) is stored and displayed in the “browser” on the left side of the objects being displayed on the screen. The user can then select geometry by pointing to it on the display or in the tree.