While many surfaces such as automobile outer panels, ship hulls and airfoils are characterized by their smooth, free-form shapes, a far larger class of functional surfaces are characterized by highly irregular, multi-featured shapes consisting of pockets, channels, ribs, etc. In constaract to the design of aesthetic, free-form surfaces, functional surface design can perhaps best be viewed as a process of assembling a collection of known component surfaces to form a single compound surface. In this paper, we presents a feature-based functional surface modeling method. A single feature involves a secondary surface, which we must join to a primary surface with a smooth transition between two boundary courves. Through recursive blending of a secondary surface with the primary surface, the mullti-featured surface is represented. After constructing a compound surface, we generate the Z-map for NC machining of the surface. Offsetting the Z-map using the inverse offsetting technique, we get CL tool paths with out gouging.