Abstract A graphics accelerator responds to commands from a computer in a graphic system by storing the definitions of nonuniform rational B-spline patches and their associated triming curves. The graphics accelerator then produces device coordinates for trimmed polygons computed for each patch and sends these polygons to a display. Various improvements are incorporated to minimize the effects of roundoff error. The B-spline definitions of the trimming curves in the uv parameter space of each patch are converted to approximating short straight line segments. Untrimmed polygon vertices, the end points of the straight line segments and the intersections of the straight line segments with subspan boundaries corresponding to polygon edges are kept in a data structure of linked lists of vertex tables. The data structure is traversed to determine new polygon vertices for trimmed polygons. The trimming mechanism is compatible with recursive subdivision of patches to overcome pratical limitations on the number of trimming curves that may be associated with each patch. The length of the straight line segments of the trimming curves is adjusted to compensate for less than ideal parameterization of the trimming curve functions. Associated with each trimming curve within a patch is information about the position of that trimming curve in the span. As each polygon for that patch is generated, those trimming curves that are clearly outside the clip limits for that polygon are excluded from consideration. This reduces the average number of trimming curves that must be processed for the patch, and increases the speed of the graphics accelerator.
In a graphics display system, a method of rendering trimmed surface patches as polygons where the polygons correspond to subspans in a uv parameter space and those subspans are trimmed by parametric trimming curves in uv space, the method comprising the steps of: (a) dividing a surface into surface patches each having known extents in the u and v dimensions of the parameter space; (b) determining the extents in the u and v dimensions of the parameter space for each parametric trimming curve; (c) dividing a surface patch into subpatches when the number of parametric trimming curves having extents in the u and v dimensions that overlap the extents in the u and v dimensions for the surface patch exceeds a selected number; and (d) displaying upon a graphic display system a visual image of a subpatch arising from the dividing step "c" recited above and including a polygon corresponding to a subspan trimmed by a parametric trimming curve.
Claim 2
Dependent Claim
159 words
In a graphics display system, a method of rendering trimmed surface patches as polygons where the polygons correspond to subspans in a uv parameter space and those subspans are trimmed by parametric trimming curves in uv space, the method comprising the steps of: (a) dividing a surface into surface patches each having known extents in the u and v dimensions of the parameter space; (b) determining the extents in the u and v dimensions of the parameter space for each parametric trimming curve; (c) dividing a surface patch into subpatches when the number of parametric trimming curves having extents in the u and v dimensions that overlap the extents in the u and v dimensions for the surface patch exceeds a selected number; and (d) displaying upon a graphic display system a visual image of a subpatch arising from the dividing step "c" recited above and including a polygon corresponding to a subspan trimmed by a parametric trimming curve.