Snapshot damage handling for rendering objects in a zooming graphical user interface
First Claim
1. A method of visually rendering a result of manipulation of a representation object in a zooming space, wherein said representation object is characterized by a variable defining a visual characteristic, and wherein a plurality of said representation objects are associated in parent groups of said zooming space, the method comprising the steps of:
- obtaining snapshot data for a first representation object prior to a manipulation of said first representation object;
determining a repaint region after said manipulation of said first representation object based on a comparison of the snapshot data for the first representation object with current data for the first representation object; and
computing visible display parameters for said repaint region.
1 Assignment
0 Petitions
Accused Products
Abstract
A computer interface is provided for zooming representation objects in a zooming graphical user interface. Information is displayed as a collection of zooming spaces containing graphical objects that may be manipulated with interactive input devices. The damage handling method of the invention limits data processing undertaken to make the result of user manipulations apparent. A copy of least one instance variable defining a visual characteristic for each zooming object is stored as snapshot data prior to user manipulation. Ensuing modification requiring re-rendering is determined by comparison of snapshot data and current object data. The region to be re-rendered is determined by a bounding box that circumscribes the bounding boxes of the snapshot data and the current object data. In this manner, the region to be re-rendered need only be calculated once, after a series of user manipulations of an object is complete. Timing of the damaging necessary to make the result of user manipulation apparent is also selectively controlled. A series of modifications may be made to the displayed zooming space and stored by a region manager before any modifications are made apparent by explicitly calling a damage method. In addition, since the zooming graphical user interface is implemented in a platform-independent object-oriented language, the interface is portable and modular. providing increased flexibility, efficiency and functionality.
-
Citations
19 Claims
-
1. A method of visually rendering a result of manipulation of a representation object in a zooming space, wherein said representation object is characterized by a variable defining a visual characteristic, and wherein a plurality of said representation objects are associated in parent groups of said zooming space, the method comprising the steps of:
-
obtaining snapshot data for a first representation object prior to a manipulation of said first representation object;
determining a repaint region after said manipulation of said first representation object based on a comparison of the snapshot data for the first representation object with current data for the first representation object; and
computing visible display parameters for said repaint region. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
determining whether said manipulation has resulted in a modification to the visual characteristic of said first representation object and necessitated said step of determining a repaint region and said step of computing visible display parameters.
-
-
3. The method of claim 1 further comprising the step of:
damaging said visible display parameters for said repaint region.
-
4. The method of claim 3 wherein said step of damaging is accomplished by setting a flag so that a damage method is automatically called.
-
5. The method of claim 3 wherein said step of damaging is accomplished by directly calling said damage method.
-
6. The method of claim 1 further comprising the step of:
freeing said snapshot data.
-
7. The method of claim 6 wherein said step of freeing said snapshot data comprises the step of:
resetting said snapshot data from a second state to a first state.
-
8. The method of claim 6 wherein said step of freeing said snapshot data further comprises the step of:
resetting corresponding snapshot data in each representation object associated with said parent groups of said first representation object.
-
9. The method of claim 1 further comprising the step of:
accumulating said repaint region for each of a plurality of discrete manipulations of representation objects using a region manager.
-
10. The method of claim 1 wherein said step of obtaining snapshot data comprises the steps of:
-
making a copy of said at least one variable defining at least one visual characteristic of said first representation object when said snapshot data for said first representation object is in a first state, wherein said step of making a copy alters said snapshot data from said first state to a second state;
making said snapshot data available to said parent groups of said first representation object; and
making a copy of said at least one variable defining at least one visual characteristic for each representation object associated with each said parent group when said snapshot data for each said representation object associated with each said parent group is in a first state, wherein said step of making a copy alters said snapshot data from said first state to a second state.
-
-
11. The method of claim 1 wherein said snapshot data is selected from the group comprising bounding box coordinates, minimum displayable zoom level, maximum displayable zoom level, and display layer identifier.
-
12. The method of claim 1 wherein said at least one variable defining at least one visual characteristic of said representation object is current data and wherein said step of determining a repaint region after said manipulation;
- comprises the steps of;
comparing said current data and said snapshot data to determine if said representation object has been modified; and
computing a bounding box that circumscribes an area of said zooming space when said representation object has been modified.
- comprises the steps of;
-
13. The method of claim 12 further including the steps of:
-
swapping said current data and said snapshot data prior to said step of comparing; and
re-swapping said current object data and said snapshot data after said step of computing.
-
-
14. The method of claim 1 wherein said at least one variable defining at least one visual characteristic of said representation object is current data and wherein said repaint region is a bounding box that circumscribes said first representation object as defined by both said current data and said snapshot data.
-
15. The method of claim 1 wherein said at least one variable defining at least one visual characteristic of said representation object is current data and wherein said repaint region is a bounding box defined by a smallest absolute coordinate and a largest absolute coordinate of a bounding box, wherein said absolute coordinates are contained in either said current data or said snapshot data.
-
16. A zooming engine for visually rendering a result of a manipulation of a zooming object in a zooming space, the zooming engine comprising:
-
a plurality of said zooming objects, each of said zooming objects containing visual characteristic data including snapshot data and current data, wherein each of said zooming objects is able to manipulate said visual characteristic data;
an object manager for determining the occurrence of said manipulation to one of said zooming objects and determining a display region affected by said manipulation based on a comparison of the snapshot data obtained prior to said manipulation with the current data;
a region manager for accumulating said display regions affected by a plurality of discrete manipulations and for rendering said display regions; and
a view manager for computing visible display parameters for said display regions and rendering said display parameters in a visible display area, interfacing said object manager and said region manager. - View Dependent Claims (17, 18, 19)
an event manager responsive to user interaction for creating an event to notify said zooming objects and said object manager of said manipulation.
-
-
19. The zooming engine of claim 18 wherein said visual characteristic data of one of said zooming objects is altered from a first state to a second state in response to said event.
Specification