EP0680020A2
Expired / Lapsed
EP
⏱️ 0.0 years remaining
Apparatus and method for direct calculation of clip region outcodes
Assignee: Sun Microsystems Inc
•
Filing: 1995-04-26
•
Granted: —
•
Expires: 2015-04-26
Abstract
Abstract An apparatus and method for calculating outcodes directly from an integral representation of a floating point number defining a certain coordinate of a point of an object to be displayed. Such calculations under software control are absent any Boolean conventional branch instructions which impede system performance and utilize an integer unit rather than a floating point unit so as to enable transformations of viewing parameters and calculations of outcodes to be performed in a concurrent manner.
Inventors
- 👤 Walter E. Donovan
- 👤 Timothy J. Van Hook
Bibliographic Details
Application Number
—
Jurisdiction
EP
Data Source
google_patents
Last Synchronized
2026-11-04 11:30
CPC Classifications
G; G06; G06T; G06T15/00; G06T15/10; G06T15/30
Claims Analysis
Total Claims: 27
Claim 1
Independent Claim
209 words
A method for performing a clip checking scheme using an outcode for determining a position of at least a first point of a multidimensional object with respect to a clipping window having a plurality of boundary constraints, said clipping window being generated by a computer system comprising a processor including a floating point unit and an integer unit and a display device, the method comprising the steps of: converting by said processor of a first coordinate of said first point from its floating point number representation having a first bit pattern into an integral representation having said first bit pattern; calculating by said integer unit whether said first coordinate is outside said clipping window and activating a bit of said outcode if said first coordinate is outside said clipping window; converting by said processor of a second coordinate of said first point from its floating point number representation having a second bit pattern into an integral representation having said second bit pattern; calculating by said integer unit whether said second coordinate is outside said clipping window and activating another bit of said outcode if said second coordinate is outside said clipping window; and displaying said first point by said display device if no bits of said outcode are activated.
Claim 2
Independent Claim
209 words
A method for performing a clip checking scheme using an outcode for determining a position of at least a first point of a multidimensional object with respect to a clipping window having a plurality of boundary constraints, said clipping window being generated by a computer system comprising a processor including a floating point unit and an integer unit and a display device, the method comprising the steps of: converting by said processor of a first coordinate of said first point from its floating point number representation having a first bit pattern into an integral representation having said first bit pattern; calculating by said integer unit whether said first coordinate is outside said clipping window and activating a bit of said outcode if said first coordinate is outside said clipping window; converting by said processor of a second coordinate of said first point from its floating point number representation having a second bit pattern into an integral representation having said second bit pattern; calculating by said integer unit whether said second coordinate is outside said clipping window and activating another bit of said outcode if said second coordinate is outside said clipping window; and displaying said first point by said display device if no bits of said outcode are activated.
Claim 3
Dependent Claim
126 words
The method according to claim 1, wherein the step in calculating whether said first coordinate is outside said clipping window and activating said bit of said outcode if said first coordinate is outside said clipping window comprises the step of: setting a first bit of said outcode by said integer unit to indicate that said first point is outside the clipping window if either of the following conditions is true: a sign bit of said integral representation of said first coordinate is set; or a sign bit of a first result is set, said first result being a difference between an absolute value of said integral representation of said first coordinate and an integral representation of a first boundary constraint of said plurality of boundary constraints.
Claim 4
Dependent Claim
100 words
The method according to claim 2, wherein the method further comprises the step of: setting a second bit of said outcode by said integer unit to indicate that said first point is outside the clipping window if both of the following conditions are true: a sign bit of a logical complement of said integral representation of said first coordinate is set; and a sign bit of a second result is set, said second result being a difference between an integral representation of a second boundary constraint of said plurality of boundary constraints and said integral representation of said first coordinate.
Claim 5
Dependent Claim
126 words
The method according to claim 1, wherein the step in calculating whether said second coordinate is outside said clipping window and activating another bit of said outcode if said second coordinate is outside said clipping window comprises the step of: setting a third bit of said outcode by said integer unit to indicate that said first point is outside the clipping window if either of the following conditions is true: a sign bit of an integral representation of said second coordinate is set; or a sign bit of a third result is set, said third result being a difference between an absolute value of said integral representation of said second coordinate and an integral representation of a third boundary constraint of said plurality of boundary constraints.
Claim 6
Dependent Claim
100 words
The method according to claim 4, wherein the method further comprises the step of: setting a fourth bit of said outcode by said integer unit to indicate that said first point is outside the clipping window if both of the following conditions are true: a sign bit of a logical complement of said integral representation of said second coordinate is set; and a sign bit of a fourth result is set, said fourth result being a difference between an integral representation of a fourth boundary constraint of said plurality of boundary constraints and said integral representation of said second coordinate.
Claim 7
Dependent Claim
79 words
The method accordingly to claim 5, wherein prior to the display step, said method further comprises the steps of: converting a third coordinate of said first point from its floating point number representation having a third bit pattern into an integral representation having said third bit pattern; and calculating by said integer unit whether said third coordinate is outside said clipping window and activating a third bit of said outcode if said third coordinate is outside said clipping window.
Claim 8
Dependent Claim
71 words
The method according to claim 6, wherein prior to the step in converting said first coordinate, said method further comprises the steps of: converting a normalizing coordinate associated with said first point from its floating point number representation having a fourth bit pattern into an integral representation having said fourth bit pattern; and setting a fifth bit of said outcode if a sign bit of said fourth bit pattern is set.
Claim 9
Dependent Claim
40 words
The method according to claim 7, wherein prior to the converting of the first coordinate step, the method further comprises the step of transforming said object from model coordinates to viewpoint coordinates by said floating point unit of said processor.
Claim 10
Dependent Claim
36 words
The method according to claim 6, wherein prior to the display step, the method further comprises the step of transforming said object from viewpoint coordinates to screen coordinates by said floating point unit of said processor.
Claim 11
Independent Claim
281 words
A method for performing a clip checking scheme using an outcode having a plurality of bits for determining whether an object lies within a clipping window having a plurality of boundary constraints thereby requiring the object to be displayed on a display device of a computer system comprising a processor including a floating point unit and an integer unit, said object including at least a first point having a plurality of coordinates wherein each coordinate is represented by a floating point number representation, the method comprising the steps of: providing a storage unit coupled to said processor and said display device for storing data representing points comprising said object; converting each of said plurality of coordinates from its floating point number representation into an integral representation having a bit pattern identical to said floating point number representation; determining by said integer unit whether each of said plurality of coordinates is outside said clipping window; designating that said first point is displayable if none of said plurality of bits forming said outcode are set, said integer unit generating a first signal to activate one of a first pair of bits of said outcode if a first coordinate of said plurality of coordinates of said first point is outside said clipping window and said integer unit generating a second signal to activate one of a second pair of bits of said outcode if a second coordinate of said plurality of coordinates of said first point is outside said clipping window; repeating the above steps for each of said plurality of points forming said object to determine whether said object is displayable in its entirety; and displaying said displayable object through said display device.
Claim 12
Independent Claim
281 words
A method for performing a clip checking scheme using an outcode having a plurality of bits for determining whether an object lies within a clipping window having a plurality of boundary constraints thereby requiring the object to be displayed on a display device of a computer system comprising a processor including a floating point unit and an integer unit, said object including at least a first point having a plurality of coordinates wherein each coordinate is represented by a floating point number representation, the method comprising the steps of: providing a storage unit coupled to said processor and said display device for storing data representing points comprising said object; converting each of said plurality of coordinates from its floating point number representation into an integral representation having a bit pattern identical to said floating point number representation; determining by said integer unit whether each of said plurality of coordinates is outside said clipping window; designating that said first point is displayable if none of said plurality of bits forming said outcode are set, said integer unit generating a first signal to activate one of a first pair of bits of said outcode if a first coordinate of said plurality of coordinates of said first point is outside said clipping window and said integer unit generating a second signal to activate one of a second pair of bits of said outcode if a second coordinate of said plurality of coordinates of said first point is outside said clipping window; repeating the above steps for each of said plurality of points forming said object to determine whether said object is displayable in its entirety; and displaying said displayable object through said display device.
Claim 13
Dependent Claim
36 words
The method according to claim 10, wherein the determining step includes activating one of a third pair of bits of said outcode if a third coordinate of said plurality of coordinates is outside said clipping window.
Claim 14
Dependent Claim
65 words
The method according to claim 11, wherein the determining further comprises the step of: converting of a normalizing coordinate from its floating point number representation into an integral representation having a bit pattern identical to said floating point number representation of said normalizing coordinate; and activating a bit of said outcode if a sign bit of said integral representation of said normalizing coordinate is set.
Claim 15
Dependent Claim
162 words
The method according to claim 12, wherein the method further comprises the steps of: calculating a sign bit value of a difference between an absolute value of said integral representation of said normalizing coordinate and an absolute value of said integral representation of said first coordinate in a first integer storage element by said integer unit; storing a bit pattern of said difference into a first integer storage element by said integer unit; calculating a sum between an integer value of one and a value of a sign bit of said integral representation of said first coordinate by said integer unit; storing a bit pattern of said sum into a second integer storage element by said integer unit; performing a logical left shift of said bit pattern of said difference by said second integer storage element by said integer unit to obtain a shift result; and performing a bit-by-bit logical OD'ing of said outcode with said shift result by said integer unit.
Claim 16
Dependent Claim
158 words
The method according to claim 8, wherein the method further comprises the steps of: calculating a sign bit value of a difference between an absolute value of said integral representation of said normalizing coordinate and an absolute value of said integral representation of said second coordinate in a first integer storage element by said integer unit; storing a bit pattern of said difference into a first integer storage element by said integer unit; calculating a sum between an integer value of three and a value of a sign bit of said integral representation of said second coordinate by said integer unit; storing said sum into a second integer storage element by said integer unit; performing a logical left shift of said bit pattern of said difference by said second integer storage element by said integer unit to obtain a shift result; and performing a bit-by-bit logical OD'ing of said outcode with said shift result by said integer unit.
Claim 17
Dependent Claim
158 words
The method according to claim 9, wherein the method further comprises the steps of: calculating a sign bit value of a difference between an absolute value of said integral representation of said normalizing coordinate and an absolute value of said integral representation of said third coordinate in a first integer storage element by said integer unit; storing a bit pattern of said difference into a first integer storage element by said integer unit; calculating a sum between an integer value of five and a value of a sign bit of said integral representation of said third coordinate by said integer unit; storing said sum into a second integer storage element by said integer unit; performing a logical left shift of said bit pattern of said difference by said second integer storage element by said integer unit to obtain a shift result; and performing a bit-by-bit logical OR'ing of said outcode with said shift result by said integer unit.
Claim 18
Dependent Claim
158 words
The method according to claim 11, wherein the method further comprises the steps of: calculating a sign bit value of a difference between said integral representation of said normalizing coordinate and an absolute value of said integral representation of said first coordinate in a first integer storage element by said integer unit; storing a bit pattern of said difference into a first integer storage element by said integer unit; calculating a sum between an integer value of one and a value of a sign bit of said integral representation of said first coordinate by said integer unit; storing a bit pattern of said sum into a second integer storage element by said integer unit; performing a logical left shift of said bit pattern of said difference by said second integer storage element by said integer unit to obtain a shift result; and performing a bit-by-bit logical OR'ing of said outcode with said shift result by said integer unit.
Claim 19
Dependent Claim
154 words
The method according to claim 16, wherein the method further comprises the steps of: calculating a sign bit value of a difference between said integral representation of said normalizing coordinate and an absolute value of said integral representation of said second coordinate in a first integer storage element by said integer unit; storing a bit pattern of said difference into a first integer storage element by said integer unit; calculating a sum between an integer value of three and a value of a sign bit of said integral representation of said second coordinate by said integer unit; storing said sum into a second integer storage element by said integer unit; performing a logical left shift of said bit pattern of said difference by said second integer storage element by said integer unit to obtain a shift result; and performing a bit-by-bit logical OR'ing of said outcode with said shift result by said integer unit.
Claim 20
Dependent Claim
154 words
The method according to claim 17, wherein the method further comprises the steps of: calculating a sign bit value of a difference between said integral representation of said normalizing coordinate and an absolute value of said integral representation of said third coordinate in a first integer storage element by said integer unit; storing a bit pattern of said difference into a first integer storage element by said integer unit; calculating a sum between an integer value of five and a value of a sign bit of said integral representation of said third coordinate by said integer unit; storing said sum into a second integer storage element by said integer unit; performing a logical left shift of said bit pattern of said difference by said second integer storage element by said integer unit to obtain a shift result; and performing a bit-by-bit logical OR'ing of said outcode with said shift result by said integer unit.
Claim 21
Dependent Claim
36 words
The method according to claim 18, wherein prior to the display step, the method further comprises the step of transforming said object from viewpoint coordinates to screen coordinates by said floating point unit of said processor.
Claim 22
Independent Claim
157 words
A method for enhancing performance of a clip checking scheme in determining a position of at least one point of an object with respect to a clipping window having a plurality of boundary constraints, wherein a first point of said at least one point is not displayed on a display device of a computer system comprising a processor including a floating point unit and an integer unit if said first point is outside said clipping window, said first point includes both a first and second coordinates in a floating point number representation, the method comprising the steps of: providing said processor to convert said first coordinate from said floating point number representation having a first bit pattern into an integral representation having a bit pattern identical to said first bit pattern; and providing said integer unit for calculating an outcode associated with said object; and providing said display device for displaying said object based on said outcodes.
Claim 23
Independent Claim
157 words
A method for enhancing performance of a clip checking scheme in determining a position of at least one point of an object with respect to a clipping window having a plurality of boundary constraints, wherein a first point of said at least one point is not displayed on a display device of a computer system comprising a processor including a floating point unit and an integer unit if said first point is outside said clipping window, said first point includes both a first and second coordinates in a floating point number representation, the method comprising the steps of: providing said processor to convert said first coordinate from said floating point number representation having a first bit pattern into an integral representation having a bit pattern identical to said first bit pattern; and providing said integer unit for calculating an outcode associated with said object; and providing said display device for displaying said object based on said outcodes.
Claim 24
Independent Claim
138 words
An apparatus for performing a clip checking scheme using an outcode for determining a position of a multi- dimensional object with respect to a clipping window having a plurality of boundary constraints, wherein said multi-dimensional object includes at least a first point having at least a first and second coordinates represented as floating point numbers and said clipping window being generated by a computer system comprising a processor, a memory element and a display device, said apparatus comprising: an integer unit within said processor for generating a signal to activate a bit of said outcode indicating that said multi-dimensional object is outside said clipping window if said integer unit determines that said first point forming said multi-dimensional object is outside said clipping window through bit manipulations of an integral representation of said at least first and second coordinates.
Claim 25
Independent Claim
138 words
An apparatus for performing a clip checking scheme using an outcode for determining a position of a multi- dimensional object with respect to a clipping window having a plurality of boundary constraints, wherein said multi-dimensional object includes at least a first point having at least a first and second coordinates represented as floating point numbers and said clipping window being generated by a computer system comprising a processor, a memory element and a display device, said apparatus comprising: an integer unit within said processor for generating a signal to activate a bit of said outcode indicating that said multi-dimensional object is outside said clipping window if said integer unit determines that said first point forming said multi-dimensional object is outside said clipping window through bit manipulations of an integral representation of said at least first and second coordinates.
Claim 26
Dependent Claim
226 words
A computer system for displaying a multi-dimensional object provided said object is within a clipping window having a plurality of boundary constraints, said computer system comprising: a memory element for storing data including a mult-dimensional object a plurality of points wherein each of said plurality of points having at least a first and second coordinates both represented as floating point numbers; a processor for processing said mult-dimensional object, said processor including: a floating point unit for transforming said multi-dimensional object from at least a first coordinate system to a second coordinate system, and a mechanism for calculating whether said multi-dimensional object is displayable, said mechanism determining an outcode for each of said plurality of points of said multi-dimensional object, performing a logical operation between a first and second outcodes corresponding to a first and second points of said plurality of points to obtain a result outcode, performing a sequential logical operation between said result outcode and a third outcode corresponding to a third point of said plurality of points and continuing sequential logical operations in a like manner; a display device for displaying said multi-dimensional object based on a vlaue of said result outcode after a sequential logical operation for a last point of said plurality of points forming said multi-dimensional object; and a bus for coupling said memory element, said processor and said display device.
Claim 27
Dependent Claim
226 words
A computer system for displaying a multi-dimensional object provided said object is within a clipping window having a plurality of boundary constraints, said computer system comprising: a memory element for storing data including a mult-dimensional object a plurality of points wherein each of said plurality of points having at least a first and second coordinates both represented as floating point numbers; a processor for processing said mult-dimensional object, said processor including: a floating point unit for transforming said multi-dimensional object from at least a first coordinate system to a second coordinate system, and a mechanism for calculating whether said multi-dimensional object is displayable, said mechanism determining an outcode for each of said plurality of points of said multi-dimensional object, performing a logical operation between a first and second outcodes corresponding to a first and second points of said plurality of points to obtain a result outcode, performing a sequential logical operation between said result outcode and a third outcode corresponding to a third point of said plurality of points and continuing sequential logical operations in a like manner; a display device for displaying said multi-dimensional object based on a vlaue of said result outcode after a sequential logical operation for a last point of said plurality of points forming said multi-dimensional object; and a bus for coupling said memory element, said processor and said display device.
References Cited (Backward Citations)
No citation records indexed.
USPTO Annuity & Maintenance Windows
Maintenance schedule is calculated for granted US utility patents.