System and method for rendering multi-planar reformations using bi-linear interpolation
First Claim
1. A method for rendering an arbitrarily oriented three-dimensional image associated with a cross-sectional slice through a volumetric data set comprising axially aligned parallel stacks of two dimensional textured images, wherein the cross-sectional slice intersects with two or more of the textured images at intersecting planes, said method comprising the steps of:
- enabling additive blending;
dividing the slice into one or more polygons, each bound by two of the intersecting planes;
defining an active texture associated with one of the intersecting planes;
identifying a first polygon that intersects with said active texture, calculating coordinates of vertices associated with said first polygon at the intersecting planes;
calculating the color of said vertices of said first polygon by performing the steps of;
setting the color of said vertices that intersect with said active texture to colors associated with the corresponding vertices from said active texture at the intersecting plane; and
setting the color of said vertices that intersect with said texture that is not said active texture to a value that represents a lack of color; and
issuing a command to draw said first polygon.
3 Assignments
0 Petitions
Accused Products
Abstract
A view port comprising an oblique slice intersecting a stack of textured images is defined. A polygon associated with the view port slice is divided into multiple polygons, wherein each polygon is clipped to the surface of each intersecting texture. Each intersecting texture is then enabled, one at a time. When each texture is enabled, each polygon intersecting with the enabled texture is drawn. The colors of the vertices that fall within the active textures are maintained according to the color of the active texture, and the colors of the vertices that fall within the inactive texture are set to zero. This process is repeated until all of the intersecting textures have been enabled. This causes each polygon to be drawn exactly twice. Additive blending is enabled so that the first and second polygons are blended together. When each polygon is drawn, bi-linear interpolation techniques are used to fill-in the colors of the texels that lie in between the vertices of the polygon. The second time the polygon is drawn, the opposite texture used to draw the first polygon becomes the active texture. The first and second polygons are then blended together, resulting in a properly filtered averaged three dimensional image that is rendered using only bi-linear interpolation techniques.
-
Citations
9 Claims
-
1. A method for rendering an arbitrarily oriented three-dimensional image associated with a cross-sectional slice through a volumetric data set comprising axially aligned parallel stacks of two dimensional textured images, wherein the cross-sectional slice intersects with two or more of the textured images at intersecting planes, said method comprising the steps of:
-
enabling additive blending;
dividing the slice into one or more polygons, each bound by two of the intersecting planes;
defining an active texture associated with one of the intersecting planes;
identifying a first polygon that intersects with said active texture, calculating coordinates of vertices associated with said first polygon at the intersecting planes;
calculating the color of said vertices of said first polygon by performing the steps of;
setting the color of said vertices that intersect with said active texture to colors associated with the corresponding vertices from said active texture at the intersecting plane; and
setting the color of said vertices that intersect with said texture that is not said active texture to a value that represents a lack of color; and
issuing a command to draw said first polygon. - View Dependent Claims (2, 3)
-
-
4. A method for rendering an arbitrarily oriented three-dimensional image associated with a cross-sectional slice through a volumetric data set comprising axially aligned parallel stacks of two dimensional textured images, wherein the cross-sectional slice intersects with two or more of the textured images at intersecting planes, said method comprising the steps of:
-
enabling additive blending;
dividing said slice into one or more polygons, each bound by two of the intersecting planes;
defining an active texture by successively enabling, in a serial manner, each of the textured images associated with the intersecting planes, and performing a rendering method for each said active texture, said rendering method comprising the steps of;
identifying a polygon that intersects with said active texture, determining vertices of said polygon by calculating coordinates of said intersecting planes associated with said polygon, multiplying the color associated with said vertices by one, if said vertices fall into said active texture, multiplying the color associated with said vertices by zero, if said vertices fall do not fall into said active texture, and drawing said polygon.
-
-
5. A computer program product comprising a computer useable medium having computer program logic stored therein, said computer program logic for enabling a computer to render an arbitrarily oriented three-dimensional image associated with a cross-sectional slice through a volumetric data set comprising axially aligned parallel stacks of two-dimensional textured images, wherein the cross-sectional slice intersects with two or more of the textured images at intersecting planes, wherein said computer program logic comprises:
-
means for enabling the computer to enable additive blending;
means for enabling the computer to define a polygon coincident with the cross-sectional slice;
means for enabling the computer to divide said polygon into one or more divided polygons, each having a first end and a second end, wherein said first end and said second end is bound to one of the intersecting planes;
means for enabling the computer to define an active texture by successively enabling, in a serial manner, each of the textured images associated with the intersecting planes, and repeatedly performing a rendering method for each said active texture, said rendering method comprising the steps of;
means for enabling the computer to identify one or two polygons that intersect with said active texture, means for enabling the computer to determine vertices of said one or two polygons by calculating coordinates of said intersecting planes associated with said one or two polygons, means for enabling the computer to multiply the color associated with said vertices by one, if said vertices fall into said active texture, means for enabling the computer to multiply the color associated with said vertices by zero, if said vertices fall do not fall into said active texture, and means for enabling the computer to draw said one or two polygons.
-
-
6. An apparatus for rendering an arbitrarily oriented three-dimensional image associated with a cross-sectional slice through a volumetric data set comprising axially aligned parallel stacks of two-dimensional textured images, wherein the cross-sectional slice intersects with two or more of the textured images at intersecting planes, said apparatus comprising:
-
enabling means for enabling additive blending;
dividing means for dividing the slice into one or more polygons, each bound by two of the intersecting planes;
activating means for defining an active texture associated with one of the intersecting planes;
identifying means for identifying a first polygon that intersects with said active texture, calculating means for calculating coordinates of vertices associated with said first polygon at the intersecting planes;
color means for setting the color of said vertices of said first polygon by setting the color of said vertices that intersect with said active texture to colors associated with the corresponding vertices from said active texture at the intersecting plane; and
setting the color of said vertices that intersect with said texture that is not said active texture to a value that represents a lack of color; and
drawing means for drawing said first polygon. - View Dependent Claims (7, 8)
-
-
9. A system for rendering an arbitrarily oriented three-dimensional image associated with a cross-sectional slice through a volumetric data set comprising axially aligned parallel stacks of two~dimensional textured images, wherein the cross-sectional slice intersects two or more of the textured images at intersecting planes, said system comprising:
-
a general purpose computer system;
a three-dimensional graphics accelerator coupled to said computer system that supports at least the features of additive blending, two-dimensional texture mapping, and bi-linear interpolation;
means for dividing the cross sectional slice into one or more polygons, each polygon having a first end and a second end, wherein said first end and said second end coincides with one of the intersecting planes;
means for enabling, in a serial manner, each of the textured images associated with the intersecting planes to define an active texture to be mapped by said graphics accelerator;
means for enabling the computer to identify intersecting polygons that intersect with said active texture;
means for determining intersecting vertices of said intersecting polygons by calculating coordinates of said intersecting planes associated with said intersecting polygons, means for calculating the colors associated with said intersecting vertices by multiplying the color of the intersecting vertices by one, if said intersecting vertices fall into said active texture, and by zero, if said vertices fall do not fall into said active texture, and means for enabling the graphics accelerator to draw each said intersecting polygons with said feature of additive blending enabled, to thereby render a properly filtered textured image associated with the slice.
-
Specification