Claims
- 1. A scaling processor, comprising:
- a graphics memory storing a plurality of digital pictures, each of the digital pictures comprising a plurality of run length encoded (RLE) transition segments, each RLE transition segment, having a length and a color code, indicative of color pixels in at least a portion of a raster scan line;
- a parameter memory storing a plurality of motion object specifiers, each of the specifiers referring to a selected one of the digital pictures in the graphics memory and having a scale factor, and wherein a center of mass for the selected digital picture is predefined as an ordered set of offset Cartesian coordinates, (X.sub.offset, Y.sub.offset), the X.sub.offset coordinate defined as the horizontal offset and the Y.sub.offset defined as the vertical offset, the origin for the coordinates defined as a corner of the selected digital picture;
- a processor selecting one of the motion object specifiers in the parameter memory and selecting one of the RLE transition segments of the referenced digital picture in the graphics memory;
- a frame buffer; and
- a line fill state machine receiving the scale factor in the selected motion object specifier and receiving the selected RLE transition segment, wherein the length in the RLE transition segment is decremented while the color code in the RLE transition segment is written into the frame buffer at increasing addresses, the scale factor indicative of a growth or shrink operation thereby determinative of whether the decrementing of the length or the increasing of addresses is
- selectively disabled.
- 2. The scaling processor as defined in claim 1, wherein the processor is a bit slice processor.
- 3. The scaling processor as defined in claim 1, wherein the line fill state machine includes a length counter to store the length in the selected RLE transition segment.
- 4. The scaling processor as defined in claim 1, wherein the line fill state machine includes a scale register to store the scale factor in the selected object specifier.
- 5. The scaling processor as defined in claim 1, wherein the frame buffer is addressed by an address counter.
- 6. The scaling processor as defined in claim 1, wherein the line fill state machine includes a rate multiplier to selectively disable the decrementing of the length and increasing of addresses.
- 7. The scaling processor as defined in claim 1, additionally comprising a video display receivably connected to the frame buffer for displaying raster objects.
- 8. The scaling processor as defined in claim 7, wherein the frame buffer includes a double buffered frame buffer so that one frame buffer receives color codes from the line fill state machine and the other frame buffer outputs color codes to the video display.
- 9. An image scaling system, comprising:
- a compressed image memory storing a set of object images in a compressed format including transition segments having length and color information;
- a parameter memory storing an object specifier having an index of a selected one of the object images, a center of scaling for the selected object image, and a scale factor;
- a frame buffer storing color information belonging to a scaled object;
- a video display receiving pixel data indicative of the scaled object; and
- a blitter receiving a selected transition segment of the selected object image indexed in the object specifier and receiving the scale factor, the blitter having a rate multiplier to selectively disable the writing of color information to multiple locations in the frame buffer so as to produce an object image that is reduced in scale.
- 10. The image scaling system defined in claim 9, wherein the center of scaling for the selected object image is predefined as an ordered set of Cartesian coordinates (X.sub.offset, Y.sub.offset) with respect to a selected origin, the X.sub.offset coordinate defined as the horizontal offset and the Y.sub.offset coordinate defined as the vertical offset.
- 11. An image scaling system, comprising:
- a compressed image memory storing a set of object images in a compressed format including transition segments having length and color information;
- a parameter memory storing an object specifier having an index of a selected one of the object images, a center of scaling for the selected object image, and a scale factor;
- a frame buffer storing color information belonging to a scaled object;
- a video display receiving pixel data indicative of the scaled object; and
- a blitter receiving a selected transition segment of the selected object image indexed in the object specifier and receiving the scale factor, the blitter having a rate multiplier to selectively disable the decrementing of the length information in the transition segment thereby writing the same color information to multiple locations in the frame buffer so as to produce an object image that is increased in scale.
- 12. The image scaling system defined in claim 11, wherein the center of scaling for the selected object image is predefined as an ordered set of Cartesian coordinates (X.sub.offset, Y.sub.offset) with respect to a selected origin, the X.sub.offset coordinate defined as the horizontal offset and the Y.sub.offset coordinate defined as the vertical offset.
- 13. A method of scaling an object precompressed into a plurality of run length encoded segments and displayed by a computer having a processor, a memory and a video display, the object prestored in the memory of the computer, the method comprising the steps of:
- retrieving from the memory a selected transition segment having a length and color code indicative of at least a portion of a raster scan line;
- calculating a center of mass for the object;
- retrieving from the memory a scale factor; and
- selectively processing the length and address of the memory using the scale factor so as to display pixels associated with the color code on the video display, thereby resulting in the display of the object scaled about the center of mass.
- 14. The method defined in claim 13, wherein the step of selective processing includes disabling processing the length resulting in object enlargement.
- 15. The method defined in claim 13, wherein the step of selective processing includes disabling processing the address of the memory resulting in object reduction.
- 16. The method of scaling as defined in claim 13, wherein following the step of calculating the center of mass, the method further comprises the steps of:
- storing the center of mass for the object in the memory; and
- retrieving the center of mass for the object from the memory.
- 17. The method of scaling as defined in claim 11, wherein the center of mass is calculated using an ordered set of offset Cartesian coordinates (X.sub.offset, Y.sub.offset) with respect to a selected origin, the X.sub.offset coordinate defined as the horizontal offset and the Y.sub.offset coordinate defined as the vertical offset.
- 18. A system for scaling raster images, comprising:
- a memory having a plurality of prestored raster pictures, the memory also having a predefined center of mass for each picture, wherein the center of mass for each picture is predefined as a set of offset Cartesian coordinates, (X.sub.offset, Y.sub.offset) with respect to a selected origin, the X.sub.offset coordinate defined as the horizontal offset and the Y.sub.offset coordinate defined as the vertical offset;
- processing means for generating a set of parameters which define an initial position and a scale of a selected one of the prestored raster pictures; and
- scaling means responsive to the processing means for scaling the selected picture into an object about a reference point, the start position of the object calculated as an offset from the initial position which corresponds to the center of mass of the selected raster picture; and
- a video display for displaying the object.
- 19. A system for scaling raster images, comprising:
- a memory having a plurality of prestored raster pictures, the memory also having a predefined center of mass for each picture;
- processing means for generating a set of parameters which define an initial position and a scale of a selected one of the prestored raster pictures; and
- scaling means responsive to the processing means for scaling the selected picture into an object about a reference point, the start position of the object calculated as an offset from the initial position which corresponds to the center of mass of the selected raster picture; and
- a video display for displaying the object, wherein the start position is calculated according to the following equations:
- X.sub.s =X.sub.i -SCALE.times.X.sub.offset ( 1)
- Y.sub.s =Y.sub.i -SCALE.times.Y.sub.offset ( 2)
- where:
- X.sub.s is the starting X coordinate to draw the object;
- Y.sub.s is the starting Y coordinate to draw the object;
- X.sub.i is the displayable X coordinate of the object's center of mass;
- Y.sub.i is the displayable Y coordinate of the object's center of mass;
- SCALE is the scaling factor for reduction/enlargement;
- X.sub.offset is the horizontal offset of the object origin from the center of mass; and
- Y.sub.offset is the vertical offset of the object origin from the center of mass.
Parent Case Info
This application is a continuation of application Ser. No. 07/694,139, filed May 1, 1991, now abandoned.
US Referenced Citations (15)
Continuations (1)
|
Number |
Date |
Country |
Parent |
694139 |
May 1991 |
|