|
|
|
| United States Patent | 6052130 |
| Link to this page | http://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) |
| Abstract | A 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  |
|
|
|
|
|
Drawing from US Patent 6052130 |
|
|
Data processing system and method for scaling a realistic object on a
user interface |
|
|
|
|
|
| Publication Date |
April 18, 2000 |
|
|
|
|
|
| Filing Date |
November 20, 1996 |
|
|
|
|
|
|
|
|
|
|
|
| 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. |
|
|
|
|
|
|
|
|
|
|
|
|
|
Title Information  |
|
|
Description  |
|
|
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 | | |