WO2001011465A2 - Property editor with child property sets - Google Patents

Property editor with child property sets Download PDF

Info

Publication number
WO2001011465A2
WO2001011465A2 PCT/US2000/021521 US0021521W WO0111465A2 WO 2001011465 A2 WO2001011465 A2 WO 2001011465A2 US 0021521 W US0021521 W US 0021521W WO 0111465 A2 WO0111465 A2 WO 0111465A2
Authority
WO
WIPO (PCT)
Prior art keywords
pset
psets
child
parent
editing
Prior art date
Application number
PCT/US2000/021521
Other languages
French (fr)
Other versions
WO2001011465A3 (en
Inventor
Michael C. Sheasby
Sylvain Moreau
Daniel Desbois
Marc P. Stevens
Jean-Claude Bouchard
Original Assignee
Avid Technology, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Avid Technology, Inc. filed Critical Avid Technology, Inc.
Priority to AU64011/00A priority Critical patent/AU6401100A/en
Publication of WO2001011465A2 publication Critical patent/WO2001011465A2/en
Publication of WO2001011465A3 publication Critical patent/WO2001011465A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Definitions

  • the present invention relates particularly to a property editor in a graphics imaging system for producing a time-based multimedia presentation, and more particularly to a property editor for a graphics imaging system that extracts hierarchical information from a Parameter Set data structure having multiple child PSets and displays it so that multiple child PSets are editable without having to navigate between a property editor and a view of the PSets
  • systems for authoring time-based material have been employed to control the presentation of the material. These systems include the control of such diverse media as content on the Internet, a fireworks display, a light show, video or animation.
  • Animation is one example time-based material. Animation is useful for generating entertainment multi-media and programs for professional purposes such as training materials. These applications are authored to produce the finished imaging work, which typically involves controlling specific objects through a sequence of scenes or settings to present a movement in the object during the time span.
  • the objects that are controlled by authoring are represented in the memory of the computer system or a disk through a data construct termed a "PSet", a Parameter Set, which contains parameter values or pointers to parameter values for properties associated with the object.
  • a PSet is hierarchical in structure, and thus can contain other lower level or 'child' PSets within it.
  • an object such as a "style” that defines the attributes of a brush stroke applied to a surface in a graphics session can be defined as a top-level PSet that includes lower level PSets such a "brush” and "fill effect” within it.
  • These lower level PSets in this hierarchical structure are considered the children of the top level PSet, style.
  • a reference to the lower-level PSets, "brush” and "fill effect” is implicit.
  • PSets can be generated as basic units that correspond to a specific object, and more complex PSets can thus be generated from these basic PSets.
  • PSets can be constructed from other PSets, it is typical for a basic PSet that implements a fundamental function such as a "brush" object to be used in a number of other PSets.
  • the parameter values referenced by a PSet includes a construct termed a "key", which matches a parameter value to a certain point in time.
  • keys are used by the animator to generate a mathematical curve that in some way represents the motion associated with the animation. These curves can be displayed visually using a viewer, which plots the value of the parameter with respect to time.
  • the editor must determine which PSet does the user wish to view for editing.
  • 'Launcher' windows interrogate objects for the structure of their PSets, and represent this structure in some way to the user (not necessarily retaining the hierarchical structure) to allow the user to specify which of the child PSets/objects/etc the user wants to edit.
  • the appropriate editor is then invoked. Since the launcher and editor are not integrated, the user has to divert his attention from the launcher to the editor in order to control his pointing device or mouse each time he wishes to view a new PSet.
  • the present invention provides for a method for editing a hierarchical structure of PSets by a property editor executable on a computer system.
  • the PSet consists of a parent PSet and one or more child PSets.
  • the innovative method includes identifying said parent PSet for editing by said property editor; determining the hierarchical structure of said parent PSet to identify said one or more child PSets of said parent PSet, including children of children at different levels of the hierarchy; displaying tabs and editing parameters from said identified child PSets.
  • the display of child PSets in a specified level of the hierarchy by the property editor is determined by a toggle switch that is selectable by the user.
  • certain child PSets are marked as exposed and thus the parameters and tabs of these child Psets are not presented for display.
  • FIG. 1 is a drawing of a computer system suitable for implementing a system for editing PSets, according to the present invention.
  • FIG. 2 depicts the hardware components of the computer system of FIG. 1 in further detail.
  • FIG. 3 depicts a hierarchy of PSets for the stroke object.
  • FIG. 4 depicts a schematic representation of a property editor, executable on a computer system, according to the present invention.
  • FIG. 5 depicts a flow chart of the major steps performed by the property editor, according to the present invention.
  • the present invention is described for illustrative purposes with reference to the editing of video or graphical information.
  • the invention in it broadest aspect, is applicable to applications other than video applications, and it is not intended that the scope of the invention be so limited.
  • the present invention is also applicable, but again not limited to the editing of audio data, and to media data in general.
  • a computer graphics imaging system 10 is schematically depicted in FIG. 1 and FIG. 2.
  • the graphics imaging system 10 includes a computer 11 that has a central processing unit (CPU) 12, a system bus 14, a static memory 16, a main memory 18, a mass memory 20, an alphanumeric input device 22, a pointer device 24 for manipulating a cursor and making selections of data, and a display adapter 26 for coupling control signals to a video display 28 such as a computer monitor. Since the graphics imaging system 10 is particularly suited to high resolution, high-speed graphics imaging the display or monitor 28 is most preferably a high- resolution wide screen display.
  • the CPU 12 executes imaging software described below to allow the system 10 to render high quality graphics images on the monitor 28.
  • the CPU 12 comprises a suitable processing device such as a microprocessor, for example, and may comprise a plurality of suitable processing devices.
  • the CPU 12 executes instructions stored in the static memory 16, main memory 18, and/or mass memory 20.
  • the static memory 16 may comprise read only memory (ROM) or any other suitable memory device.
  • the static memory may store, for example, a boot program for execution by CPU 12 to initialize the graphics imaging system 10.
  • the main memory 18 may comprise random access memory (RAM) or any other suitable memory device.
  • the mass memory 20 may include a hard disk device, a floppy disk, an optical disk, a flash memory device, a CDROM, a file server device or any other suitable memory device.
  • the term memory comprises a single memory device and any combination of suitable devices for the storage of data and instructions.
  • the system bus 14 provides for the transfer of digital information between the hardware devices of the graphics imaging system 10.
  • the CPU 12 also receives data over the system bus 14 that is input by a user through alphanumeric input device 22 and/or the pointer device 24.
  • the alphanumeric input device 22 may comprise a keyboard, for example, that comprises alphanumeric keys.
  • the alphanumeric input device 22 may comprise other suitable keys such as function keys for example.
  • the pointer device 24 may comprise a mouse, track-ball, and/or joystick, for example, for controlling the movement of a cursor displayed on the computer display 28.
  • the graphics imaging system 10 of FIG. 1 also includes display adapter hardware 26 that may be implemented as a circuit that interfaces with system bus 14 for facilitating rendering of images on the computer display 28.
  • the display adapter hardware 26 may, for example, be implemented with a special graphics processor printed circuit board including dedicated random access memory that helps speed the rendering of high resolution, color images on a viewing screen of the display 28.
  • the display 28 may comprise a cathode ray tube (CRT) or a liquid crystal display particularly suited for displaying graphics on its viewing screen.
  • CTR cathode ray tube
  • the invention can be implemented using high-speed graphics workstations as well as personal computers having one or more high-speed processors.
  • the graphics imaging system 10 utilizes specialized graphics software particularly suited to take advantage of the imaging hardware included in the display system 10 depicted in FIG. 1 and FIG. 2.
  • the software implements nonlinear editing, compositing, audio mixing, and graphics design suites which are used to create multimedia presentations.
  • Source material for use with such a system can be obtained from a media storage device 50 that can include videotape, film reel, and digitally recorded videodisks.
  • the source material can also be in the form of previously digitized materials stored on a computer memory 20 such as computer generated animations, graphic images or video files stored on a large capacity hard or fixed disk storage device.
  • the system 10 includes a multi-media interface 30 for converting image data into a form suitable for use by the software executing on CPU 12 and display adapter 26.
  • a representative display by the graphics software presents multiple images 52 of different resolutions.
  • An object is a self-contained collection of data structures and routines that interact with other objects. Every object can be defined to have a set of properties.
  • a set of properties is a collection of parameters termed a "PSet" for Parameter Set that describe the object.
  • an image effect object has one property set describing blur (e.g. amount of blur, affected channels, etc.) While a paint stroke has a number of properties, each of which describes a subgroup of properties about the stroke, namely, for example, brush, fill effect, edge effect, timing and transformations. Each property contains a set of parameters namely brush contains width, softness as well as other parameters. Fill effect might also consist of a stack of effects, each of which has its own properties.
  • blur e.g. amount of blur, affected channels, etc.
  • a paint stroke has a number of properties, each of which describes a subgroup of properties about the stroke, namely, for example, brush, fill effect, edge effect, timing and transformations.
  • Each property contains a set of parameters namely brush contains width, softness as well as other parameters.
  • Fill effect might also consist of a stack of effects, each of which has its own properties.
  • An example of an object simple enough to be described in a single PSet is a blur applied to a sequence of images.
  • the PSet contains parameters such as blur amount, opacity, and what R/G/B channels are affected.
  • An example of an object that requires multiple PSets in its construction is a paint stroke.
  • a certain type of strokes might have separate image effects applied to both the fill and edge of their geometries, each of which is as complex as the blur described above.
  • paint strokes also encapsulate timespans, masking, brush attributes, transformations, and other sets of parameters... each of which is complex enough in itself to justify editors in which to display the current settings.
  • PSets manageable clumps
  • Benefits of doing this include the ability to save presets for just part of a stroke (e.g. the brush with which the stroke was drawn) and to transfer these presets to other strokes (e.g. to copy the brush from stroke A to stroke B without affecting the effects applied to the fill & edge of that second stroke).
  • Stroke PSet representing the Stroke object for applying a stroke to another object.
  • the Stroke PSet is structured in a hierarchical manner such that the top-level PSet, Stroke, in includes lower level PSets.
  • a PSet is called a parent PSet if that PSet has a lower level PSet, termed a child PSet, directly under it in its hierarchy.
  • Stroke 310 is the parent PSet of two children PSets; namely "Style” 320 and "Timespan” 330. Style includes two parameters, "Use fill” and "Use brush”. Timespan also has two parameter values, namely "start” and "end”.
  • Style PSet 320 while a child PSet of Stroke 310, is itself a parent of the "Brush” 340, "Brush effect” 350, and "Fill effect”360 PSets. These PSets have their own parameter values.
  • a property editor 400 which is executable software, residing in the main memory 18 of computer system 10 as shown in FIG. 4, is provided that advantageously allows for the editing of multiple child PSets within a hierarchical PSet, in one instance of the property editor.
  • the property editor according to the present invention in response to the structure of a hierarchical PSet chain, displays on the computer display 28 of computer system 10 a user interface 410 for presenting, in a preferred embodiment, the PSet structure in a flat, horizontal presentation, so each PSet in the hierarchical chain can be selected directly for editing without leaving the editor.
  • a user interface 410 for presenting, in a preferred embodiment, the PSet structure in a flat, horizontal presentation, so each PSet in the hierarchical chain can be selected directly for editing without leaving the editor.
  • the property editor 400 displays the PSets of the Stroke PSet according to the following process as depicted in the schematic flow-chart of FIG. 5.
  • Property editor 400 is initially invoked in step 510 and identifies in step 520 a specific PSet for editing.
  • This PSet in the broadest application of the invention, is a top-level PSet having multiple child PSets in its hierarchy.
  • the hierarchy of the PSet is determined in step 530 and the lower level PSets, as shown in list 420 are identified for the top-level PSet in step 540.
  • the identified child PSets is displayed, in step 540, as selection options in a horizontal manner as shown in FIG. 4.
  • One of ordinary skill in the art will recognize that there are other ways to present the PSets in a property editor and that the scope of the invention is not limited to a horizontal presentation but rather contemplates these other approaches.
  • the PSets may be displayed as a vertical list rather than horizontally or may be displayed using graphical techniques such as a drop-down list to reduce real-estate usage.
  • a first selection of a child PSet is received, and, in step 560, the set of tabs representing the collection of parameters available from the selected child PSet is edited.
  • a second selection of a child PSet is received and in step 580 the second selected child PSet is edited without invoking a second instance of the property editor.
  • the property editor 400 includes a toggle capability for the user to toggle on/off the display of the tabs associated with the child PSets.
  • this feature allows the user to control the level of display that is presented by the editor.
  • property editor 400 recognizes the top-level object of a PSet as the root in the chain. A modification and save of a child PSet, necessarily causes a save of the top-level object also.
  • the present invention emphasizes the ability to edit a PSet consisting of one or more child PSets in a hierarchical structure through the invocation of one instance of the editor.
  • each of the PSets can be selected from the single property editor 400 without requiring the user to work with an interim view, with the concomitant mouse travel and disengaging of visual attention from the property editor to that interim view.

Abstract

The present invention provides for a method for editing a hierarchical structure of PSets by a property editor executable on a computer system. In a preferred hierarchy, the PSet consists of a parent PSet and one or more child PSets. The innovative method includes identifying said parent PSet for editing by said property editor; determining the hierarchical structure of said parent PSet to identify said one or more child PSets of said parent PSet, including children of children at different levels of the hierarchy; displaying tabs and editing parameters from said identified child PSets.

Description

PROPERTY EDITOR WITH CHILD PROPERTY SETS
RELATED APPLICATIONS
The present application is related to United States Patent Application entitled "Taxonomy of Objects and a System of Non-Modal Property Inspectors" which is incorporated by reference herein and was filed on April 4, 1997 and has common inventorship and the same assignee as the present invention.
FIELD OF THE INVENTION
The present invention relates particularly to a property editor in a graphics imaging system for producing a time-based multimedia presentation, and more particularly to a property editor for a graphics imaging system that extracts hierarchical information from a Parameter Set data structure having multiple child PSets and displays it so that multiple child PSets are editable without having to navigate between a property editor and a view of the PSets
BACKGROUND OF THE INVENTION
As a result of the increased processing power associated with new generations of computer processors, systems for authoring time-based material have been employed to control the presentation of the material. These systems include the control of such diverse media as content on the Internet, a fireworks display, a light show, video or animation.
Animation is one example time-based material. Animation is useful for generating entertainment multi-media and programs for professional purposes such as training materials. These applications are authored to produce the finished imaging work, which typically involves controlling specific objects through a sequence of scenes or settings to present a movement in the object during the time span. The objects that are controlled by authoring are represented in the memory of the computer system or a disk through a data construct termed a "PSet", a Parameter Set, which contains parameter values or pointers to parameter values for properties associated with the object. A PSet is hierarchical in structure, and thus can contain other lower level or 'child' PSets within it. For example, an object such as a "style" that defines the attributes of a brush stroke applied to a surface in a graphics session can be defined as a top-level PSet that includes lower level PSets such a "brush" and "fill effect" within it. These lower level PSets in this hierarchical structure are considered the children of the top level PSet, style. Whenever the top-level PSet "style" is referred to, a reference to the lower-level PSets, "brush" and "fill effect" is implicit. PSets can be generated as basic units that correspond to a specific object, and more complex PSets can thus be generated from these basic PSets.
Because PSets can be constructed from other PSets, it is typical for a basic PSet that implements a fundamental function such as a "brush" object to be used in a number of other PSets. The parameter values referenced by a PSet includes a construct termed a "key", which matches a parameter value to a certain point in time. Typically, keys are used by the animator to generate a mathematical curve that in some way represents the motion associated with the animation. These curves can be displayed visually using a viewer, which plots the value of the parameter with respect to time.
In the process of producing the time-based material, an author may experiment with different key settings to generate different results. Thus, parameter values and keys of individual PSets may need to be modified. In conventional authoring systems, a property editor, specific to each type of PSet, was required to modify these parameter values. To display the parameter values of a PSet in order to modify them, the user typically selects the individual PSet type through clicking on a symbol associated with that individual PSet, and the specific property editor associated with that PSet is then invoked. To change the parameter values of a different PSet within the hierarchy, the other PSet is invoked and the property editor for that PSet initiated. Because separate property editors are invoked for each PSet, it is cumbersome for a user to modify PSet values. While invoking or exposing the editor for simple objects, composed of a single PSet, can be accomplished by direct means (i.e. selecting the object and choosing the properties tag from a menu for the object), for objects composed of more than one PSet, there is an ambiguity, which must be resolved. The editor must determine which PSet does the user wish to view for editing. In general, 'Launcher' windows interrogate objects for the structure of their PSets, and represent this structure in some way to the user (not necessarily retaining the hierarchical structure) to allow the user to specify which of the child PSets/objects/etc the user wants to edit. The appropriate editor is then invoked. Since the launcher and editor are not integrated, the user has to divert his attention from the launcher to the editor in order to control his pointing device or mouse each time he wishes to view a new PSet.
Therefor it is desirable to have a single property editor that recognizes the data structure of a PSet, having included PSets therein, for modifying the parameter values associated with the PSets without requiring the cumbersome switch between the launcher and the editor.
SUMMARY OF THE INVENTION
The present invention provides for a method for editing a hierarchical structure of PSets by a property editor executable on a computer system. In a preferred hierarchy, the PSet consists of a parent PSet and one or more child PSets. The innovative method includes identifying said parent PSet for editing by said property editor; determining the hierarchical structure of said parent PSet to identify said one or more child PSets of said parent PSet, including children of children at different levels of the hierarchy; displaying tabs and editing parameters from said identified child PSets.
In one aspect of the invention, the display of child PSets in a specified level of the hierarchy by the property editor is determined by a toggle switch that is selectable by the user.
In another aspect of the invention, certain child PSets are marked as exposed and thus the parameters and tabs of these child Psets are not presented for display.
BRIEF DESCRIPTION OF THE DRAWINGS
A specific embodiment of the invention will now be described, by way of example, with reference to the accompanying drawings in which:
FIG. 1 is a drawing of a computer system suitable for implementing a system for editing PSets, according to the present invention.
FIG. 2 depicts the hardware components of the computer system of FIG. 1 in further detail.
FIG. 3 depicts a hierarchy of PSets for the stroke object.
FIG. 4 depicts a schematic representation of a property editor, executable on a computer system, according to the present invention.
FIG. 5 depicts a flow chart of the major steps performed by the property editor, according to the present invention. DETAILED DESCRIPTION
In the following discussion, the present invention is described for illustrative purposes with reference to the editing of video or graphical information. However, one of ordinary skill in the art will recognize that the invention, in it broadest aspect, is applicable to applications other than video applications, and it is not intended that the scope of the invention be so limited. For example, the present invention is also applicable, but again not limited to the editing of audio data, and to media data in general.
A computer graphics imaging system 10 is schematically depicted in FIG. 1 and FIG. 2. The graphics imaging system 10 includes a computer 11 that has a central processing unit (CPU) 12, a system bus 14, a static memory 16, a main memory 18, a mass memory 20, an alphanumeric input device 22, a pointer device 24 for manipulating a cursor and making selections of data, and a display adapter 26 for coupling control signals to a video display 28 such as a computer monitor. Since the graphics imaging system 10 is particularly suited to high resolution, high-speed graphics imaging the display or monitor 28 is most preferably a high- resolution wide screen display.
The CPU 12 executes imaging software described below to allow the system 10 to render high quality graphics images on the monitor 28. The CPU 12 comprises a suitable processing device such as a microprocessor, for example, and may comprise a plurality of suitable processing devices. The CPU 12 executes instructions stored in the static memory 16, main memory 18, and/or mass memory 20.
The static memory 16 may comprise read only memory (ROM) or any other suitable memory device. The static memory may store, for example, a boot program for execution by CPU 12 to initialize the graphics imaging system 10. The main memory 18 may comprise random access memory (RAM) or any other suitable memory device. The mass memory 20 may include a hard disk device, a floppy disk, an optical disk, a flash memory device, a CDROM, a file server device or any other suitable memory device. For this detailed description, the term memory comprises a single memory device and any combination of suitable devices for the storage of data and instructions.
The system bus 14 provides for the transfer of digital information between the hardware devices of the graphics imaging system 10. The CPU 12 also receives data over the system bus 14 that is input by a user through alphanumeric input device 22 and/or the pointer device 24. The alphanumeric input device 22 may comprise a keyboard, for example, that comprises alphanumeric keys. The alphanumeric input device 22 may comprise other suitable keys such as function keys for example. The pointer device 24 may comprise a mouse, track-ball, and/or joystick, for example, for controlling the movement of a cursor displayed on the computer display 28.
The graphics imaging system 10 of FIG. 1 also includes display adapter hardware 26 that may be implemented as a circuit that interfaces with system bus 14 for facilitating rendering of images on the computer display 28. The display adapter hardware 26 may, for example, be implemented with a special graphics processor printed circuit board including dedicated random access memory that helps speed the rendering of high resolution, color images on a viewing screen of the display 28.
The display 28 may comprise a cathode ray tube (CRT) or a liquid crystal display particularly suited for displaying graphics on its viewing screen. The invention can be implemented using high-speed graphics workstations as well as personal computers having one or more high-speed processors. The graphics imaging system 10 utilizes specialized graphics software particularly suited to take advantage of the imaging hardware included in the display system 10 depicted in FIG. 1 and FIG. 2. The software implements nonlinear editing, compositing, audio mixing, and graphics design suites which are used to create multimedia presentations. Source material for use with such a system can be obtained from a media storage device 50 that can include videotape, film reel, and digitally recorded videodisks. The source material can also be in the form of previously digitized materials stored on a computer memory 20 such as computer generated animations, graphic images or video files stored on a large capacity hard or fixed disk storage device. To utilize the storage images from the media storage 50, the system 10 includes a multi-media interface 30 for converting image data into a form suitable for use by the software executing on CPU 12 and display adapter 26. A representative display by the graphics software presents multiple images 52 of different resolutions.
Property Editors for PSets
An object is a self-contained collection of data structures and routines that interact with other objects. Every object can be defined to have a set of properties. A set of properties is a collection of parameters termed a "PSet" for Parameter Set that describe the object. Some objects are complex and have multiple property sets, while others are simple enough that each object would have only one property set.
For example, an image effect object has one property set describing blur (e.g. amount of blur, affected channels, etc.) While a paint stroke has a number of properties, each of which describes a subgroup of properties about the stroke, namely, for example, brush, fill effect, edge effect, timing and transformations. Each property contains a set of parameters namely brush contains width, softness as well as other parameters. Fill effect might also consist of a stack of effects, each of which has its own properties.
An example of an object simple enough to be described in a single PSet is a blur applied to a sequence of images. The PSet contains parameters such as blur amount, opacity, and what R/G/B channels are affected. An example of an object that requires multiple PSets in its construction is a paint stroke. A certain type of strokes might have separate image effects applied to both the fill and edge of their geometries, each of which is as complex as the blur described above. Apart from these two attributes, paint strokes also encapsulate timespans, masking, brush attributes, transformations, and other sets of parameters... each of which is complex enough in itself to justify editors in which to display the current settings. The structure of the stroke is then broken up into manageable clumps, termed PSets, in an effort to keep the representation simple. Benefits of doing this include the ability to save presets for just part of a stroke (e.g. the brush with which the stroke was drawn) and to transfer these presets to other strokes (e.g. to copy the brush from stroke A to stroke B without affecting the effects applied to the fill & edge of that second stroke).
Referring now to FIG. 3, there is shown, in graphical form, a PSet representing the Stroke object for applying a stroke to another object. The Stroke PSet is structured in a hierarchical manner such that the top-level PSet, Stroke, in includes lower level PSets. A PSet is called a parent PSet if that PSet has a lower level PSet, termed a child PSet, directly under it in its hierarchy. In FIG. 3, Stroke 310 is the parent PSet of two children PSets; namely "Style" 320 and "Timespan" 330. Style includes two parameters, "Use fill" and "Use brush". Timespan also has two parameter values, namely "start" and "end". It is pointed out that the Style PSet 320, while a child PSet of Stroke 310, is itself a parent of the "Brush" 340, "Brush effect" 350, and "Fill effect"360 PSets. These PSets have their own parameter values.
As was discussed above, conventional approaches to modifying or editing parameter values in a PSet include selecting the PSet to be edited typically by clicking on an icon that represents the PSet. A property editor is then invoked that is specific to that PSet for editing the parameter values. If another PSet within the hierarchy is to be opened, that PSet must again be selected, typically by using a pointing device 24 to invoke another instance of a property editor. One of ordinary skill in the art will recognize that there are other techniques for selecting a PSet for editing, but they fall within the two step process of first launching the PSet for editing and then invoking the appropriate editor. As was pointed out, these conventional approaches require the user to work with an interim view to select the proper PSet for editing, with the concomitant mouse travel and disengaging of visual attention from the property editor to that interim view.
In one embodiment of the invention, a property editor 400, which is executable software, residing in the main memory 18 of computer system 10 as shown in FIG. 4, is provided that advantageously allows for the editing of multiple child PSets within a hierarchical PSet, in one instance of the property editor. The property editor according to the present invention, in response to the structure of a hierarchical PSet chain, displays on the computer display 28 of computer system 10 a user interface 410 for presenting, in a preferred embodiment, the PSet structure in a flat, horizontal presentation, so each PSet in the hierarchical chain can be selected directly for editing without leaving the editor. However, one of ordinary skill in the art will recognize that other presentation arrangements are possible and within the scope of the invention. For example, an editor resized to be narrow might require multiple rows of PSet tabs. Continuing to refer to the Stroke PSet of FIG. 3 and its associated child PSets, the property editor 400, according to the present invention, displays the PSets of the Stroke PSet according to the following process as depicted in the schematic flow-chart of FIG. 5.
Property editor 400 is initially invoked in step 510 and identifies in step 520 a specific PSet for editing. This PSet, in the broadest application of the invention, is a top-level PSet having multiple child PSets in its hierarchy. The hierarchy of the PSet is determined in step 530 and the lower level PSets, as shown in list 420 are identified for the top-level PSet in step 540. The identified child PSets is displayed, in step 540, as selection options in a horizontal manner as shown in FIG. 4. One of ordinary skill in the art will recognize that there are other ways to present the PSets in a property editor and that the scope of the invention is not limited to a horizontal presentation but rather contemplates these other approaches. For example, the PSets may be displayed as a vertical list rather than horizontally or may be displayed using graphical techniques such as a drop-down list to reduce real-estate usage. In step 550, a first selection of a child PSet is received, and, in step 560, the set of tabs representing the collection of parameters available from the selected child PSet is edited. In step 570, a second selection of a child PSet is received and in step 580 the second selected child PSet is edited without invoking a second instance of the property editor.
In a further embodiment of the invention, the property editor 400 includes a toggle capability for the user to toggle on/off the display of the tabs associated with the child PSets. Advantageously, this feature allows the user to control the level of display that is presented by the editor. In a yet further embodiment of the invention, property editor 400 recognizes the top-level object of a PSet as the root in the chain. A modification and save of a child PSet, necessarily causes a save of the top-level object also.
The 'parameter hierarchy' mechanism described in the United States Patent Application entitled "PSET and OBJECT HIERARCHY" filed on the same date as the current application, having common inventorship and the same assignee as the present application, is hereby incorporated by reference herein. The relationships described in that application between a parent PSet and a child PSet determine which children PSets will receive animation keys or be saved in presets. The following relationships may be exposed.
Relationship to WiiMll Λ parent
Figure imgf000012_0001
The table below describes which types of children nodes will receive keys set on a parent node being inspected in the property editor:
Figure imgf000012_0002
The following table describes which types of children nodes will be saved as part of a preset for the parent node if the user saves a preset for that parent node in the property editor:
Figure imgf000013_0001
The present invention emphasizes the ability to edit a PSet consisting of one or more child PSets in a hierarchical structure through the invocation of one instance of the editor. Advantageously, each of the PSets can be selected from the single property editor 400 without requiring the user to work with an interim view, with the concomitant mouse travel and disengaging of visual attention from the property editor to that interim view.
Having described the invention, it should be apparent to those of ordinary skill in the art that the foregoing is illustrative and not limiting. Numerous modifications and other embodiments are within the scope of one of ordinary skill in the art and are contemplated as falling within the scope of the invention as defined by the appended claims.

Claims

WE CLAIM:
1. A method for editing a parent Parameter Set (PSet) with a hierarchical structure consisting of one or more child PSets, by a property editor executable on a computer system, the method comprising the steps of:
identifying said parent PSet for editing by said property editor;
determining the hierarchical structure of said parent PSet to identify said one or more child PSets of said parent PSet, including children of children at different levels of the hierarchy;
displaying tabs and editing parameters from said identified child PSets.
2. The method of claim 1 further including the step of:
determining which identified child PSets are exposed child PSets;
wherein said step for displaying includes the step of displaying tabs and editing parameters from only said exposed child PSets.
3. The method of claim 1 further including the step of:
selecting a level of children in the said hierarchy;
toggling a switch corresponding to said selected level of children in the said hierarchy wherein said step for displaying includes the step of displaying tabs and editing parameters child PSets in response to said toggled switch.
4. A computer readable medium for storing computer instruction thereon to cause the following steps for editing a parent Parameter Set (PSet) with a hierarchical structure consisting of one or more child PSets, by a property editor, to be executed on a computer system, the method comprising the steps of:
identifying said parent PSet for editing by said property editor;
determining the hierarchical structure of said parent PSet to identify said one or more child PSets of said parent PSet, including children of children at different levels of said hierarchy;
displaying tabs and editing parameters from said identified child PSets.
5. The computer readable medium of claim 4 further including the steps of:
determining which identified child PSets are exposed child PSets;
wherein said step for displaying includes the step of displaying tabs and editing parameters from only said exposed child PSets.
6. The computer readable medium of claim 4 further including the steps of:
selecting a level of children in the said hierarchy;
toggling a switch corresponding to said selected level of children in the said hierarchy wherein said step for displaying includes the step of displaying tabs and editing parameters child PSets in response to said toggled switch.
PCT/US2000/021521 1999-08-06 2000-08-04 Property editor with child property sets WO2001011465A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU64011/00A AU6401100A (en) 1999-08-06 2000-08-04 Property editor with child property sets

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US36951699A 1999-08-06 1999-08-06
US09/369,516 1999-08-06

Publications (2)

Publication Number Publication Date
WO2001011465A2 true WO2001011465A2 (en) 2001-02-15
WO2001011465A3 WO2001011465A3 (en) 2003-12-04

Family

ID=23455806

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2000/021521 WO2001011465A2 (en) 1999-08-06 2000-08-04 Property editor with child property sets

Country Status (2)

Country Link
AU (1) AU6401100A (en)
WO (1) WO2001011465A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2477475C2 (en) * 2011-04-21 2013-03-10 Федеральное государственное образовательное учреждение высшего профессионального образования "Казанская государственная академия ветеринарной медицины им. Н.Э. Баумана" Method to diagnose sarcoptoidosis in animals

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997036223A1 (en) * 1996-03-27 1997-10-02 Matsushita Electric Industrial Co., Ltd. Tag dialog display method and apparatus
EP0869456A2 (en) * 1997-04-04 1998-10-07 Microsoft Corporation Computer imaging using graphics components

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997036223A1 (en) * 1996-03-27 1997-10-02 Matsushita Electric Industrial Co., Ltd. Tag dialog display method and apparatus
EP0869456A2 (en) * 1997-04-04 1998-10-07 Microsoft Corporation Computer imaging using graphics components

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"VISUAL TWO-LEVEL INFORMATION CATEGORIZATION" IBM TECHNICAL DISCLOSURE BULLETIN, IBM CORP. NEW YORK, US, vol. 35, no. 2, 1 July 1992 (1992-07-01), pages 189-190, XP000313266 ISSN: 0018-8689 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2477475C2 (en) * 2011-04-21 2013-03-10 Федеральное государственное образовательное учреждение высшего профессионального образования "Казанская государственная академия ветеринарной медицины им. Н.Э. Баумана" Method to diagnose sarcoptoidosis in animals

Also Published As

Publication number Publication date
WO2001011465A3 (en) 2003-12-04
AU6401100A (en) 2001-03-05

Similar Documents

Publication Publication Date Title
US6317142B1 (en) Taxonomy of objects and a system of non-modal property inspectors
US6621504B1 (en) Editor for effect tree parameters
US7761796B2 (en) Animation on object user interface
Bederson et al. Jazz: an extensible zoomable user interface graphics toolkit in Java
Thomas et al. Applying cartoon animation techniques to graphical user interfaces
Mills et al. A magnifier tool for video data
US5880740A (en) System for manipulating graphical composite image composed of elements selected by user from sequentially displayed members of stored image sets
US6031529A (en) Graphics design software user interface
US7518611B2 (en) Extensible library for storing objects of different types
US9110688B2 (en) System and method for representation of object animation within presentations of software application programs
EP0636971A2 (en) Method and apparatus for producing a composite second image in the spatial context of a first image
EP1066599A1 (en) Method and apparatus for three-dimensional character animation
KR20080042835A (en) Extensible visual effects on active content in user interfaces
US8099682B1 (en) Proxies for viewing hierarchical data
US6466214B1 (en) Marking parameters for animation
WO2001011465A2 (en) Property editor with child property sets
Keränen et al. Adaptive runtime layout of hierarchical UI components
Gross Director 8 and Lingo authorized
Marshall et al. Introduction to multimedia
KR100620897B1 (en) method and the system for producting BIFSBInary Format for Scenes language for MPEG-4 contents
Hurwicz et al. Using Macromedia Flash MX
Carson et al. Algorithm explorer: visualizing algorithms in a 3d multimedia environment
Goldberg EnterFrame: Cage, deleuze and macromedia director
WO2001011627A1 (en) Generation and versatile usage of effect tree presets
Root Interactive applications using matplotlib

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AU CA JP

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

121 Ep: the epo has been informed by wipo that ep was designated in this application
122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase in:

Ref country code: JP