The present invention is a computer
system and method for determining the
closest point on a shape (2 dimensional or 3 dimensional surface) to any general query point. The
system has one or more central
processing units (CPUs), one or more memories, and one or more geometric model portions stored in one or more of the memories. The geometric model portions have a plurality of line segments (polygons), each of the line segments (polygons) being between a first and a second endpoint (having a polygon boundary). The line segments and end points (polygons and polygon boundaries) are connected to form a shape (in 3 dimensions, a surface) with one or more parameters. Parameters can include geometric position, time, temperature, pressure, flow, color, texture, or any other descriptive value. A multiresolution process that creates one or more models of the shape (surface). The models having a hierarchy of resolutions. Each model has one or more model line segments (model polygons) that approximate one or more of the line segments (polygons). Each model
line segment (model polygons) is associated with an error. A distance process, for every model
line segment (polygon), determines a distance between a
closest point on one or more of the model line segments and a query point. The distance represents one or a combination of two or more of the parameters. The process further determines a confidence level in terms of an upper bound and a lower bound of an envelope enclosing the segment (polygon). The
closest point is within the envelope-the upper bound representing an upper limit of the parameter in the envelope determined by an upper error of the respective model containing the model
line segment and the lower bound representing a
lower limit of the parameter in the envelope determined by a lower error of the respective model. A priority process orders the model line segments (polygons) according to their respective lower bounds and if a
maximum error for every one of the model line segments is less than a threshold. The priority process also selects the smallest distance as the
minimum distance between the query point and the shape.