US20050134603A1

Method and apparatus for triangle rasterization with clipping and wire-frame mode support

Claim Score by NHIP

Read claim 1, the broadest

Abstract

A low-cost high-speed programmable rasterizer accepting an input set of functionals representing a triangle, clipping planes and a scissoring box, and producing multiple spans per clock cycle as output. A Loader converts the input set from a general form to a special case form accepted by a set of Edge Generators, the restricted input format accepted by the Edge Generators contributing to their efficient hardware implementation.

US20050134603A1, drawing sheet 1
Sheet 1 of 69

Term

Term ended

Projected expiry passed 11 June 2026, 0.3 years ago.

  1. Priority and filed
  2. Published
  3. Projected expiry
  4. Today

9 claims: 3 independent, 6 dependent

  1. 1
    Broadest claimClaim Score 70, broad(NHIP)A method for rasterization, comprising the steps of:determining a crossing point of a line and a bounding box, the line represented by a functional ƒ(x, y)=a·x+b·y+c;and performing a Bresenham walk along a portion of the line, the portion falling within the bounding box, the portion having (a) an initial x-coordinate x 0 and (b) one or more additional x-coordinates with increasing x-values;wherein the finding step and the performing step comprise using an adder, and wherein the finding step and the performing step do not comprise using a multiplier or a divider.
  2. 4
    A method for rasterization, comprising the steps of:receiving (a) a first set of coefficients representing a first functional, and (b) a bounding box offset;and computing a second set of coefficients a, b and c representing a second functional ƒ(x, y)=a·x+b·y+c, the second functional falling within a quadrant indicated by a<0 and b≧0;wherein the computing step comprises scaling an intermediate value, the scaling comprising a cyclic bit-rotation of the intermediate value, whereby the intermediate value is represented within a first bit-length, a scaled version of the intermediate value is represented within a second bit-length, and he second bit-length does not exceed the first bit-length.
  3. 7
    A method for providing scissoring by a view-port, comprising the steps of:receiving (a) a first pixel span expressed relative to an x axis and a y axis, (b) one or more coordinates specifying a scissoring box relative to the x and y axes, and (c) a scissoring box rotation angle tangent expressed relative to the x and y axes;and computing a second pixel span, the second pixel span expressed relative to the scissoring box;wherein the scissoring box indicates a rotated clipped rectangle.