1. An apparatus for calculating a tool reference plane that is offset from a machining plane model in accordance with a tool shape model, the apparatus comprising: a means for storing machining plane model data that describes the machining plane model that is arranged in a first XYZ coordinate system; a means for storing inversed tool shape data that describes the tool shape model that is inversely arranged in a second XYZ coordinate system, wherein the tool shape model has a tool reference point that is located at an origin of the second XYZ coordinate system; a means for determining a plurality of sphere regions in the first XYZ coordinate system and the second XYZ coordinate system respectively, wherein center points of the sphere regions are grid points that are arranged three dimensionally with a predetermined grid interval, and a radius of each sphere region is equal to 3 1/2 /2 times the predetermined grid interval; a means for identifying a plurality of machining plane containing sphere regions, in which the machining plane model is contained, from among the plurality of sphere regions in the first XYZ coordinate system, wherein the means further identifies, for each machining plane containing sphere region, a nearest point on the machining plane model from the center point of the machining plane containing sphere region; a means for storing machining plane containing sphere region data describing each of the identified machining plane containing sphere regions in association with the nearest point on the machining plane model identified based on the center point of the machining plane containing sphere region; a means for identifying a plurality of inversed tool model containing sphere regions, in which the inversed tool model is contained, from among the plurality of sphere regions in the second XYZ coordinate system, wherein the means further identifies, for each inversed tool model containing sphere region, a nearest point on the inversed tool model from the center point of the inversed tool model containing sphere region; a means for storing inversed tool model containing sphere region data describing each of the identified inversed tool model containing sphere regions in association with the nearest point on the inversed tool model identified based on the center point of the inversed tool model containing sphere region; a means for identifying a plurality of tool reference plane containing sphere regions from among the plurality of sphere regions in the first XYZ coordinate system and one or more contact point containing sphere regions from among the plurality of machining plane containing sphere regions based on the machining plane containing sphere region data and the inversed tool model containing sphere region data, wherein: a sphere region in the first XYZ coordinate system is identified as a tool reference plane containing sphere region if one or more inversed tool model containing sphere regions make contact with one or more machining plane containing sphere regions when the sphere region has its center point coinciding with the tool reference point of the inversed tool model and the inversed tool model containing sphere regions are arranged inversely in the first XYZ coordinate system, and the one or more machining plane containing sphere regions making contact with the one or more inversed tool model containing sphere regions are identified as contact point containing sphere regions; a means for identifying a plurality of offset points, the means performing, for each of the one or more identified contact point containing sphere regions, an offset candidate point identifying process for calculating one or more offset candidate points and further identifying one of the identified offset candidate points, which is contained within the tool reference plane containing sphere region and is closest to the center grid point of the tool reference plane containing sphere region, as an offset point, wherein the offset candidate point identifying process comprises: retrieving, from the machining plane containing sphere region data, the nearest point on the machining plane model from the center point of the contact point containing sphere region; calculating a relative coordinate position from the center point of the contact point containing sphere region to the center point of the tool reference plane containing sphere region; identifying, from the inversed tool model containing sphere region data, one inversed tool model containing sphere region that has a relative position from the tool reference point to its center point equaling to the calculated relative coordinate position; retrieving, from the inversed tool model containing sphere region data, the nearest point on the inversed tool model from the identified inversed tool model containing sphere region; and calculating the offset candidate point by shifting the retrieved nearest point on the machining plane model by an amount equal to the coordinate position of the retrieved nearest point on the inversed tool model; and a means for storing tool reference plane model data that describes coordinate positions of the plurality of identified offset points.