IP Library Granted Patent US 6,853,375
Granted Patent B2
US 6,853,375 · App. 09/852,924 · Granted Feb 8, 2005

Method for preemptive screen rendering

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 6,853,375
App. No.
09/852,924
Granted
Feb 8, 2005
Kind
B2
Abstract

A method of rendering screen of a computer display device under conditions requiring frequent repainting of the screen is disclosed. The display is a part of a computer system running an application under control of an operating system. The application detects the onset of conditions requiring frequent repainting of the screen by checking messages sent by the operating system to the application's message queue. The application then starts the repainting of the screen based on the information retrieved from the queue while checking periodically the message queue to see if the originally detected conditions still apply. If this is the case, the application terminates the original repainting operation and starts a new repainting operation based on the updated information retrieved from the message queue. This cycle is repeated until it is determined that the originally detected conditions no longer apply, in which case a final complete repaint of the screen takes place. The method is particularly useful for the display of a graphically complex scene during a navigation operation, such as panning or zooming, when complete repainting of the scene as the navigation progresses fails to provide to the user an acceptable visual feedback of the navigation progress.

Claims (36)

1. A method of rendering a screen of a computer display device under conditions requiring frequent repainting of the screen, the display device being a part of a computer system running a graphic visualization application under control of an operating system, the method comprising the steps of:

a. detecting the onset of conditions requiring frequent repainting of the screen;

b. obtaining from the operating system information necessary for repainting;

c. partly repainting the screen by rendering a predetermined number of objects of a scene graph;

d. checking whether the conditions of step a. still apply; and

e. repeating steps b. through d. until the conditions of step a. no longer apply,

the steps a., b., and d. being carried out based on messages sent by the operating system to the application's message queue, the screen displaying a graphically complex visualization scene represented in the computer system as the scene graph.

2. A method according to claim 1 , wherein step c. is repeated and more objects are added to the scene if in step d. no navigation-related message is found in the message queue.

3. A method according to claim 2 , wherein the screen is repainted in the order of traversing the scene graph.

4. A method according to claim 1 , wherein the operating system is MS Windows operating system.

5. A method according to claim 1 , wherein the conditions requiring frequent repainting of the screen are a result of a navigation operation initiated by an application user.

6. A method to claim 5 , wherein the scene is navigated with an input device.

7. A method according to claim 6 wherein the input device is a mouse or a keyboard.

8. A method according to claim 5 , wherein the navigation operation is selected from the group consisting of panning, rotating and zooming.

9. A computer based system for rendering on a screen of a computer display device under conditions requiring frequent repainting of the screen, the computer based system running a graphic visualization application under control of an operating system, the computer based system comprising:

a. module for detecting the onset of conditions requiring frequent repainting of the screen;

b. module for obtaining from the operating system information necessary for repainting;

c. module for partly repainting the screen by rendering a predetermined number of objects of scene graph;

d. module for determining whether the conditions still apply, the obtaining module, the repainting module and the determining module repeatedly operating while the conditions are apply,

the detecting module, the obtaining module and the determining module being operated based on messages sent by the operating system to the application's message queue, the screen displaying a graphically complex visualization scene represented in the computer based system as a scene graph.

10. A computer based system according to claim 9 , wherein the repainting module includes module for allowing more objects to be added to the scene when no navigation-related message is found in the message queue.

11. A computer based system according to claim 10 , wherein the repainting module ensures that the screen is repainted in the order of traversing the scene graph.

12. A computer based system according to claim 9 , wherein the operating system is MS Windows operating system.

13. A computer based system 9 , wherein the conditions requiring frequent repainting of the screen are operatively coupled to a navigation operation initiated by an application user.

14. A computer based system according to claim 13 , wherein the navigation operation is provided by an input device that accepts inputs from the application user.

15. A computer based system according to claim 13 , wherein the navigation operation is selected from the group of consisting of panning, rotating and zooming.

16. A computer storage medium storing computer readable code embodied therein for rendering a screen of a computer display device under conditions requiring frequent repainting of the screen, the display device being a part of a computer system running a graphic visualization application under control of an operating system, comprising:

a. code for detecting the onset of conditions requiring frequent repainting of the screen;

b. code for obtaining from the operating system information necessary for repainting;

c. module for partly repainting the screen by rendering a predetermined number of objects of scene graph;

d. code for checking whether conditions of step a. still apply; and

e. code for repeating the codes b. through d. until the conditions of the code a. no longer apply,

the codes a., b., and d. being carried out based on messages sent by the operating system to the application's message queue, the screen displaying a graphically complex visualization scene represented in the computer system as the scene graph.

17. A computer storage medium according to claim 16 , wherein the code c includes code for allowing more objects to be added to the scene when no navigation-related message is found in the message queue.

18. A computer storage medium according to claim 16 , wherein the code c includes code for partly repainting the screen in the order of traversing the scene graph.

19. A computer based system according to claim 16 , wherein the code c detects the onset of a result of a navigation operation initiated by an application user.

Assignments (7)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 29, 2020
From: DAEDALUS GROUP, LLC
To: DAEDALUS BLUE LLC
Reel/Frame 051737/0191 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 27, 2020
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: DAEDALUS GROUP, LLC
Reel/Frame 051710/0445 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 14, 2019
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: DAEDALUS GROUP LLC
Reel/Frame 051032/0784 →
CERTIFICATE OF AMALGAMATION Recorded Aug 15, 2008
From: COGNOS INCORPORATED
To: COGNOS ULC
Reel/Frame 021387/0813 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 15, 2008
From: COGNOS ULC
To: IBM INTERNATIONAL GROUP BV
Reel/Frame 021387/0837 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 15, 2008
From: IBM INTERNATIONAL GROUP BV
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 021398/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 23, 2004
From: JOU, STEPHAN F.; CAMPBELL, DON; BALLANTYNE, IAN
To: COGNOS INCORPORATED
Reel/Frame 015495/0450 →