IP Library Granted Patent US 7,167,184
Granted Patent B2
US 7,167,184 · App. 10/402,724 · Granted Jan 23, 2007

Method and apparatus to calculate any porter-duff compositing equation using pre-defined logical operations and pre-computed constants

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,167,184
App. No.
10/402,724
Granted
Jan 23, 2007
Kind
B2
Abstract

A method of performing a blending operation between a first pixel having a first pixel alpha value and a first pixel color data value and a second pixel having a second pixel alpha value and a second pixel color data value using a pre-defined set of logical operations and an associated set of pre-computed constant that includes calculating a first pixel blending factor and a second pixel blending factor based upon a selected Porter-Duff compositing equation, the first pixel alpha value, and the second pixel alpha value, such that there are no decisions to be made in an innermost calculation loop.

Claims (35)

1. A computer-implemented method of performing a blending operation between a first pixel having a first pixel alpha value and a first pixel color data value and a second pixel having a second pixel alpha value and a second pixel color data value, comprising:

providing an equation for calculating pixel blending factors, the equation including a pre-defined set of logical operations and a set of constants, wherein when a particular set of values is selected for the constants in the equation, the equation corresponds to a specific Porter-Duff compositing equation;

selecting a Porter-Duff composition equation by assigning a first set of values for the first pixel to the constants in the equation and assigning a second set of values for the second pixel to the constants in the equation, wherein the first and second sets of values are selected front a same finite set of constant values;

calculating a first pixel blending factor and a second pixel blending factor based upon the selected Porter-Duff compositing equation, the first pixel alpha value, and the second pixel alpha value using the equation and without using conditional tests;

calculating a resulting alpha value based upon the first pixel blending factor, the second pixel blending factor, the first alpha value, and the second alpha value;

calculating a resulting color value based upon the first pixel blending factor, the second pixel blending factor, the first pixel color data value, and the second pixel color data value;

associating the resulting alpha value and the resulting color data value with the second pixel; and

displaying the second pixel.

2. A method as recited in claim 1 , wherein the resulting alpha value is equal to the first pixel blending factor multiplied by the first pixel alpha value added to the second pixel blending factor multiplied by the second pixel alpha value.

3. A method as recited in claim 1 , wherein the resulting color value is equal to the first pixel blending factor multiplied by the first pixel color data value added to the second pixel blending factor multiplied by the second pixel color data value.

4. A method as recited in claim 1 , wherein the first pixel is a source pixel and the second pixel is a destination pixel.

5. A computer-readable medium encoded with computer code for performing a blending operation between a first pixel having a first pixel alpha value and a first pixel color data value and a second pixel having second pixel alpha value and a second pixel color data value, comprising:

computer code for providing an equation for calculating pixel blending factors, the equation including a pre-defined set of logical operations and a set of constants, wherein when a particular set of values is selected for the constants in the equation, the equation corresponds to a specific Porter-Duff compositing equation;

computer code for selecting a Porter-Duff composition equation by assigning a first set of values for the first pixel to the constants in the equation and assigning a second set of values for the second pixel to the constants in the equation, wherein the first and second sets of values are selected from a same finite set of constant values;

computer code for calculating a first pixel blending factor and a second pixel blending factor based upon the selected Porter-Duff compositing equation, the first pixel alpha value, and the second pixel alpha value using the equation and without using conditional tests;

computer code for calculating a resulting alpha value based upon the first pixel blending factor, the second pixel blending factor, the first alpha value, and the second alpha value;

computer code for calculating a resulting color value based upon the first pixel blending factor, the second pixel blending factor, the first pixel color data value, and the second pixel color data value;

computer code for associating the resulting alpha value and the resulting color data value with the second pixel;

computer code for displaying the second pixel; and

computer readable medium for storing all the computer code.

6. A computer-readable medium encoded with computer code as recited in claim 5 , wherein the computer code for resulting alpha value further comprises computer code for multiplying the first pixel blending factor by the first pixel alpha value and adding to the product of the second pixel blending factor and the second pixel alpha value.

7. A computer-readable medium encoded with computer code as recited in claim 5 , wherein the resulting color value is equal to the first pixel blending factor multiplied by the first pixel color data value added to the second pixel blending factor multiplied byte second pixel color data value.

8. A computer-readable medium encoded with computer code as recited in claim 5 , wherein the first pixel is a source pixel and the second pixel is a destination pixel.

9. A computer-implemented method of performing a blending operation between a first pixel having a first pixel alpha value and a first pixel color data value and a second pixel having second pixel alpha value and a second pixel color data value, comprising:

fetching the alpha value for a first pixel;

fetching a color data value for the first pixel;

fetching the alpha value for a second pixel;

fetching the color data value for the second pixel;

providing an equation for calculating pixel blending factors, the equation including a pre-defined set of logical operations and a set of constants, wherein when a particular set of values is selected for the constants in the equation, the equation corresponds to a specific Porter-Duff compositing equation;

selecting a Porter-Duff compositing equation by assigning a first set of values for the first pixel to the constants in the equation and assigning a second set of values for the second pixel to the constants in the equation, wherein the first and second sets of values are selected from a same finite set of constant values;

calculating a first pixel blending factor and a second pixel blending factor based upon the selected Porter-Duff compositing equation, the first pixel alpha value, and the second pixel alpha value using the equation and without using conditional tests;

calculating a resulting alpha value based upon the first pixel blending factor, the second pixel blending factor, the first alpha value, and the second alpha value;

calculating a resulting color value based upon the first pixel blending factor, the second pixel blending factor, the first color data value, and the second color data value;

associating the resulting alpha value and the resulting color value with the second pixel; and

displaying the second pixel.

Assignments (3)
MERGER AND CHANGE OF NAME Recorded Dec 16, 2015
From: ORACLE USA, INC.; SUN MICROSYSTEMS, INC.; ORACLE AMERICA, INC.
To: ORACLE AMERICA, INC.
Reel/Frame 037302/0683 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 8, 2003
From: GRAHAM, JAMES A.
To: SUN MICROSYSTEMS, INC.
Reel/Frame 014034/0480 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 28, 2003
From: GRAHAM, JMAES A.
To: SUN MICROSYSTEMS, INC.
Reel/Frame 013927/0780 →