Smooth shading of objects on display devices

Computer graphics processing and selective visual display system – Computer graphics processing – Three-dimension

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C345S440000

Reexamination Certificate

active

06313840

ABSTRACT:

BACKGROUND OF THE INVENTION
The present invention relates generally to methods and systems for shading computer generated images and more particularly to methods and apparatus for shading objects for display on a display device.
In many computer systems, it is common to represent and convey information to a user through digital images. These images may take a variety of forms such as alphanumeric characters and graphs and other pictorial representations. The digital images are conveyed to a users on a raster or continuous tone display devices, such as video monitors, printers and the like. Typically, the digital images are stored in digital form, manipulated and then displayed.
Digital images are generally stored as a geometric description of a scene. The description can be manipulated by the user, then converted to digital raster image data for display. How a two or three dimensional object appears when it is displayed to a user depends on numerous factors including the types of light sources illuminating it; its properties including color, texture and reflectance; and its position and orientation with respect to the light sources, the viewer and other surfaces which may reflect light on the object.
It is often desirable to present objects for display in color. In conventional practice, color may be applied to a region by defining a single color for the entire region (a “flat” coloring), or to add realism, a plurality of colors may be employed. A transition between colors across the surface of an object is referred to as a color gradient. In order to display a realistic image, a smooth transition between colors across painted areas is required. Conventionally, gradients have been created as pre-computed digital images. This technique leaves the user with limited flexibility because the gradient has already been rendered, and modifications are limited. Alternatively, gradients were defined as contours of constant color. These types of gradient also lack flexibility because the interpolation of colors in the gradient may be bivariate, which is difficult to be represented with contours and the number of contours used in the representation is device dependent.
SUMMARY
In general, in one aspect, the invention provides a method for defining a color gradient across a region in a display space that includes defining a bi-cubic patch enclosing the region. The bi-cubic patch includes four corners having a color associated therewith and four curves connecting pairs of the corners forming a closed loop. The four curves define the color gradient across the bi-cubic patch as a function of the four colors associated with the four corners of the bi-cubic patch. The method includes defining a unit square in parameter space including a mapping function from the unit square to the bi-cubic patch such that the corners of the bi-cubic patch map to the corners of the unit square. The color of every point in the unit square is a bi-cubic interpolation of the four colors associated with the four corners of the bi-cubic patch. The method includes clipping the bi-cubic patch for display of the region.
In another aspect, the invention provides a method for approximating an existing color gradient associated with a first region in a display space for use in a second region in the display space. The method includes defining a bi-cubic patch enclosing the second region, defining a unit square in parameter space including a mapping function from the unit square to the bi-cubic patch and manipulating one or more of the curves in the bi-cubic patch until the color gradient of the second region visually approximates a color gradient of the first region.
In another aspect, the invention provides a method of accurately rendering color gradients across a bi-cubic patch that includes subdividing the bi-cubic patch into sub-patches until each side of a given sub-patch is a good approximation of a line and checking to determine if for all points inside of a given sub-patch the color associated with each point is sufficiently accurate. If not, the sub-patch is further subdivided until the color associated with each point inside a given sub-patch is sufficiently accurate. The method includes dividing the sub-patches into polygons and rendering the polygons.
Preferred embodiments include the following features. Rendering the polygons includes dividing the polygons into Gouraud triangles and rendering the Gouraud triangles. Each side of a given sub-patch is a good approximation when a lateral error between a side and its corresponding segment in display space is less than 0.5 pixels or a user-defined tolerance. The color for each point within a sub-patch is sufficiently accurate when control points associated with a sub-patch are evenly spaced.
The method further includes checking to determine if for all points inside of a given polygon the color associated with each point is sufficiently accurate and, if not, further subdividing the polygon until the color associated with each point inside a given polygon is sufficiently accurate. The color for each point within a polygon is sufficiently accurate when the color of a center point in the polygon is within a predefined tolerance of a true color for the polygon.
In another aspect, the invention provides a method of defining a color gradient across a region in a display space that includes defining a parametric bi-cubic patch covering a region to be shaded. Each patch includes four corners and four parametric cubic curves in a closed loop joining the four corners. Each corner has a corner color. The method includes the step of performing a bilinear interpolation on the corner colors to map an interpolated color to every location on the parametric bi-cubic patch.
In another aspect, the invention provides a method of interactively modifying an existing gradient to create a new gradient type that includes defining a parametric bi-cubic patch covering a region to be shaded. Each patch includes four corners and four parametric cubic curves in a closed loop joining the four corners. Each corner has a corner color. The method includes performing a bilinear interpolation on the corner colors to map an interpolated color to every location on the parametric bi-cubic patch thereby defining a gradient, manipulating one or more of the cubic curves in the bi-cubic patch to change the gradient and displaying the bi-cubic patch interactively to the user.
In another aspect, the invention provides a method of accurately rendering color gradients across a bi-cubic patch that includes subdividing the bi-cubic patch into sub-patches until each side of a sub-patch is a good approximation of a line, then subdividing further until the interpolation within the sub-patch is linear within a specified tolerance. The method includes subdividing the sub-patch into polygons and rendering the polygons.
Preferred embodiments of the invention include the following features. The polygons are rendered with Gouraud shading.
In another aspect, the invention provides a method for accurately rendering color gradients with Gouraud-shaded polygons that includes subdividing a gradient into quadrilateral regions in which a bilinear interpolation of colors associated with corners of a quadrilateral region would render the gradient substantially. The method includes subdividing each quadrilateral so that Gouraud shading provides an accurate shading result within a specified tolerance.
Preferred embodiments of the invention include the following features. A color space of the gradient is non-linear with respect to a display device's color space and subdivision of quadrilateral regions continues until a piecewise linear approximation of a device color space interpolation is accurate to within a specified tolerance.
In another aspect, the invention provides a method of rendering a non-linear color gradient using linear interpolation that includes defining a non-linear color function and subdividing the color gradient into Gouraud shaded triangles. Each triangle has a parameter associated with each vertex. The metho

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Smooth shading of objects on display devices does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Smooth shading of objects on display devices, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Smooth shading of objects on display devices will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2605256

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.