1. A method of determining machining instructions during machining of a workpiece using a machine having a cutter, the surfaces of the workpiece being defined by a plurality of guide curves, including the steps of: determine a nominal flank milling machining instruction at an individual cutter location; evaluate the intersection of the cutter and the workpiece surface to determine the cutter orientation and to determine the undercut; modify the cutter orientation, evaluate the intersection of the cutter and the workpiece surface at a plurality of cutter orientations to determine the undercut, determine the cutter orientation having the minimum undercut; at a first plurality of cutter locations, repeat the steps of: determining a nominal flank milling instruction at a cutter location; determining the cutter orientation and undercut; modifying the cutter orientation, determining a plurality of undercuts at the plurality of cutter orientations and determining the cutter orientation having the minimum undercut at the first plurality of cutter locations around the workpiece surface contour being machined; using the plurality of cutter locations and orientations having minimum undercut, determine curves which fit the cutter orientation spherical coordinates, .theta. and .phi.; for each individual cutter location, using the values .theta. from the .theta. curve fit, determine a value for .phi.' such that the cutter lies on a workpiece guide curve; for each individual cutter location, using the values .phi. from the .phi. curve fit, determine a value for .theta.' such that the cutter lies on a workpiece guide curve; evaluate the plurality of .theta.' values and the plurality of .phi.' values to select which curve fit results in the least motion of the other spherical coordinate; using the selected curve fit, determine undercut at a second plurality of cutter locations intermediate to the first plurality of cutter locations; compare the determined undercut to a predetermined value, for such locations where the determined undercut exceeds the predetermined value, add an additional location to the first plurality of cutter locations and repeat the steps of: using a first plurality of cutter locations to determine the cutter location having a minimum undercut; determining curve fits for the cutter orientation spherical coordinates; determining values for .phi.' and .theta.'; evaluating the .phi.' values and the .theta.' values to select the curve fit which results in the least motion of the other spherical coordinate; and determining the undercut at the second plurality of locations intermediate to the first plurality of locations; for each of the plurality of first locations, determine the ratio of machine motion to workpiece motion; compare the determined ratio to a predetermined ratio; for locations where the determined ratio exceeds the predetermined ratio and the cutter .phi. spherical angle is less than a predetermined angle, modify the cutter orientation to reduce the ratio of machine motion to part motion.