WO2001011465A2 - Property editor with child property sets - Google Patents
Property editor with child property sets Download PDFInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/451—Execution 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
The table below describes which types of children nodes will receive keys set on a parent node being inspected in the property editor:
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:
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
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.
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2477475C2 (en) * | 2011-04-21 | 2013-03-10 | Федеральное государственное образовательное учреждение высшего профессионального образования "Казанская государственная академия ветеринарной медицины им. Н.Э. Баумана" | Method to diagnose sarcoptoidosis in animals |
Citations (2)
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 |
-
2000
- 2000-08-04 WO PCT/US2000/021521 patent/WO2001011465A2/en active Application Filing
- 2000-08-04 AU AU64011/00A patent/AU6401100A/en not_active Abandoned
Patent Citations (2)
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)
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)
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 |