← Back to Patent Explorer
US5003497A Expired / Lapsed US ⏱️ 0.0 years remaining

Method for three-dimensional clip checking for computer graphics

Assignee: Sun Microsystems Inc
•
Filing: 1988-12-15
•
Granted: 1991-03-26
•
Expires: 2008-12-15
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method for clip checking three dimensional images for display on a computer display system. The display system includes a computer having a central processing unit(CPU) coupled to a memory and a cathode ray tube (CRT) display. The method of the present invention includes inputting a plurality of points comprising an image to be displayed, wherein each of the points is described by X,Y,Z and W world coordinates. The points are stored in the memory coupled to the CPU. The CPU executes a viewing algorithm which transforms the world coordinates for each point into view reference coordinates. The view reference coordinates have an origin at the viewpoint of the user, with the Z axis pointed outward in the direction of the display screen. Each of the points of the image are described by clipping bits X Right, X Left, Y Top, Y Bottom, Z Back, and Z Front. The view reference coordinate system permits the user to selectively enable/disable clipping quadrants in X,Y,Z and W space. The present invention determines the value of the clipping bits for all of the points (vertices) comprising the image. Using predefined combinational logic, the clipping bits are evaluated and the logic determines if the image is visible, hidden, or if it intersects at least one clipping plane. The method provides an efficient means for determining if a three dimensional image is to be displayed on a computer display system.

Inventors

  • 👤 Curtis Priem

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-25 20:09
CPC Classifications
G; G06; G06T; G06T15/00; G06T15/10; G06T15/30

Claims Analysis

Total Claims: 8
Claim 1
Independent Claim 200 words
A method for clipping objects for display on a computer display system, said system including a display coupled to a central processing unit (CPU), said method comprising the steps of: providing memory means coupled to said CPU and said display, for storing data representing points comprising an object, each of said points being described by coordinates in N dimensional space, said space being delineated by at least two quadrants; selecting at least one said quadrant as a clipping quadrant; defining clipping bits for each of said points comprising said object, wherein said clipping bits are defined by the variables X RIGHT, X LEFT, Y TOP, Y BOTTOM, Z BACK AND Z FRONT; determining the value of each of said clipping bits, such that the value of each bit is a function of the location of said bit's respective point and of quadrant which has been selected; displaying said object if the value of said clipping bits is equal to a first predefined value eliminating said object from display, if said bits are equal to a least one second predefined value; whereby said object is clipped based on the value of said clipping bits and the particular quadrant which is enabled.
Claim 2
Independent Claim 200 words
A method for clipping objects for display on a computer display system, said system including a display coupled to a central processing unit (CPU), said method comprising the steps of: providing memory means coupled to said CPU and said display, for storing data representing points comprising an object, each of said points being described by coordinates in N dimensional space, said space being delineated by at least two quadrants; selecting at least one said quadrant as a clipping quadrant; defining clipping bits for each of said points comprising said object, wherein said clipping bits are defined by the variables X RIGHT, X LEFT, Y TOP, Y BOTTOM, Z BACK AND Z FRONT; determining the value of each of said clipping bits, such that the value of each bit is a function of the location of said bit's respective point and of quadrant which has been selected; displaying said object if the value of said clipping bits is equal to a first predefined value eliminating said object from display, if said bits are equal to a least one second predefined value; whereby said object is clipped based on the value of said clipping bits and the particular quadrant which is enabled.
Claim 3
Dependent Claim 15 words
The method as defined by claim 1, wherein said space is delineated by 4×(N-1) quadrants.
Claim 4
Dependent Claim 34 words
The method as defined by claim 2, wherein the step of selecting a quadrant includes the step of enabling at least one of said quadrants identified as RIGHT, LEFT, TOP, BOTTOM, BACK and FRONT.
Claim 5
Independent Claim 361 words
A method for clipping objects for display on a computer display system, said system including a display coupled to a central processing unit (CPU), said method comprising the steps of; providing memory means coupled to said CPU and said display, for storing data representing points comprising an object, each of said points being described by coordinates in N dimensional space, said space being delineated by 4×(N-1) quadrants; selecting at least one said quadrant as a clipping quadrant, wherein the step of selecting a quadrant includes the step of enabling at least one of said quadrants identified as RIGHT, LEFT, TOP, BOTTOM, BACK and FRONT; defining clipping bits for each of said points comprising said object; determining the value of each of said clipping bits, such that the value of each bit is a function of the location of said bit's respective point and of said quadrant which has been selected wherein said clipping bits are defined by the variables X RIGHT, X LEFT, Y TOP, Y BOTTOM, Z BACK and Z FRONT; displaying said object if the value of said clipping bits is equal to a first predefined value, eliminating said object from display, if said bits are equal to at least one second predefined value wherein said clipping bit values are determined in accordance with the following logical conditions: a. IF W≧0: THEN: IF CLIP RIGHT "ON" AND W<X THEN X RIGHT=1: IF CLIP LEFT "ON" AND X<-W THEN X LEFT=1 ELSE: IF CLIP RIGHT "OFF" OR W≦X THEN X RIGHT=1; IF CLIP LEFT "OFF" OR X≦-W THEN X LEFT=1 b. IF W≧0: THEN: IF CLIP TOP "ON" AND W<Y Y TOP=1 IF CLIP BOTTOM "ON" AND Y<-W Y BOTTOM=1 ELSE: IF CLIP TOP "OFF" OR W≦Y THEN Y TOP=1 IF CLIP BOTTOM "OFF" OR Y≦-W THEN Y BOTTOM=1 c. IF W≧0: THEN: IF CLIP BACK "ON" AND W<Z THEN Z BACK=1 IF CLIP FRONT "ON" AND Z<0 THEN Z FRONT=1 ELSE: IF CLIP BACK "OFF" OR W≦Z THEN Z BACK=1 IF CLIP FRONT "OFF" OR Z≦0 THEN Z FRONT=1; whereby said object is clipped based on the value of said clipping bits and the particular quadrant which is enabled.
Claim 6
Independent Claim 361 words
A method for clipping objects for display on a computer display system, said system including a display coupled to a central processing unit (CPU), said method comprising the steps of; providing memory means coupled to said CPU and said display, for storing data representing points comprising an object, each of said points being described by coordinates in N dimensional space, said space being delineated by 4×(N-1) quadrants; selecting at least one said quadrant as a clipping quadrant, wherein the step of selecting a quadrant includes the step of enabling at least one of said quadrants identified as RIGHT, LEFT, TOP, BOTTOM, BACK and FRONT; defining clipping bits for each of said points comprising said object; determining the value of each of said clipping bits, such that the value of each bit is a function of the location of said bit's respective point and of said quadrant which has been selected wherein said clipping bits are defined by the variables X RIGHT, X LEFT, Y TOP, Y BOTTOM, Z BACK and Z FRONT; displaying said object if the value of said clipping bits is equal to a first predefined value, eliminating said object from display, if said bits are equal to at least one second predefined value wherein said clipping bit values are determined in accordance with the following logical conditions: a. IF W≧0: THEN: IF CLIP RIGHT "ON" AND W<X THEN X RIGHT=1: IF CLIP LEFT "ON" AND X<-W THEN X LEFT=1 ELSE: IF CLIP RIGHT "OFF" OR W≦X THEN X RIGHT=1; IF CLIP LEFT "OFF" OR X≦-W THEN X LEFT=1 b. IF W≧0: THEN: IF CLIP TOP "ON" AND W<Y Y TOP=1 IF CLIP BOTTOM "ON" AND Y<-W Y BOTTOM=1 ELSE: IF CLIP TOP "OFF" OR W≦Y THEN Y TOP=1 IF CLIP BOTTOM "OFF" OR Y≦-W THEN Y BOTTOM=1 c. IF W≧0: THEN: IF CLIP BACK "ON" AND W<Z THEN Z BACK=1 IF CLIP FRONT "ON" AND Z<0 THEN Z FRONT=1 ELSE: IF CLIP BACK "OFF" OR W≦Z THEN Z BACK=1 IF CLIP FRONT "OFF" OR Z≦0 THEN Z FRONT=1; whereby said object is clipped based on the value of said clipping bits and the particular quadrant which is enabled.
Claim 7
Dependent Claim 42 words
The method as defined by claim 4, wherein said object is visible and displayed if one of the following statements are true: a. IF ALL THE CLIPPING BITS ARE=0 FOR EVERY VERTICE; b. IF ALL THE CLIPPING BITS ARE=1 FOR EVERY VERTICE.
Claim 8
Dependent Claim 129 words
The method as defined by claim 5, wherein said object is hidden and not displayed if at least one of the following statements are true: a. IF ALL THE X LEFT BITS=0 AND ALL THE X RIGHT BITS=1 FOR EVERY VERTICE, b. IF ALL X LEFT BITS=1 AND ALL X RIGHT BITS=0 FOR EVERY VERTICE, c. IF ALL Y BOTTOM BITS=0 AND ALL Y TOP BITS=1 FOR EVERY VERTICE, d. IF ALL Y BOTTOM BITS=1 AND ALL Y TOP BITS=0 FOR EVERY VERTICE, e. IF ALL Z FRONT BITS=0 AND ALL Z BACK BITS=1 FOR EVERY VERTICE, f. IF ALL Z FRONT BITS=1 AND ALL Z BACK BITS=0 FOR EVERY VERTICE, g. IF NONE OF THE ABOVE (a-g) ARE TRUE THEN THE OBJECT INTERSECTS AT LEAST ONE CLIPPING PLANE.

References Cited (Backward Citations)

US4570181A Cited
US4475104A Cited
US4766556A Cited
US4811241A Cited
US4821209A Cited
US4821210A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1994-03-25 1994-09-24 1995-03-26 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1998-03-25 1998-09-24 1999-03-26 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2002-03-25 2002-09-24 2003-03-26 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag