Computer graphics processing and selective visual display system – Computer graphics processing – Graphic manipulation
Reexamination Certificate
2000-10-12
2004-02-24
Bella, Matthew C. (Department: 2676)
Computer graphics processing and selective visual display system
Computer graphics processing
Graphic manipulation
C345S653000, C345S654000, C345S679000, C345S680000, C382S295000
Reexamination Certificate
active
06697081
ABSTRACT:
BACKGROUND OF THE INVENTION
1. Field of the Invention
This invention relates to an image processing method and device for transforming an image of a graphic stored in an image memory and displaying the transformed image on a display device, and a storage medium storing a program therefor.
2. Prior Art
In video game machines and the like, a screen view is formed by reading image data of graphics necessary for forming respective parts of one screen view from an image memory storing image data of various graphics, generating write addresses corresponding to positions of the read image data of each graphic within the one screen view, and writing the image data of graphics in areas of a frame buffer corresponding to the respective write addresses. During the screen view formation, it is generally employed to rotate or transform a graphic or graphics in the screen view by controlling read addresses of the image data of the graphic or graphics stored in the image memory, and write addresses of the same in the frame buffer. This kind of technique is generally called “two-dimensional rendering”. For the convenience of description, throughout the present specification, the term “transform (transformation)” is used in a broader sense than usual, i.e. as a general term for image-tranforming operations including not only transformation as its normal meaning but also rotation or the like. In the appended claims as well, the term “transform (transformation)” is used in the broader sense.
The two-dimensional rendering, referred to above, is generally implemented by steps of calculating transform functions for mapping positions of parts of a graphic subjected to transformation (post-transformation graphic) over corresponding positions of the same graphic before being subjected to transformation (pre-transformation graphic), converting, using the transform functions, the positions of the parts of the graphic subjected to transformation on a display screen view to corresponding positions of the pre-transformation graphic, and reading image data corresponding to the positions of the pre-transformation graphic from the image memory. However, the above transform functions for use in the two-dimensional rendering include multiplications and divisions. Therefore, a VDP (video decompression processor) designed for the two-dimensional rendering is required to perform high-speed multiplying/dividing operations, resulting in an increased manufacturing cost of the VDP.
SUMMARY OF THE INVENTION
It is an object of the present invention to provide an image processing method that is capable of generating an image containing graphics which are transformed without carrying out multiplying/dividing operations, an image processing device for implementing the image processing method, and a storage medium storing a program for executing the image processing method.
To attain the above object, according to a first aspect of the invention, there is provided an image processing method of generating image data of a transformed graphic from image data of a source graphic before transformation stored in an image memory, and storing the image data of the transformed graphic into a frame buffer.
The method according to the first aspect of the invention is characterized by comprising the steps of sequentially determining, by a first DDA algorithm-based process, horizontal coordinate values of a pair of first points of intersection where a horizontal scanline intersects with two of sides defining the transformed graphic, while advancing the horizontal scanline in a vertical direction by a unit amount; sequentially determining, by a second DDA algorithm-based process, horizontal coordinate values and vertical coordinate values of a pair of second points of intersection on sides of the source graphic corresponding respectively to the two of the sides defining the transformed graphic, the second points of intersection corresponding respectively to the first points of intersection; determining, by a third DDA algorithm-based process, a horizontal coordinate value and a vertical coordinate value of each of points on the source graphic corresponding to respective points on a horizontal line segment connecting between one and another of the first points and spaced from each other by the unit amount, the respective points being obtained by changing a horizontal coordinate from a horizontal coordinate value of the one of the first points to a horizontal coordinate value of the another of the first points by the unit amount, whenever the first DDA algorithm-based process and the second DDA algorithm-based process are executed; and reading out image data of a location specified by the horizontal coordinate value and the vertical coordinate value of the each of the points on the source graphic determined by the third DDA algorithm-based process, from the image memory, and writing the read out image data into the frame buffer as image data of each of the respective points on the horizontal line segment connecting between the one and the another of the first points on the transformed graphic and spaced from each other by the unit amount.
Preferably, the first DDA algorithm-based process to the third DDA algorithm-based process are based on a DDA algorithm based process for sequentially determining one of a pair of integer coordinate values corresponding to each of straight line-approximating ones of lattice points of a two-dimensional coordinate system as a second integer coordinate value in response to inputting of a first integer coordinate value corresponding to the one of the pair of integer coordinate values, the two-dimensional coordinate system having a first coordinate axis for specifying a first coordinate value and a second coordinate axis for specifying a second coordinate value, each of the lattice points being specified by an integer as the first coordinate value and an integer as the second coordinate value, the straight line-approximating ones approximating a straight line arranged in the two-dimensional coordinate system, wherein if a first numerical value corresponding to a length of the straight line along the first coordinate axis is larger than or not smaller than a second numerical value corresponding to a length of the straight line along the second coordinate axis, the first numerical value is accumulated whenever the first integer coordinate value is changed by a unit amount, and accumulation of the second numerical value and change of the second integer coordinate value by the unit amount are repeatedly carried out to update the second integer coordinate value each time such that the second integer coordinate value becomes farther from an initial value of the second integer coordinate value corresponding to one end of the straight line and becomes closer to a final value of the second integer coordinate value corresponding to another end of the straight line until the accumulated second numerical value exceeds the accumulated first numerical value, whereas if the first numerical value corresponding to the length of the straight line along the first coordinate axis is not larger than or smaller than the second numerical value corresponding to the length of the straight line along the second coordinate axis, the second numerical value is accumulated whenever the first integer coordinate value is changed by the unit amount, and accumulation of the first numerical value and change of the second integer coordinate value by the unit amount are repeatedly carried out to update the second integer coordinate value each time such that the second integer coordinate value becomes farther from the initial value of the second integer coordinate value corresponding to the one end of the straight line and becomes closer to the final value of the second integer coordinate value corresponding to the another end of the straight line until the accumulated first numerical value exceeds the accumulated second numerical value.
To attain the above object, according to a second aspect of the invention, there is provided an image processi
Bella Matthew C.
Caschera Antonio
Pillsbury & Winthrop LLP
Yamaha Corporation
LandOfFree
Image processing method and device, and storage medium... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Image processing method and device, and storage medium..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Image processing method and device, and storage medium... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3339283