WikiPatents - Community Patent Review
Create Free Account  |  License or Sell Your Patent  |  WikiPatents Marketplace  |  WikiPatents Blog
Username:  Password:  
    
Advanced Search
Data processing system and method for scaling a realistic object on a user interface    
United States Patent6052130   
Link to this pagehttp://www.wikipatents.com/6052130.html
Inventor(s)Bardon; Didier Daniel (Austin, TX); Burton; Denise Marie (Austin, TX); Isensee; Scott Harlan (Georgetown, TX); Morgan; Scott Anthony (Austin, TX); Mullaly; John Martin (Austin, TX); Swearingen; Craig Ardner (Austin, TX)
AbstractA data processing system, software program, and method scale the contents of a window or similar display area in unison and in proportion. During operation, all of the contained control, text, and images included in the window are scaled proportionately so that a user is still able to use the displayed object and the displayed object retains its characteristic image. Composite images of realistically-rendered objects are resized and moved in a manner which is dependent upon a common non-changing representation of a container and a contained object displayed on a display device. When the common non-changing representation is modified by resizing, a scaling operation is performed on the composite image as a whole. However, when the representation of a contained object is modified and the common non-changing representation is no longer displayed, a region of a contained object is "clipped out" from the container before the image is displayed. The contained object is then allowed to display its image as is required in light of the movement and resizing operations desired by the user.
   














 Title Information Submit all comments and votes
 
Patent Text Patent PDF Print Page Summary File History
Plain text PDF images Print Summary File History
Drawing from US Patent 6052130
Data processing system and method for scaling a realistic object on a

     user interface - US Patent 6052130 Drawing
Data processing system and method for scaling a realistic object on a user interface
Inventor     Bardon; Didier Daniel (Austin, TX); Burton; Denise Marie (Austin, TX); Isensee; Scott Harlan (Georgetown, TX); Morgan; Scott Anthony (Austin, TX); Mullaly; John Martin (Austin, TX); Swearingen; Craig Ardner (Austin, TX)
Owner/Assignee     International Business Machines Corporation (Armonk, NY)
Patent assignment
All assignments
Publication Date     April 18, 2000
Application Number     08/753,124
PAIR File History     Application Data   Transaction History
Image File Wrapper   Patent Term   Fees
Litigation
Filing Date     November 20, 1996
US Classification    
Int'l Classification    
Examiner     Jankus; Almis R.
Assistant Examiner    
Attorney/Law Firm     England; Anthony V. Winstead Sechrest & Minick P.C. S.
Address
Parent Case     CROSS-REFERENCE TO RELATED APPLICATIONS The present application is related to the following applications: Ser. No. 08/753,081, entitled "CREATING REAL-WORLD OBJECTS" (Attorney Docket No. AT9-96-204) pending; Ser. No. 08/753,082, entitled "DATA PROCESSING SYSTEM AND METHOD FOR CONTROLLING A VIEW OF A REALISTIC OBJECT IN A DISPLAY DEVICE" (Attorney Docket No. AT9-96-212) pending; Ser. No. 08/753,077, entitled "PRIORITIZATION OF BACKGROUND DISPLAY DURING ANIMATION" (Attorney Docket No. AT9-96-213) now U.S. Pat. No. 5,920,325; Ser. No. 08/753,122, entitled "MULTIFUNCTIONAL OBJECT" (Attorney Docket No. AT9-96-214) now U.S. Pat. No. 5,815,153; Ser. No. 08/753,076, entitled "SYSTEM AND METHOD FOR MAINTAINING SIZE AND POSITION RELATIONSHIPS FOR NON-RECTANGULAR REAL WORLD OBJECTS" (Attorney Docket No. AT9-96-237) now abandoned; Ser. No. 08/753,078, entitled "DATA PROCESSING SYSTEM AND METHOD FOR VIEWING OBJECTS ON A USER INTERFACE" (Attorney Docket No. AT9-96-241) now U.S. Pat. No. 5,877,763; Ser. No. 08/753,079, entitled "DATA PROCESSING SYSTEM AND METHOD FOR PERFORMING AUTOMATIC ACTIONS IN A GRAPHICAL USER INTERFACE" (Attorney Docket No. AT9-96-242) pending; and Ser. No. 08/753,123, entitled "DATA PROCESSING SYSTEM AND METHOD FOR MODIFYING A SIZE OF A REALISTIC OBJECT ON A USER INTERFACE" (Attorney Docket No. AT9-96-246) pending. All of the above applications are being filed on the same date as the present application and assigned to the assignee of the present application.
Priority Data    
USPTO Field of Search    
Patent Tags     data processing scaling realistic object a user interface
   
Enter a comma (,) or semicolon (;) between multiple tag words/phrases.
Describe this patent:
 Amusing   
 Clever   
 Complex   
 Efficient   
 Historic   
 Important   
 Innovative   
 Interesting   
 Practical   
 Simple   
[no votes]
Patent WIKI

Share information and news about this patent, including information and news about the technology, inventors, company, ligation and licensing.

 References Submit all comments and votes
 
*references marked with an asterisk below are user-added references
 U.S. References
 
Add a new US reference:  
ReferenceRelevancyCommentsReferenceRelevancyComments
5734597
Molnar
708/112
Mar,1998

[0 after 0 votes]
5550967
Brewer
715/709
Aug,1996

[0 after 0 votes]
5544302
Nguyen
715/837
Aug,1996

[0 after 0 votes]
5526478
Russell, Jr.
715/512
Jun,1996

[0 after 0 votes]
5524199
Orton
715/790
Jun,1996

[0 after 0 votes]
5522025
Rosenstein
715/807
May,1996

[0 after 0 votes]
5517578
Altman
382/181
May,1996

[0 after 0 votes]
5499334
Staab
715/778
Mar,1996

[0 after 0 votes]
5491781
Gasperina
715/786
Feb,1996

[0 after 0 votes]
5487143
Southgate
715/790
Jan,1996

[0 after 0 votes]
5485569
Goldman

Jan,1996

[0 after 0 votes]
5479603
Stone
715/804
Dec,1995

[0 after 0 votes]
5455689
Taylor
358/450
Oct,1995

[0 after 0 votes]
5388202
Squires
715/800
Feb,1995

[0 after 0 votes]
5375165
Haber
379/110.01
Dec,1994

[0 after 0 votes]
5355447
Knowlton
345/670
Oct,1994

[0 after 0 votes]
5347295
Agulnick
345/156
Sep,1994

[0 after 0 votes]
5335323
Kolnick

Aug,1994

[0 after 0 votes]
5295243
Robertson

Mar,1994

[0 after 0 votes]
5276785
Mackinlay
345/427
Jan,1994

[0 after 0 votes]
5261044
Dev
715/855
Nov,1993

[0 after 0 votes]
5113517
Beard
703/23
May,1992

[0 after 0 votes]
5060135
Levine
715/769
Oct,1991

[0 after 0 votes]
4939507
Beard
345/156
Jul,1990

[0 after 0 votes]
4899136
Beard
345/156
Feb,1990

[0 after 0 votes]
4868765
Diefendorff
715/797
Sep,1989

[0 after 0 votes]
 Foreign References
 Other References
 Market Review Submit all comments and votes
   
Market Size
Estimate the gross annual revenues of the relevant market sector:
> $10B
$5B - $10B
$2B - $5B
$500M - $2B
$100M - $500M
$10M - $100M
$1M - $10M
$500K - $1M
$100K - $500K
< $100K
[No votes]
$0
 
$0   $2.5B   $5B   $7.5B   $10B
Market Share
Estimate the percentage of the relevant market sector this invention will capture:
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Reasonable Royalty
What percentage of gross sales should the inventor or assignee be paid?
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Public's "Guesstimation" of Royalty Value
Market SizeN/A[No votes]
xMarket ShareN/A[No votes]
xReasonable RoyaltyN/A[No votes]

N/A

License Availablity
If you are NOT the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
License Availablity
If you ARE the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
Competitive Advantage
Does this invention have a significant competitive advantage over similar technologies?
Yes

No



[No votes]
Most helpful competitive advantage comment
[No comments]

Commercial Alternatives
Are there viable commercial alternatives for this invention?
Yes

No



[No votes]
Most helpful commercial alternative comment
[No comments]

 Technical Review Submit all comments and votes
 Claims Submit all comments and votes
 


What is claimed is:

1. A data processing system, comprising:

a display device for displaying a composite image having a container object and a contained object, wherein the composite image is in a non-changing state when the contained object is in a first state and the composite image is in a changing state when the contained object is in a second state:

a user interface for receiving a plurality of control inputs for controlling an appearance of the composite image displayed by the display device; and

a data processor, comprising a central processing unit, wherein the central processing unit is coupled to the user interface for receiving the plurality of control inputs and coupled to the display device to provide a plurality of control signals for scaling the container object and the contained object concurrently when the contained object is in the first state, and for scaling the container object and the contained object consecutively when the contained object is in the second state.

2. The data processing system of claim 1 wherein the plurality of object control signals scale the composite image by modifying a size of the composite image.

3. The data processing system of claim 2 wherein the appearance of an container and an appearance of the contained object are proportionally modified.

4. The data processing system of claim 1 wherein the contained object is in the first state when the contained object is inaccessible for providing a data value.

5. The data processing system of claim 1 wherein the contained object is in the second state when the contained object is currently accessible for providing a stored data value.

6. The data processor of claim 1 wherein the contained object is depicted within the container object displayed on the display device.

7. The data processor of claim 1 wherein the contained object is integral to the container object displayed on the display device.

8. The data processing system of claim 1 wherein an image of said contained object in said second state and an image of said container object are non-overlapping.

9. A method for operating a data processing system, comprising the steps of:

displaying a container object and a contained object on a display device;

receiving a plurality of control inputs from the user interface for controlling an appearance of the container object display by the display device;

scaling the container object in response to the plurality of control inputs to generate a scaled container object; and

scaling the contained object in response to the plurality of control inputs to generate a scaled contained object wherein the steps of scaling the container object and contained object are concurrent when the contained object is in a first state and consecutive when the contained object is in a second state.

10. The method of claim 9, further comprising the step of: providing a scale message from the container object to the contained object.

11. The method of claim 10 wherein the scale message results in the contained object being scaled in proportion to the scaled container object.

12. The method of claim 9 wherein the contained object is depicted within the container object displayed on the display device.

13. The method of claim 9 wherein the contained object is integral to the container object displayed on the display device.

14. The method of claim 9 wherein an image of said contained object in said second state and an image of said container object are non-overlapping.

15. A method for operating a data processing system, comprising the steps of:

displaying a container object which comprises a contained object in one of a first state and a second state on a display device;

receiving a plurality of control inputs from a user interface for controlling an appearance of the container object displayed by the display device;

scaling the container object and the contained object concurrently when the contained object is in the first state; and

scaling the container object and the contained object consecutively when the contained object is in the second state.

16. The method of claim 15 wherein the contained object is scaled proportionally to the scaled container object.

17. The method of claim 15 wherein the contained object is a text object.

18. The method of claim 15 wherein the contained object is a function object.

19. The method of claim 15 wherein the contained object is in the first state when the contained object is inaccessible for providing a data value.

20. The method of claim 15 wherein the contained object is in the second state when the contained object is currently accessible for providing a stored data value.

21. The method of claim 15 wherein an image of said contained object in said second state and an image of said container object are non-overlapping.

22. A computer program stored on a storage media, for scaling an object on a display device, the computer program comprising the steps of:

enabling the display device to display a container object which comprises a contained object in one of a first state and a second state;

receiving a plurality of control inputs from a user interface for controlling an appearance of the container object displayed by the display device;

scaling the container object and the contained object concurrently when the contained object is in the first state; and

scaling the container object and the contained object consecutively when the contained object is in the second state.

23. The computer program product of claim 22 wherein an image of said contained object in said second state and an image of said container object are non-overlapping.

24. The computer program of claim 22 wherein the contained object is a text object.

25. The computer program of claim 22 wherein the contained object is a function object.

26. The computer program of claim 22 wherein the computer program includes the step of providing a scale message from the container object to the contained object.

27. The computer program product of claim 26 wherein the scale message results in the contained object being scaled in proportion to the scaled container object.

28. The computer program of claim 22 wherein the contained object is integral to the container object displayed on the display device.
 Description Submit all comments and votes
 


TECHNICAL FIELD

The present invention relates in general to data processing systems, and in particular, to the presentation and resizing of objects on a user interface to a data processing system.

BACKGROUND INFORMATION

As computers have developed to provide greater capabilities at greater speeds, the ability of a user to interface with that computer has also become much simpler. For example, icons provide a pictorial representation of a function which may be executed by a computer and allow a user to easily access that function with the simple click of a mouse or a stroke of a return key. Additionally, many current software programs use realistic representations of objects to take advantage of a user's experience with the physical world. Therefore, rather than present the user with a series of panels and window frames or pull-down menus, a software program for implementing an application may present a realistically-rendered object which is placed directly on a desktop or other environment.

While such realistic representations enable a user to more easily interface with the computer, the applications which implement the realistically-rendered objects introduce several problems. For example, the ability to resize the object adds additional challenges for designers of the user interface of a computer system. Traditional applications of such objects provide resizing capabilities by allowing the user to drag the edges of a graphical object or the border of a window. An example of such a window is illustrated in display device 100 of FIG. 1. The window is labeled 102. As is illustrated in FIG. 1, windows in prior art graphical user interfaces (G.U.I.) scale in a non-linear fashion. Stated another way, when the user scales a border of the window 102, the contents do not scale and are clipped or scrolled out of view. As is illustrated in FIG. 1, when window 102 is scaled to a smaller size, a type of application illustrated in window 102 is clipped and a user does not have access to all of the data. Additionally, as may be seen by scroll bars 104 and 106, other data is available for observation, but a user must scroll up or down to access the appropriate information. Furthermore, in the prior art implementation illustrated in FIG. 1, a user must scroll in both a horizontal and a vertical direction to access all of the data included in the window. Such clipping and required scrolling activities disrupt both the function and aesthetic layout of the window of the user interface.

As well, it should be noted that in some applications, a user is not able to even resize a window at all. Such an application is illustrated in the prior art user interface of FIG. 2. FIG. 2 provides a window 202 which does not allow a user to resize it according to a user's requirements. Therefore, a user is required to interface with an inflexible graphical user interface.

While the methodologies described above are used universally and allow a user to modify a window size in a non-linear manner, the use of a window-type environment which is non-linear fails to create a functional and aesthetic layout for use in the graphical user interface. Therefore, it is desirable to take advantage of a computer's capabilities for modifying graphical representations without requiring a user to modify their mental model of such objects. For this reason, a data processing system and method should be developed to interact with a user and to provide controls which fit plausibly into a model of the object being represented to the user on the user interface.

SUMMARY OF THE INVENTION

The previously mentioned needs are fulfilled with the present invention. Accordingly, there is provided, in a first form, a data processing system. The data processing system includes a display device for displaying a composite image having a container object and a contained object, wherein the composite image is in a non-changing state when the contained object is in a first state and the composite image is in a changing state when the contained object is in a second state. The data processing system also includes a user interface for receiving a plurality of control inputs for controlling an appearance of the composite image displayed by the display device. The data processing system also includes a central processing unit which is connected to the user interface for receiving the plurality of control inputs and is connected to the display device to provide a plurality of object control signals for selectively modifying an appearance of the container object and an appearance of the contained object concurrently when the contained object is in the first state and for selectively modifying the appearance of the container object and the appearance of the contained object consecutively when the contained object is in the second state.

There is provided, in a second form, a method for operating a data processing system. In the method, a container object and a contained object are displayed on a display device. A plurality of control inputs are received from a user interface for controlling an appearance of the container object displayed by the display device. The container object is scaled in response to the plurality of control inputs to generate a scaled container object. The contained object is scaled in response to the plurality of control inputs to generate a scaled contained object.

There is provided, in a third form, a method for operating a data processing system. A container object which includes a contained object is displayed in one of a first state and a second state on a display device. A plurality of control inputs is received from a user interface for controlling an appearance of the container object displayed by the display device. An appearance of the container object and the contained object are modified concurrently when the contained object is in the first state. The appearance of the container object and the contained object are modified consecutively when the contained object is in the first state.

The foregoing has outlined rather broadly the features and technical advantages of the present invention in order that the detailed description of the invention that follows may be better understood. Additional features and advantages of the invention will be described hereinafter which form the subject of the claims of the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of the present invention, and the advantages thereof, reference is now made to the following descriptions taken in conjunction with the accompanying drawings, in which:

FIG. 1 illustrates, in block diagram form, a display device in accordance with a prior art implementation;

FIG. 2 illustrates, in block diagram form, a display device in accordance with a prior art implementation;

FIG. 3 illustrates, in block diagram form, a data processing system in accordance with one embodiment of the present invention;

FIG. 4 illustrates, in block diagram form, a display device in accordance with one embodiment of the present invention;

FIG. 5 illustrates, in block diagram form, a display device in accordance with one embodiment of the present invention;

FIG. 6 illustrates, in flow diagram form, a methodology for proportionally scaling a realistically-rendered object in accordance with one embodiment of the present invention;

FIG. 7-A illustrates, in flow diagram form, a methodology for scaling an object within a realistically-rendered object in accordance with one embodiment of the present invention; and

FIG. 7-B illustrates, in flow diagram form, a remaining portion of the method implemented in FIG. 7-A.

DETAILED DESCRIPTION

The present invention provides a data processing system, software program, and method for scaling the contents of a window or a similar display area in unison and in proportion. In the present embodiment of the invention, all of the contained controls, text, and images are scaled proportionally so that a user is still able to use the displayed object and the displayed object retains its characteristic image.

Furthermore, in the present invention, a data processing system, software program, and method for resizing and moving composite images of realistically-rendered objects are provided. A composite image generally includes a container and a contained object which are represented in a common non-changing representation. In the present invention, when the common non-changing representation is modified by resizing, a scaling operation is performed on the composite image as a whole. However, when the representation of the contained object is modified and the common non-changing representation is no longer displayed, the present invention provides a methodology for "clipping out" a region of the contained object from the container before displaying its image. The contained object is then allowed to display its image as is required in light of the movement and resizing operations desired by a user. The operation and implementation of the present invention will subsequently be described in greater detail.

In the following description, numerous specific details are set forth to provide a thorough understanding of the present invention. However, it will be obvious to those skilled in the art that the present invention may be practiced without such specific details. In other instances, well-known circuits have been shown in block diagram form in order not to obscure the present invention in unnecessary detail. For the most part, details concerning timing considerations and the like have been omitted inasmuch as such details are not necessary to obtain a complete understanding of the present invention and are within the skills of persons of ordinary skill in the relevant art.

Refer now to the drawings wherein depicted elements are not necessarily shown to scale and wherein like or similar elements are designated by the same reference numeral through the several views.

A representative hardware environment for practicing the present invention is depicted in FIG. 3, which illustrates a typical hardware configuration of a workstation in accordance with the subject invention having central processing unit (CPU) 310, such as a conventional microprocessor, and a number of other units interconnected via system bus 312. The workstation shown in FIG. 3 includes random access memory (RAM) 314, read only memory (ROM) 316, and input/output (I/O) adapter 318 for connecting peripheral devices such as disk units 320 and tape drives 340 to bus 312, user interface adapter 322 for connecting keyboard 324, mouse 326, speaker 328, microphone 332, and/or other user interface devices such as a touch screen device (not shown) to bus 312, communication adapter 334 for connecting the workstation to a data processing network, and display adapter 336 for connecting bus 312 to display device 338. CPU 310 may include other circuitry not shown herein, which will include circuitry commonly found within a microprocessor, e.g., execution unit, bus interface unit, arithmetic logic unit, etc. CPU 310 may also reside on a single integrated circuit.

An embodiment of the present invention is illustrated in FIG. 3. In this embodiment, assume a software program which implements the present invention is stored in either ROM 316 or RAM 314 and execution of this software program is controlled by CPU 310. By accessing the software program in either ROM 316 or RAM 314, a real-world object is displayed to the user on display device 338. In the following description of the invention, the real-world object which will be discussed is a telephone. However, it should be noted that the present invention may be expanded to apply to other real-world objects, not described in detail herein. Examples of such other real-world objects include, but are not limited to, desks, file cabinets, personal digital assistants, and calculators.

Referring to FIG. 4, the realistically-rendered telephone of the present invention is illustrated as it appears on display device 338. Telephone 400 comprises a message interface 404, a help interface 406, a plurality of number selectors 408, a plurality of function selectors 410, a pull-down drawer 412, a plurality of programmable numbers 414, a handset 416, a volume controller 418, and a view selector 420. Furthermore, as illustrated on display device 338, a cursor 402 is provided. Note that cursor 402 appears as a double-pointed diagonal arrow positioned at the edge of telephone 400. When cursor 402 is in another portion of display device 338, cursor 402 appears as a straight arrow having one pointed end.

Control of cursor 402 is provided from a user interface such as keyboard 324, mouse 326, or microphone 332. The input signals provided to one of the aforementioned user interfaces is provided to user interface adapter 322 and subsequently processed by CPU 310 using programs stored in either of ROM 316 or RAM 314. Such control is well-known to those with skill in the data processing art and will not be described in greater detail herein.

To use phone 400 of the present invention, the user is able to emulate real life actions by moving cursor 402 to the receiver and enabling it in an appropriate manner. For example, as mouse 326 is used to control cursor 402, a user would be required to move cursor 402 to handset 416 and click thereon. If keyboard 324 is being used to control cursor 402, pressing the "enter" key will enable telephone 400 to answer an incoming call. Additionally, pressing "delete" will enable a user to terminate a call by hanging up. Each of the plurality of programmable numbers 414 is used to store a telephone number which may be called after handset 416 is "picked up."

If a user desires only to dial one of the programmed numbers, selector 420 may be switched to hide the plurality of number selectors 408. During the telephone call, message interface 404 displays call information and volume controller 418 may be moved to set a volume level for the telephone conversation. If a user desires to change a size of telephone 400, a user must first move their cursor to an edge of telephone 400 where the cursor (402) is configured as a diagonal arrow with pointers at both ends. This special form of a cursor, such as illustrated by cursor 402, indicates that a user is on a boundary of an object when that object is not included in a window or rounded by a special box as is done in prior art implementations.

After cursor 402 is placed on the edge of telephone 400, telephone 400 may be sized according to a user's preference. When cursor 402 is placed at the edge of telephone 400 and engaged to resize telephone 400 by clicking on a mouse or typing on a keyboard, telephone 400 becomes anchored at the farthest point from a quadrant in which cursor 402 is located. After cursor 402 has been placed over any edge of telephone 400, cursor 402 may be dragged either inward or outward to stretch or shrink telephone 400 while maintaining its proper proportions. The sizing is affected by dragging cursor 402 inward or outward modifies both the vertical and the horizontal dimensions of telephone 400 in a proportional manner. A typical manner in which an object is sized is described in Object-Oriented Interface Design, IBM Common User Access Guidelines, First Edition, published by QUE Corporation in December 1992, which is hereby incorporated by reference.

It has been noted that telephone 400 includes pull-down drawer 412. An example of a realistically-rendered telephone which has an open pull-down drawer is illustrated in FIG. 5. The open drawer is refer