US6621501B2 - Pixel zoom system and method for a computer graphics system - Google Patents
Pixel zoom system and method for a computer graphics system Download PDFInfo
- Publication number
- US6621501B2 US6621501B2 US10/068,906 US6890602A US6621501B2 US 6621501 B2 US6621501 B2 US 6621501B2 US 6890602 A US6890602 A US 6890602A US 6621501 B2 US6621501 B2 US 6621501B2
- Authority
- US
- United States
- Prior art keywords
- original
- pixels
- axis
- zoom
- along
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
Definitions
- the present invention relates generally to graphics systems in computers, and, more particularly, to a system and method for efficiently implementing pixel zooms in such computer graphics systems.
- a computer graphics system sometimes referred to as a graphics pipeline, accelerator, or engine, associated with a computer, for example, a personal computer or workstation, are commonly used for processing graphical data and displaying graphical representations of objects on two-dimensional computer display screens.
- Current computer graphics systems can provide highly detailed representations and are used in a variety of different applications.
- an object to be represented on the computer display screen is defined by a plurality of graphics primitives.
- Primitives are basic components of a graphics picture and may include points, vectors (lines), and polygons, for example, triangles.
- Each primitive is made up of spans of picture elements (pixels).
- Hardware and/or software is implemented to render, or draw, on the two-dimensional display screen, the graphics primitives that represent the view of one or more objects being represented on the screen.
- the primitives that define the three-dimensional object to be rendered are usually originated and provided to the graphics system by a central processing unit (CPU), which defines each primitive in terms of a set of primitive data.
- CPU central processing unit
- the CPU may define the primitive in terms of a set of x′, y′, z′ pixel coordinates (unnormalized orthogonal coordinate system) corresponding with the triangular primitive's vertices, as well as set of color values (R, G, B values) for each vertex.
- Rendering hardware or software associated with a rasterizer of the graphics system, ultimately interpolates the data from the CPU, typically after several other processing stages, in order to produce the x, y, z screen coordinates (normalized orthogonal coordinate system) corresponding with the pixels that are activated/deactivated to represent each primitive and the color values (R, G, B values) for each of the screen coordinates x, y, z.
- the x, y, z screen coordinate data is driven to a raster scan display device, such as a computer monitor, by the graphics system.
- a pixel zoom is a feature made available to a user of the computer (and graphics system) that enables the user to enlarge and/or reduce a desired region of an image on a display screen.
- the user defines a region, or region, to be zoomed (enlarged or reduced) by any appropriate input(s), for example, defining a window around the region to be zoomed on a display screen.
- the region to be zoomed can be modified differently along its x, y axes.
- the region may be enlarged (abs
- the zoom magnitudes may be integers (integer zoomX, integer zoomY) or floating point numbers (float zoomX, float zoomY).
- enlargement along an axis (x or y) basically involves rendering an appropriate number of duplicates for each pixel in the zoomed region, while reduction along an axis generally involves deactivation of some of the pixels and strict copy of the others.
- the OpenGL graphics specification which is a well known computer graphics industry standard that was adopted around 1992, specifies a pixel zoom function, i.e., PixelZoom(float zoomX, float zoomY) performed at a raster position x rp , y rp as a window defined by coordinates bounded by a rectangle with corners: (x rp +zoomX*n, y rp +zoomY*m) and (x rp +zoomX*(n+1), y rp +zoomY*(m+1)), where zoomX and zoomY are each a negative, positive, or zero amount of zoom, where n and m are respectively the row and the column of pixels in the image, and where the coordinates (x rp ,y rp ) defines the raster scan position in the two-dimensional x,y space of the image. Any partial pixel whose center lies inside of this rectangle (or on its bottom or left boundaries) are produced in correspondence with this particular group of elements.
- bounding box technique is undesirable in that it is very time consuming to implement, complicated, and computationally intensive, especially considering that the zoom function is performed on a pixel-by-pixel basis on every pixel in the region to be zoomed.
- the present invention provides a pixel zoom system and method for computer graphics system of a computer for efficiently implementing a pixel zoom feature, or function or process.
- the pixel zoom system and method overcome the disadvantages and problems of the prior art, noted previously. Particularly, the pixel zoom system and method are less time consuming to implement, less complicated, and require far fewer mathematical computations, as compared to the prior art.
- the pixel zoom system includes a rasterizer designed to define a new zoomed (enlarged or reduced) raster image of a region in an original raster image having pixels defined in a coordinate system with orthogonal first and second axes (x,y), the region comprising a plurality of original pixels.
- the region to be zoomed can be modified differently along its x, y axes. In other words, the region may be enlarged (abs
- the region may be flipped or translated, about the x axis (zoomX ⁇ 0) or flipped about the y axis (zoomY>0).
- the zoom magnitudes may be integers (integer zoomX, integer zoomY) or floating point numbers (float zoomX, float zoomY).
- the rasterizer is designed to (1) determine a starting raster position for the zoomed raster image; (2) determine a first number of first pixels along the first axis for each row of the original pixels; and (3) determine, for each row of the original pixels, a second number of second pixels along the second axis for each column of the original pixels.
- a rendering mechanism associated with the pixel zoom system is designed to render the zoomed image based upon the starting raster position, the first numbers corresponding with the original pixel rows, the second numbers corresponding with the original pixel columns.
- the present invention can also be conceptualized as providing a method for efficiently implementing a pixel zoom function in a computer graphics system.
- the method can be broadly and simply summarized by the following steps: (a) defining a zoomed raster image of a region in an original raster image having pixels defined in a coordinate system with orthogonal first and second axes, the region comprising a plurality of original pixels, by: (1) determining a starting raster position for said zoomed raster image; (2) determining a first number of first pixels along said first axis for each row of said original pixels; and (3) for each row of said original pixels, determining a second number of second pixels along said second axis for each column of said original pixels; and (b) rendering said zoomed image based upon said starting raster position, said first numbers corresponding with said original pixel rows, said second numbers corresponding with said original pixel columns.
- FIG. 1A is a graphical diagram of an original raster scan image showing a highlighted original region to undergo a zoom process
- FIG. 1B is a graphical diagram of the image of FIG. 1A showing a highlighted zoomed region generally corresponding to the highlighted original region of FIG. 1A but processed via x and y zoom magnitudes (zoomX, zoomY) of +3.6 and +3.6, respectively, along an x-axis and a y-axis, respectively;
- FIG. 1C is a graphical diagram of the image of FIG. 1A showing a highlighted zoomed region generally corresponding to the highlighted original region of FIG. 1A but processed via x and y zoom magnitudes (zoomX, zoomY) of ⁇ 3.6 and +3.6, respectively, along an x-axis and a y-axis, respectively;
- FIG. 1D is a graphical diagram of the image of FIG. 1A showing a highlighted zoomed region generally corresponding to the highlighted original region of FIG. 1A but processed via x and y zoom magnitudes (zoomX, zoomY) of +3.6 and ⁇ 3.6, respectively, along an x-axis and a y-axis, respectively;
- FIG. 1E is a graphical diagram of the image of FIG. 1A showing a highlighted zoomed region generally corresponding to the highlighted original region of FIG. 1A but processed via x and y zoom magnitudes (zoomX, zoomY) of +0.55 and +0.55, respectively, along an x-axis and a y-axis, respectively;
- FIG. 2A is an electronic block diagram of a computer system having the pixel zoom system in accordance with a first embodiment of the invention implemented in a graphics system in connection with a rasterizer in hardware (H/W);
- FIG. 2B is an electronic block diagram of a possible implementation of the graphics system of FIG. 1A;
- FIG. 3 is an electronic block diagram showing the architecture, functionality, and operation of a possible implementation of the pixel zoom system of FIGS. 1A and 1B in accordance with the present invention.
- FIG. 4 is an electronic block diagram of a computer system having a pixel zoom system in accordance with a second embodiment of the invention implemented in a system memory in connection with a rasterizer in software.
- FIGS. 1A through 1E which graphically illustrate examples of zoom scenarios that can be implemented by prior art systems and that can also be efficiently implemented by the pixel zoom system 20 (first embodiment of FIGS. 2A and 2B and second embodiment of FIG. 4) and associated methodology of the present invention. These zoom function examples are fully described hereafter.
- FIG. 1A is a graphical diagram of an original raster scan image defined in an orthogonal x,y coordinate system (rows versus columns) showing a highlighted region 15 a to undergo a zoom process. More specifically, FIG. 1A shows an image 11 having a plurality of pixels 13 , the locations of which are defined in the x, y coordinate system having an origin (0,0) at the bottom left corner of the image 11 and extending along an x-axis to x J and extending along a y-axis to y i .
- 1A which in this example comprises a total of eight pixels (four in one row and four in another contiguous row), is zoomed and rendered, or produced, by the zoom function implemented in the rasterizer.
- the highlighted region 15 a is to be zoomed, or enlarged, by +3.6 along the x and y axes, which would be represented by a floating point number in a rasterizer.
- FIG. 1B is a graphical diagram of the image 11 of FIG. 1A showing a highlighted zoomed region 15 b generally corresponding to the highlighted region 15 a of FIG. 1A but processed via x and y zoom magnitudes (zoomX, zoomY) of +3.6 and +3.6, respectively, as examples, along an x-axis and a y-axis, respectively.
- the rendering typically begins at the bottom left at the raster position with coordinates (x start , y start ), which is (50.3, 50.3) in this example pursuant to the OpenGL specification, and proceeds along each span of the primitive from left to right in the x-axis direction and from span to span from bottom to top of the primitive in the y-axis direction. Comparing regions 15 a and 15 b, pixel blocks 16 a - 16 h correspond to pixel blocks 16 a ′- 16 h ′, respectively. It can be seen from FIG. 1B that the resulting zoomed region 15 b, resulting from application of the foregoing OpenGL specification, seems completely unpredictable as far as the zooming factors for each block 16 a - 16 h.
- FIG. 1C is a graphical diagram of the image 11 of FIG. 1A showing a highlighted rectangular zoomed region 15 c of pixels 13 generally corresponding to the highlighted region 15 a of FIG. 1A but processed via x and y zoom magnitudes (zoomX, zoomY) of ⁇ 3.6 and +3.6, respectively, as examples, along an x-axis and a y-axis, respectively.
- the original region 15 a is reduced along the x-axis and enlarged along the y-axis.
- FIG. 1A correspond to modified pixel blocks 16 a ′- 16 h ′in FIG. 1C, respectively.
- FIG. 1D is a graphical diagram of the image 11 of FIG. 1A showing a highlighted rectangular zoomed region 15 d generally corresponding to the highlighted region 15 a of FIG. 1A but processed via x and y zoom magnitudes (zoomX, zoomY) of +3.6 and ⁇ 3.6, respectively, as examples, along an x-axis and a y-axis, respectively.
- the original region 15 a is enlarged along the x-axis and reduced along the y-axis.
- FIG. 1A correspond to modified pixel blocks 16 a ′- 16 h ′in FIG. 1D, respectively.
- FIG. 1E is a graphical diagram of the image 11 of FIG. 1A showing a highlighted rectangular zoomed region 15 e generally corresponding to the highlighted region 15 a of FIG. 1A but processed via x and y zoom magnitudes (zoomX, zoomY) of +0.55 and +0.55, respectively, as examples, along an x-axis and a y-axis, respectively.
- the original region 15 a is enlarged along the x and y axes, but by a fractional amount, where zoomX ⁇ 1 and zoomY ⁇ 1.
- pixel blocks 16 a - 16 h of FIG. 1A correspond to modified pixel blocks 16 f ′- 16 h ′in FIG. 1E, respectively.
- pixels are deactivated, as opposed to duplicated, in the zoomed region.
- the pixel zoom system 20 of the present invention can be implemented in association with, for example but not limited to, a rasterizer, rendering mechanism, or other mechanism where raster scan conversion takes place in the computer graphics system.
- the pixel zoom system can be implemented in hardware (FIGS. 2 A and 2 B), software (FIG. 5 ), firmware, or a combination thereof.
- the pixel zoom system can be stored, transported, and/or utilized while residing on any computer-readable medium for use by or in connection with any suitable computer-based system, for example, a personal computer, workstation, minicomputer, or mainframe computer.
- a “computer-readable medium” can be any means that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
- the computer readable medium can be, for example but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, device, or propagation medium.
- the computer-readable medium would include the following: an electrical connection (electronic) having one or more wires, a portable computer diskette (magnetic), a random access memory (RAM) (magnetic), a read-only memory (ROM) (magnetic), an erasable programmable read-only memory (EPROM or Flash memory) (magnetic), an optical fiber (optical), and a portable compact disc read-only memory (CDROM) (optical).
- an electrical connection electronic having one or more wires
- a portable computer diskette magnetic
- RAM random access memory
- ROM read-only memory
- EPROM or Flash memory erasable programmable read-only memory
- CDROM portable compact disc read-only memory
- the computer-readable medium could even be paper or another suitable medium upon which the program is printed, as the program can be electronically captured, via for instance optical scanning of the paper or other medium, then compiled, interpreted or otherwise processed in a suitable manner if necessary, and then stored in a computer memory.
- FIGS. 2A and 2B A first embodiment of the pixel zoom system 20 of the present invention is set forth in FIGS. 2A and 2B.
- the system 20 as well as the rasterizer 22 are implemented in hardware (H/W) within the hardware-based graphics system 23 of a computer 26 .
- the hardware can be, for example, combinational logic gates implemented as an application specific integrated circuit (ASIC)
- the computer 26 includes a central processing unit (CPU) 27 , a system memory 28 (one or collection of, e.g., RAM, ROM, nonvolatile memory, volatile memory, etc.) for storing software that is executed by the CPU 27 , one or more input devices 29 (e.g., a mouse, keyboard, etc.) that can be operated by a user, a graphics system 33 for processing graphics data received from the CPU 27 , a local interface 34 , for example, one or more buses, configured to electrically interconnect the foregoing electronic elements, and a display device 31 (e.g., a computer monitor) electrically connected to the graphics system 33 via a connection 32 and configured to display the image data generated by the CPU 27 and further processed by the graphics system 33 .
- CPU central processing unit
- system memory 28 one or collection of, e.g., RAM, ROM, nonvolatile memory, volatile memory, etc.
- input devices 29 e.g., a mouse, keyboard, etc.
- a graphics system 33 for
- Primitives that define objects to be rendered are originated and provided to the graphics system 33 by the CPU 27 , which defines each primitive in terms of a set of primitive data. For example, when the primitive is a triangular primitive, then the CPU 27 may define the primitive in terms of a set of x′, y′, z′ pixel coordinates (unnormalized orthogonal coordinate system) corresponding with the triangular primitive's vertices, as well as set of color values (R, G, B values) for each vertex.
- Rendering hardware associated with the rasterizer 22 of the graphics system 33 , ultimately interpolates the data from the CPU 27 , after several other processing stages, in order to produce the x, y, z screen coordinates (normalized orthogonal coordinate system) corresponding with the pixels 13 that are activated/deactivated to represent each primitive and the color values (R, G, B values) for each of the screen coordinates x, y, z.
- the x, y, z screen coordinate data is driven to the raster scan display device 31 by the graphics system 33 .
- FIG. 2 B A lower level electronic block diagram that more specifically illustrates the architecture of the hardware-based graphics system 33 is shown in FIG. 2 B.
- the computer graphics system 33 includes one or more geometry accelerators 42 that are configured to receive vertex data from the CPU 27 and to define the primitives that make up the view to be displayed.
- Each geometry accelerator 42 may comprise any number of specialty control units 43 for processing the image data, including, for example, a transform mechanism (TRANS) 44 for performing transformations on the vertex data, such as scaling or moving a vertex in space, a clip mechanism (CLIP) 46 for clipping portions of objects that extend beyond a boundary, a light mechanism (LIGHT) 48 for enhancing the image data by simulating light conditions, and a plane equation mechanism (PLANE) 52 for defining the primitives in terms of mathematical floating point plane equations.
- TRANS transform mechanism
- CLIP clip mechanism
- LIGHT light mechanism
- PLANE plane equation mechanism
- Each of the control units 43 is typically implemented via cell logic and as separate distinct state machines.
- the output 53 of the geometry accelerator 42 referred to as rendering data, is used to generate final screen coordinates and color data for each pixel and each primitive.
- the output 53 is passed to a rasterizer 25 , which converts the geometry accelerator output 53 to fixed point format from floating point format and which produces pixel data 57 .
- the pixel data 57 from the rasterizer 22 is next communicated to a frame buffer control 58 and then to a frame buffer 62 .
- the frame buffer 62 serves to temporarily store the pixel data prior to communication to the display 21 .
- the pixel data is passed from the frame buffer 62 through a digital-to-analog converter (DAC) 64 and then to the display device 31 .
- DAC digital-to-analog converter
- FIG. 3 is a block diagram showing the architecture, functionality, and operation of a possible implementation of the first embodiment of the pixel zoom system 20 of FIGS. 2A and 2B in accordance with the present invention.
- the second embodiment of the pixel zoom system 20 of FIG. 4 uses generally the same logic shown in FIG. 3 .
- each block represents a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s).
- the functions noted in the blocks may occur out of the order noted in FIG. 3 .
- two blocks shown in succession in FIG. 3 may in fact be executed substantially concurrently or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved.
- rendering mechanism 78 is in communication with the rasterizing mechanism 69 and is designed to render the zoomed region based upon the starting raster position, the first numbers (y replication 's) corresponding with the original pixel rows, the second numbers (x replication 's) corresponding with the original pixel columns, as defined and forwarded to it by the rasterizing mechanism 69 .
- the pixel zoom system 20 is prompted to retrieve or waits to receive one or more inputs (which can be preprocessed) from a user of the computer 26 via input device(s) 29 (FIG. 2 A), advising the computer 26 and graphics system 33 to perform a zoom function.
- the region (for example but not limited to, region 15 a highlighted in FIG. 1A) to be zoomed as well as the respective zoom magnitudes (zoomX, zoomY) along the x and y axes are input to the computer 26 and retrieved by the pixel zoom system 20 , as indicated at block 71 in FIG. 3 .
- the region may be input, for example, via having the user define a window around the region to be zoomed on a display screen associated with display device 31 .
- the zoom magnitudes may be input via, for example, an input device 29 , such as a keyboard.
- the region to be zoomed can be modified differently along its x and y axes. In other words, the region may be enlarged (abs
- the region may be flipped or translated, about the x axis (zoomX ⁇ 0) or flipped about the y axis (zoomY>0).
- the zoom magnitudes may be integers (integer zoomX, integer zoomY) or floating point numbers (float zoomX, float zoomY).
- enlargement along an axis (x or y) basically involves rendering an appropriate number of duplicates for each pixel 13 in the zoomed region, while reduction along an axis generally involves deactivation of pixels 13 .
- the pixel zoom system 20 calculates the starting location (x start ,y start ) for the new zoomed region (for example but not limited to, regions 15 b - 15 e in respective FIGS. 1 B- 1 E), given the particular input parameters, as denoted at block 72 .
- the pixel zoom system 20 is designed to perform the following mathematical equations (where the mathematical operation “ceil(k)” means the smallest integer that is greater than or equal to k and where (x rp ,y rp ) is the raster position of pixels 13 in the original region 15 in the x,y coordinate system):
- y replication is computed as follows (where the mathematical operation “(Int32)(k)” means round k to a 32-bit integer):
- the pixel zoom system 20 calculates a block width, or x replication for each pixel 13 in the original row, as follows:
- the pixel zoom system 20 commences another looping operation the raster pixel height of the zoomed region is fully determined. As indicated at block 77 , the pixel zoom system 20 jumps to a new frame buffer location by determining a new y start , as follows:
- the rendering mechanism 78 of FIG. 3 renders the zoomed region.
- the rendering mechanism 78 interpolates the data from the rasterizing mechanism 69 , if desired, after other processing stages, in order to produce x, y, z screen coordinates (normalized orthogonal coordinate system) corresponding with the pixels 13 that are to be activated/deactivated to represent each primitive and the color values (R, G, B values) for each of the screen coordinates x, y, z.
- the x, y, z screen coordinate data is driven to the raster scan display device 31 by the graphics system 33 .
- FIG. 4 is an electronic block diagram of a computer system 86 having the pixel zoom system 10 of the invention implemented in software in a system memory 28 in connection with a rasterizer 22 and graphics software 88 that are also implemented in software (S/W).
- the computer 86 includes a CPU 27 , a system memory 28 for storing software that is executed by the CPU 27 , a graphics system 33 for processing graphics data received from the CPU 27 , one or more input devices 29 , a local interface 24 configured to electrically interconnect the foregoing elements, and a display device 21 connected to the graphics system 23 via a connection 22 and configured to display the image data generated by the graphics system 23 .
- the system memory 28 includes graphics software 88 as well as any suitable operating system 89 , which are executed by the CPU 27 .
- the graphics software 88 includes the rasterizer 22 that operates in order to convert primitive data into pixel data for the display device 31 .
- the architecture, functionality, and operation of the pixel zoom system 20 in the computer 86 is shown in FIG. 4, which was previously described.
- the first and second embodiments of the pixel zoom system 20 can be used to perform any zoom operation, for example, those shown in FIGS. 1B through 1E, in compliance with the OpenGL specification, while being less complicated and requiring far fewer mathematical computations, as compared to the bounding box technique typically implemented in connection with the Open GL specification.
- This Appendix illustrates mathematical derivations for the following equations that are utilized by the pixel zoom system 20 of the present invention: x start , x replication , zoomX, y start , y replication , zoomY.
- x start , x replication for positive zoomX
- y start for negative zoomX
- y replication for positive zoomY
- negative zoomY for negative zoomY
- Each of the following derivations is started by converting the graphics specification to a set interval representation.
- the next step converts raster positions (real value) in screen coordinates.
- the open and closed intervals are used to determine an appropriate mathematical ceil function.
- a well known mathematical Lemma function is utilized over and over again. Generally, the Lemma operation is used to determine more efficient replication calculations.
- [ x p ] ceil ( x rp +z z ⁇ 0.5) ⁇ ceil ( x rp ⁇ 0.5)
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
Description
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/068,906 US6621501B2 (en) | 1999-04-09 | 2002-02-08 | Pixel zoom system and method for a computer graphics system |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/288,734 US6421063B1 (en) | 1999-04-09 | 1999-04-09 | Pixel zoom system and method for a computer graphics system |
US10/068,906 US6621501B2 (en) | 1999-04-09 | 2002-02-08 | Pixel zoom system and method for a computer graphics system |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/288,734 Continuation US6421063B1 (en) | 1999-04-09 | 1999-04-09 | Pixel zoom system and method for a computer graphics system |
Publications (2)
Publication Number | Publication Date |
---|---|
US20020075285A1 US20020075285A1 (en) | 2002-06-20 |
US6621501B2 true US6621501B2 (en) | 2003-09-16 |
Family
ID=23108410
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/288,734 Expired - Lifetime US6421063B1 (en) | 1999-04-09 | 1999-04-09 | Pixel zoom system and method for a computer graphics system |
US10/068,906 Expired - Fee Related US6621501B2 (en) | 1999-04-09 | 2002-02-08 | Pixel zoom system and method for a computer graphics system |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/288,734 Expired - Lifetime US6421063B1 (en) | 1999-04-09 | 1999-04-09 | Pixel zoom system and method for a computer graphics system |
Country Status (1)
Country | Link |
---|---|
US (2) | US6421063B1 (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20010032221A1 (en) * | 2000-04-14 | 2001-10-18 | Majid Anwar | Systems and methods for generating visual representations of graphical data and digital document processing |
US20030122789A1 (en) * | 2002-01-02 | 2003-07-03 | Manish Sharma | Integrated digitizing tablet and display apparatus and method of operation |
US20050001855A1 (en) * | 2003-07-02 | 2005-01-06 | Eun-Sook Kang | Method of and apparatus for enlarging image and printing enlarged image and computer-readable recording medium for storing computer program |
US20050237309A1 (en) * | 2004-04-26 | 2005-10-27 | Manish Sharma | Input device including a layer of particles |
US20060038823A1 (en) * | 2004-08-20 | 2006-02-23 | Arcas Blaise A Y | System and method for upscaling low-resolution images |
US20080111821A1 (en) * | 2006-11-13 | 2008-05-15 | Nucore Technology, Inc. | Dynamic tile sizing in an image pipeline |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6642936B1 (en) * | 2000-08-08 | 2003-11-04 | Tektronix, Inc. | Touch zoom in/out for a graphics display |
JP3870109B2 (en) * | 2002-03-08 | 2007-01-17 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Image display apparatus, image display method, and image display program |
US20050044032A1 (en) * | 2003-08-22 | 2005-02-24 | International Business Machines Corporation | Interactive bid evaluation system, method, and iconic interface for combinatorial auctions |
US7139005B2 (en) * | 2003-09-13 | 2006-11-21 | Microsoft Corporation | Optimized fixed-point mathematical library and graphics functions for a software-implemented graphics rendering system and method using a normalized homogenous coordinate system |
US7593010B2 (en) * | 2003-09-18 | 2009-09-22 | Microsoft Corporation | Software-implemented transform and lighting module and pipeline for graphics rendering on embedded platforms using a fixed-point normalized homogenous coordinate system |
EP1583031A1 (en) * | 2004-03-30 | 2005-10-05 | Dialog Semiconductor GmbH | Zoom algorithm |
US20060050089A1 (en) * | 2004-09-09 | 2006-03-09 | Atousa Soroushi | Method and apparatus for selecting pixels to write to a buffer when creating an enlarged image |
EP2589016A1 (en) * | 2010-06-30 | 2013-05-08 | Koninklijke Philips Electronics N.V. | Zooming a displayed image |
US9043722B1 (en) | 2012-06-19 | 2015-05-26 | Surfwax, Inc. | User interfaces for displaying relationships between cells in a grid |
WO2014206124A1 (en) * | 2013-06-28 | 2014-12-31 | 北京奇虎科技有限公司 | Method and device for performing zooming on webpage on electronic device |
CN103578077B (en) * | 2013-12-02 | 2016-09-28 | 广东威创视讯科技股份有限公司 | A kind of image zoom processing method and relevant apparatus |
GB201516553D0 (en) | 2015-09-18 | 2015-11-04 | Microsoft Technology Licensing Llc | Inertia audio scrolling |
GB201516552D0 (en) * | 2015-09-18 | 2015-11-04 | Microsoft Technology Licensing Llc | Keyword zoom |
CN110942418B (en) * | 2019-11-18 | 2023-06-13 | 中国航空工业集团公司西安航空计算技术研究所 | GPU pixel replication method based on glCopyPixels |
CN113392246B (en) * | 2021-06-15 | 2024-04-05 | 深圳市万翼数字技术有限公司 | Drawing display method and device, storage medium and electronic equipment |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5335296A (en) * | 1991-04-30 | 1994-08-02 | Optigraphics Corporation | Process for high speed rescaling of binary images |
US5872572A (en) * | 1995-12-08 | 1999-02-16 | International Business Machines Corporation | Method and apparatus for generating non-uniform resolution image data |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0946591A (en) * | 1995-07-31 | 1997-02-14 | Canon Inc | Image processing apparatus and image processing system |
-
1999
- 1999-04-09 US US09/288,734 patent/US6421063B1/en not_active Expired - Lifetime
-
2002
- 2002-02-08 US US10/068,906 patent/US6621501B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5335296A (en) * | 1991-04-30 | 1994-08-02 | Optigraphics Corporation | Process for high speed rescaling of binary images |
US5872572A (en) * | 1995-12-08 | 1999-02-16 | International Business Machines Corporation | Method and apparatus for generating non-uniform resolution image data |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20010032221A1 (en) * | 2000-04-14 | 2001-10-18 | Majid Anwar | Systems and methods for generating visual representations of graphical data and digital document processing |
US7009626B2 (en) * | 2000-04-14 | 2006-03-07 | Picsel Technologies Limited | Systems and methods for generating visual representations of graphical data and digital document processing |
US20030122789A1 (en) * | 2002-01-02 | 2003-07-03 | Manish Sharma | Integrated digitizing tablet and display apparatus and method of operation |
US6798404B2 (en) * | 2002-01-02 | 2004-09-28 | Hewlett-Packard Development Company, L.P. | Integrated digitizing tablet and display apparatus and method of operation |
US20050001855A1 (en) * | 2003-07-02 | 2005-01-06 | Eun-Sook Kang | Method of and apparatus for enlarging image and printing enlarged image and computer-readable recording medium for storing computer program |
US20050237309A1 (en) * | 2004-04-26 | 2005-10-27 | Manish Sharma | Input device including a layer of particles |
US7532203B2 (en) | 2004-04-26 | 2009-05-12 | Samsung Electronic Co., Ltd. | Data input device that utilizes a layer of magnetic particles to store non-volatile input data that is magnetically coupled to an underlying MRAM array |
US20060038823A1 (en) * | 2004-08-20 | 2006-02-23 | Arcas Blaise A Y | System and method for upscaling low-resolution images |
US8149235B2 (en) * | 2004-08-20 | 2012-04-03 | Microsoft Corporation | System and method for upscaling low-resolution images |
US20080111821A1 (en) * | 2006-11-13 | 2008-05-15 | Nucore Technology, Inc. | Dynamic tile sizing in an image pipeline |
US7864182B2 (en) * | 2006-11-13 | 2011-01-04 | Mediatek Singapore Pte Ltd | Dynamic tile sizing in an image pipeline |
Also Published As
Publication number | Publication date |
---|---|
US6421063B1 (en) | 2002-07-16 |
US20020075285A1 (en) | 2002-06-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6621501B2 (en) | Pixel zoom system and method for a computer graphics system | |
JP5232358B2 (en) | Rendering outline fonts | |
US10102663B2 (en) | Gradient adjustment for texture mapping for multiple render targets with resolution that varies by screen location | |
US6359623B1 (en) | Method and apparatus for performing scan conversion in a computer graphics display system | |
EP0998727B1 (en) | Texture mapping in 3-d computer graphics | |
US8059119B2 (en) | Method for detecting border tiles or border pixels of a primitive for tile-based rendering | |
KR102666054B1 (en) | Graphics processing systems | |
JP5721358B2 (en) | Graphics processing system | |
US8928667B2 (en) | Rendering stroked curves in graphics processing systems | |
JP4157569B2 (en) | Drawing apparatus, drawing method, and drawing program | |
US6292192B1 (en) | System and method for the direct rendering of curve bounded objects | |
US6636218B1 (en) | Title-based digital differential analyzer rasterization | |
US20050259100A1 (en) | Graphic processing apparatus, graphic processing system, graphic processing method and graphic processing program | |
JP2002008054A (en) | Device for carrying out h-space bump mapping suitable for execution together with h-space lighting in graphics pipeline for computer graphics display system | |
US6894695B2 (en) | Apparatus and method for acceleration of 2D vector graphics using 3D graphics hardware | |
US11087511B1 (en) | Automated vectorization of a raster image using a gradient mesh with arbitrary topology | |
KR20020001518A (en) | A method and apparatus in a data processing system for full scene anti-aliasing | |
US20090033678A1 (en) | Method for checkerboard-based vector to raster conversion | |
EP0528524A2 (en) | Method and apparatus for scaling line patterns | |
US7643702B1 (en) | Object detection in images using a graphics processor | |
US6556203B1 (en) | Tile-based digital differential analyzer rasterization | |
US20100141649A1 (en) | Drawing device | |
US7286139B2 (en) | Partial guardband clipping | |
US20060061594A1 (en) | Method and system for real-time anti-aliasing using fixed orientation multipixels | |
KR0140283B1 (en) | Image Rotation Method of Image Editing Device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P., COLORADO Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HEWLETT-PACKARD COMPANY;REEL/FRAME:013776/0928 Effective date: 20030131 Owner name: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P., COLORAD Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HEWLETT-PACKARD COMPANY;REEL/FRAME:013776/0928 Effective date: 20030131 Owner name: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.,COLORADO Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HEWLETT-PACKARD COMPANY;REEL/FRAME:013776/0928 Effective date: 20030131 |
|
AS | Assignment |
Owner name: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P., TEXAS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HEWLETT-PACKARD COMPANY;REEL/FRAME:013780/0741 Effective date: 20030703 |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
REMI | Maintenance fee reminder mailed | ||
LAPS | Lapse for failure to pay maintenance fees | ||
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
FP | Lapsed due to failure to pay maintenance fee |
Effective date: 20150916 |