Patent Document ID: 8289332
Application ID: 11793363
Patent Status: 1

Claim One:
1. A method for determining and finding, in a computer apparatus comprising at least one central processor unit (CPU) and at least one stream processor unit (SPU), a geometric representation of intersection topology for geometric objects that are described using any of parametric representation, algebraic representation, and tessellated representation, said method comprising initializing, in said at least one CPU, sub-algorithms of an intersection algorithm, controlling, in said at least one CPU, the sub-algorithms of said intersection algorithm, executing, in said at least one CPU, the sub-algorithms of said intersection algorithm, processing a conjecture for an intersection calculation result, wherein said method further comprises: transmitting at least one of said sub-algorithms of said intersection algorithm to at least one stream processor unit (SPU) comprised by said computer apparatus, said at least one SPU executing sub-algorithms of said intersection algorithm, resulting in information necessary to establish said conjecture, and returning said information to said at least one CPU, wherein intersections between at least two geometric objects are determined, and wherein said at least one SPU executes at least one of the following sub-processes: processing of geometric objects to extract information to be used for determining whether two or more objects overlap, processing of geometric objects to extract information to be used for determining whether specified subparts of the objects overlap, processing of geometric objects to extract information to be used for determining whether normal vector fields of two geometric objects overlap, processing of geometric objects to extract information to be used for determining whether normal vector fields of specified subparts of the objects overlap, processing of geometric objects to calculate a hull that is guaranteed to contain the hull of a geometric object, processing of geometric objects to calculate a convex hull that is guaranteed to contain the convex hull of a geometric object, processing of geometric objects to calculate a hull that is guaranteed to contain the normal field of a geometric object, processing of geometric objects to calculate a convex hull that is guaranteed to contain the normal field of a geometric object, tessellation of a geometric object, calculation of partial derivatives of a geometric object, in points, calculation of partial derivatives of a geometric object, as a closed expression, calculation of normals of a geometric object, in points, calculation of normals of a geometric object, as a closed expression; wherein the task of determining intersections is shared between said at least one CPU and said at least one SPU in the following manner: said at least one CPU initiates the intersection determination process, said at least one SPU processes the geometric objects to extract information to determine whether object hulls overlap, said at least one CPU uses said information from said at least one SPU to report if an intersection is possible or not, and further comprising the following process steps: if an intersection is possible, the geometric objects are tessellated on any of said at least one CPU and said at least one SPU, said at least one SPU calculates the intersections of the tessellated objects, also returning parameter tuples, said at least one CPU processes the intersections calculated by said at least one SPU and returns said calculated intersections as a conjecture for the complete intersection.