WO2007097644A2 - Improvements relating to manipulator tools for virtual objects - Google Patents

Improvements relating to manipulator tools for virtual objects Download PDF

Info

Publication number
WO2007097644A2
WO2007097644A2 PCT/NZ2007/000033 NZ2007000033W WO2007097644A2 WO 2007097644 A2 WO2007097644 A2 WO 2007097644A2 NZ 2007000033 W NZ2007000033 W NZ 2007000033W WO 2007097644 A2 WO2007097644 A2 WO 2007097644A2
Authority
WO
WIPO (PCT)
Prior art keywords
virtual object
functions
editing
manipulating
virtual
Prior art date
Application number
PCT/NZ2007/000033
Other languages
French (fr)
Other versions
WO2007097644A3 (en
Inventor
David Brebner
Russell Brebner
Robert Gordon Grapes
Original Assignee
Unlimited Realities Limited
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 Unlimited Realities Limited filed Critical Unlimited Realities Limited
Publication of WO2007097644A2 publication Critical patent/WO2007097644A2/en
Publication of WO2007097644A3 publication Critical patent/WO2007097644A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04817Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text

Definitions

  • the present invention relates to virtual tools for manipulating virtual objects including computer graphics.
  • the present invention relates to icons used to denote virtual tools for manipulating virtual objects.
  • Computer graphics editors traditionally provide a set of virtual tools. These tools provide a range of functions which allow manipulation of graphics objects. Modern sophisticated graphics editors provide a substantial array of different virtual tools. Traditionally, these virtual tools are accessible by a user through an on-screen drop down menu of tools. Some graphics editors display virtual tools on a pallet or tool bar. Toolbars or pallets typically show a set of icons, each corresponding to a different virtual tool. The large number of virtual tools provided by modern, sophisticated graphics editors requires the use of drop down menu directories, pallets or multiple pallets. These methods of accessing virtual tools can be cumbersome.
  • Traditional graphic editors allow tools to be used in a two-step process. First the user selects a tool by entering drop down menus and subdirectories, for example, with a cursor and 'clicking' on the tool they wish to select. The cursor then represents the virtual tool and the user uses the cursor to manipulate a graphic object. This process is time consuming even if the selection of virtual tools is readily accessible on a pallet for example.
  • At least one known system provides tool bars with features that allow the tool bar to be customised.
  • the customisation of a tool bar may go some way to speeding up the navigation of a selection of available virtual tools on a visual tool and the use of the selected virtual on a graphical object.
  • 'geometrical relationship refers broadly to any relationship that can be defined geometrically. The term is not limited to static relationships and may specifically include relationships that adapt over with time or in response to given conditions.
  • 'virtual object' is intended to refer broadly to any object that may be manipulated at least in part by a graphical editor.
  • 'editing' is intended to broadly refer to any interaction with a virtual object enabled by a graphic editor.
  • graphical objects are intended to broadly refer to any graphical representation of any virtual object that might be manipulated graphically. It may include graphical representations of text objects.
  • the applicant has identified a need for a simplified, rapid process for selecting and using virtual tools.
  • the present invention provides a set of computer executable instructions stored on a computer readable medium, said instructions providing a graphical editor which is adapted to:
  • each icon is displayed with a predetermined geometrical relationship to the selected object whereby manipulation of the object is effected by manipulation of the at least one icon associated with said selected second set function.
  • the editing context of said object selected includes at least one attribute of the object.
  • the editing context of said object selected includes a designated object type for the object.
  • the context of the object selected includes aspects of the relationship of the object to other objects.
  • the first set of editing functions includes a move function.
  • the first set of editing functions includes a lock or unlock function.
  • the first set of editing functions includes a rotate function.
  • the first set of editing functions includes a play function.
  • the first set of editing functions includes an edit function.
  • the 'context' of an object may take into account any combination of the following.
  • the type of object For example, whether the object is a video, 2D graphic, text object or such like. Many alternative types will be apparent to those skilled in the art.
  • the editing context may also include properties of the object or even logic associated with the object.
  • the manipulation tool icons displayed are related to the content of the virtual object and manipulation operations applicable to the object.
  • the manipulation tool icons displayed are a selection of a set of manipulator tool icons, the selection being applicable to the editing context of the virtual object.
  • tool icons displayed are elements of a computer operating system.
  • a method of displaying a virtual object the method characterised by the steps of:
  • manipulation tool icons are displayed in a predetermined geometrical relationship with the graphical representation of the virtual object.
  • an object can be manipulated by manipulation of an icon associated with the object.
  • Figure 1 depicts a graphical object displayed by a graphical editor according to a preferred embodiment of the present invention
  • Figure 2 shows a graphical object displayed by a graphical editor according to a preferred embodiment of the present invention, with the graphical object selected;
  • Figure 3 shows a graphical object displayed by a graphical editor according to a preferred embodiment of the present invention, with the graphical object 1 selected and rotated;
  • Figure 4 shows a graphical object displayed by a graphical editor according to a preferred embodiment of the present invention, with the graphical object selected and rotated in 3- Dimensions;
  • Figure 5 shows a graphical object displayed by a graphical editor according to a preferred embodiment of the present invention, with the graphical object having changed its state by being replayed;
  • Figure 6 shows an alternative graphical object to figures 1 to 5 displayed by a graphical editor according to a preferred embodiment of the present invention, with the object selected;
  • Figure 7 shows the same graphical object as figure 6 displayed by a graphical editor according to a preferred embodiment of the present invention with the graphical object rotated in 2- Dimensions;
  • Figures 8 and 9 show a graphical object displayed by a graphical editor according to a preferred embodiment of the present invention with the editing context altered by use of a keyboard key;
  • Figure 10 shows a process for the display of virtual tool icons according to a preferred embodiment of the present invention
  • Figures 11. 12 and 13 show a graphical object displayed by a graphical editor according to a preferred embodiment of the present invention and depict a line editing functionality;
  • Figures 14 and 15 show a graphical object displayed by a graphical editor according to a preferred embodiment of the present invention and depict a text editing functionality.
  • the present invention provides (with respect to figures 1-9) a set of computer executable instructions stored on a computer readable medium.
  • the instructions provide a graphical editor (not shown) which is adapted to provide a first set of editing functions available for editing graphical objects 1 and provide a selection input means (for example a computer mouse pointer or keyboard, not shown) to receive inputs to select objects to be edited.
  • the invention provides a means to determine an editing context for an object selected and provide for each object selected a second set of editing functions, said second set being a selection of functions taken from the first set of functions said selections being determined by the editing context of said object selected (such as box 2 shown in figure 2) and displaying in association with the selected object selected at least one icon 3 for each function of said second set of functions.
  • Figure 1 shows a graphical object 1 as it might appear on a geographical editor according to a preferred embodiment of the present invention.
  • the graphical object 1 has not been selected.
  • Figure 2 shows a graphic object 1 as it would appear on a graphic editor (not shown).
  • the graphic object 1 has been selected as denoted by the edge of the box 2 being highlighted.
  • the graphic object 1 would typically be selected by some form of selection event such as a cursor 6 coming into the proximity with the graphic object 1. Suitable selection events will be apparent to those skilled in the art.
  • Figure 2 shows a set of icons 3 displayed in association with the selected object.
  • the set of icons 3 is located slightly above the box 2 at the left side of the box 2.
  • the set of icons shown in figure 2 includes an icon 4 (which is replicated around the other three corners of the box 2), and which represents a re-scaling tool.
  • Each icon of set of icons 3 represents a different function provided by the graphical editor with which to manipulate or edit the graphical object 1.
  • the example shown in figure 2 has a 'copy' icon 5.
  • this icon is clicked with the cursor 6, a copy of the graphical object 1 is generated and displayed by the graphical editor.
  • the set of icons shown in figure 3 also includes a 'move' icon 7.
  • the 'move' icon 7 When the 'move' icon 7 is moved the graphical object 1 is moved in response to the icon 7.
  • the graphical object moves with the 'move' icon 7 to preserve the geometrical relationship between the icon 7 and the object 1. Because the geometrical relationship between the 'move' icon 7 and the object 1 is preserved by the graphical editor, the object can in effect be moved or manipulated in general, by moving the 'move' icon 7.
  • the 'move' icon 7 is moved the rest of the set of icons 3 and the box 2 will typically move with the icon and preserve the geometrical relationship with the graphical object 1 and the other icons.
  • Figure 2 shows a 'help' box which shows the word 'move' when the 'move' icon 7 is selected with the cursor 6.
  • Figure 3 depicts the situation where a 'rotate' icon 8 is manipulated by the cursor 6.
  • Figure 3 also depicts that once again the geometrical relationship between respective icons and the box 2 are preserved during manipulations of the icon and the object 1.
  • Figure 4 resembles figures 2 and 3 except that it is a 'rotate 3D' icon 10 that is selected. From figure 4 it is apparent that the 3-Dimensional graphical object 1 has been rotated in a 3-Dimensional manner.
  • the 3D icon typically allows a user to manipulate the 'pitch' and 'yaw' of the object. The 'rolling' of the object will be manipulated with the 'rotate' icon as in the case of 2D graphics. To manipulate the 'pitch' and 'yaw' the user clicks on the 3D rotate icon then drags the cursor in a given direction.
  • the icon may not move with respect to a central point of the object (not shown) but the distance and direction that the cursor is dragged from the icon affects a manipulation of the object. In this case the geometrical relationship between the icon and a central point of the object is preserved. Also the icon is manipulated by a cursor being dragged a distance and direction from the icon.
  • Figure 5 depicts the case where a 'replay' icon 11 is selected and activated.
  • the attitude and appearance of the graphical object 1 has changed from that shown in the other figures to depict that the graphical object is an animation which has begun to be replayed. If the replay icon is selected, a pause icon (not shown) may appear. This demonstrates the editing context of an object being determined in part by the state of the object.
  • Figure 6 shows another graphical object 21 which has been selected, as denoted by the appearance of the box 2 and the set of icons 23.
  • the graphical object 21 is a static, 2-Dimensional graphic.
  • a static 2-Dimensional graphic object 21 represents a different context to a graphical editor and, correspondingly, it cannot be manipulated by the same set of functions as a 3-
  • the different context presented to the graphical editor by a different type of object is represented by a different set of icons 23 being displayed with the graphical object 21.
  • the 'rotate 3D' icon 10 and the 'replay' icon 11 are not displayed with the graphical object 21. This is because the editing functions for which those icons are not applicable to a static, 2-Dimensional graphic.
  • a user wanting to manipulate the graphical object is presented with a set of objects that has been refined to the subset of ail possible functions that are applicable to the context of the object.
  • the editing context may typically include a representation of the current state of an object.
  • the current frame of an animation might correspond to a particular state of the graphical or virtual object.
  • Figures 8 and 9 depict a function which is available in a context that is affected by events received by the graphic editor.
  • the event might be a given keyboard key being selected when the object 31 is selected and the shift key is selected, for example, the move function, depicted by the move icon 37, is adapted by being restricted to predefined movement aixs as depicted by the set of icons 38.
  • Figure 9 depicts the movement of the object 31 by the move icon 37 used in the modified context of the shift key, for example, being selected.
  • Figures 8 and 9 and the example depicted demonstrates the context not only being used to select the icons displayed from all possible icons but also demonstrates that a function can be modified by a context involving an event such as a key stroke.
  • Figure 10 depicts a process for displaying icons for manipulator functions according to a preferred embodiment of the present invention.
  • a graphical representation of a virtual object is displayed. This might be the graphical object or if the object is a text object, for example, a graphical representation of the object will typically be provided.
  • Figures 1 to 9 shows examples of a graphical representation of an object.
  • FIG. 1 to 9 show an object selected with a cursor 6, 26 and 36.
  • Steps 43 and 44 define a set of functions that are applicable to the object in the given context.
  • step 43 establishes the type of the object.
  • the type are given in table 1. These might be an image, video or shape, for example. Various 'types' will be apparent to those skilled in the art.
  • step 44 establishes the state dependant aspects of the context of the object.
  • the state may involve events, such as a key selection.
  • the state may also involve whether a video, for example, is being played and how much time has elapsed.
  • Various functions involved in the state and the impact on the applicability of given factors will be apparent to those skilled in the art.
  • step 45 the set of functions that are applicable to the context of the object enabled. Those skilled in the art will be aware of suitable methods for enabling given functions.
  • FIG. 1 to 9 illustrate various example sets of icons displayed.
  • step 47 events defining a users selection and manipulation of the icons are received. This may be the user 'clicking and dragging' an icon 8 such as rotate (see figure 3).
  • step 48 the object is manipulated according to the events received in step 47. This may be rotating the object (see figure 3).
  • the following table shows an example functions available in given contexts.
  • the icon is named after the function it represents.
  • These particular examples determine editing context by use the object type and a predefined condition relating to the object or events received by the graphic editor. Other criteria may be used in place of these or in addition to these. Additional criteria would be represented in this table by additional or replacement columns. Alternative criteria and alternative names for the elements shown in the table will be apparent to those skilled in the art.
  • Figures 11 , 12 and 13 depict a line editing function.
  • the line to be edited in the example of figures 11 to 13 is defined by a series of line sections and points and has an overlayed texture.
  • Figure 11 depicts the selection of an 'edit' icon denoted by a 'pen'.
  • the 'edit' icon is selected from a set of icons displayed in association with the object, which is a drawn line in this case. Only icons that relate to functions applicable to the line are displayed.
  • Figure 12 depicts the line 52 as it is displayed once the 'edit' icon has been selected.
  • the set of icons displayed in association with the object has been, in this particular embodiment, removed.
  • Another icon for de-selecting the 'edit' icon is now displayed in association with the object.
  • the points 53 and lines 54 defining the line are displayed and made available for manipulation by a cursor.
  • the lines may include 'handles' 55.
  • Figure 13 shows a set of text boxes 56 and 57 and corresponding icons which represent options made available when the 'edit' icon is selected.
  • Figures 14 and 15 depict editing of an object 61 in the form of text.
  • An 'edit' icon 62 is displayed in association with the object 61 along with icons depicting alternative functionalities.
  • Figure 14 shows the icon 62 changing shade or colour when it is selected.
  • Figure 15 depicts the set of icons 64 to 66 depicting alternative functions to the 'edit' being hidden.
  • the icon 63 representing de-selection of the 'edit' function is shown in association with the object.
  • the preferred embodiment of the present invention displays icons that are editing context sensitive so the number of icons displayed is minimised and selection of the icons is facilitated.
  • the preferred embodiment of the present invention allows an object to be manipulated by manipulation of an icon associated with the object. This facilitates rapid, succinct editing.

Abstract

The present invention provides computer executable instructions allowing for the manipulation of a virtual object. These instructions are configured to retrieve a first set of manipulation functions available for manipulating virtual objects. These are then configured to receive a selection input from an operator which selects at least one of a set of displayed virtual objects. Next, an editing context is determined for a virtual object that has been selected. Next, for each object a second set of manipulation functions is determined. This second set is a selection of functions taken from the first set of functions based on an editing context determined for the virtual object. Next, at least one icon represented above each member of said second set of functions is displayed in association with a virtual object selected. This invention provides rapid, succinct editing of virtual objects.

Description

IMPROVEMENTS RELATING TO MANIPULATOR TOOLS FOR VIRTUAL OBJECTS
TECHNICAL FIELD
The present invention relates to virtual tools for manipulating virtual objects including computer graphics. In particular, the present invention relates to icons used to denote virtual tools for manipulating virtual objects.
BACKGROUND ART
Computer graphics editors traditionally provide a set of virtual tools. These tools provide a range of functions which allow manipulation of graphics objects. Modern sophisticated graphics editors provide a substantial array of different virtual tools. Traditionally, these virtual tools are accessible by a user through an on-screen drop down menu of tools. Some graphics editors display virtual tools on a pallet or tool bar. Toolbars or pallets typically show a set of icons, each corresponding to a different virtual tool. The large number of virtual tools provided by modern, sophisticated graphics editors requires the use of drop down menu directories, pallets or multiple pallets. These methods of accessing virtual tools can be cumbersome.
Another problem associated with these methods of accessing virtual tools is that they can be time consuming for a user to navigate the drop-down menus or pallets, particularly where there are a large number of tools which require nested menus or pallets. This problem is compounded by the fact that traditional graphics editors concurrently display virtual tools corresponding to all of the possible manipulations on all types of graphic object.
It is therefore desirable to provide virtual tools for manipulating virtual (particularly graphical) objects, which tools are rapidly accessible to a user. It is also desirable to provide virtual tools for manipulating graphical objects, which tools facilitate rapid selection by a user from a complete set of tools that might be offered by a given graphical editor.
Traditional graphic editors allow tools to be used in a two-step process. First the user selects a tool by entering drop down menus and subdirectories, for example, with a cursor and 'clicking' on the tool they wish to select. The cursor then represents the virtual tool and the user uses the cursor to manipulate a graphic object. This process is time consuming even if the selection of virtual tools is readily accessible on a pallet for example.
It is further desirable to provide a method of allowing a user to select and use a virtual tool.
It is also desirable to provide virtual tools in a manner which facilitate rapid selection and manipulation of graphical objects.
At least one known system provides tool bars with features that allow the tool bar to be customised. The customisation of a tool bar may go some way to speeding up the navigation of a selection of available virtual tools on a visual tool and the use of the selected virtual on a graphical object.
All references, including any patents or patent applications cited in this specification are hereby incorporated by reference. No admission is made that any reference constitutes prior art. The discussion of the references states what their authors assert, and the applicants reserve the right to challenge the accuracy and pertinency of the cited documents. It will be clearly understood that, although a number of prior art publications are referred to herein, this reference does not constitute an admission that any of these documents form part of the common general knowledge in the art, in New Zealand or in any other country. It is acknowledged that the term 'comprise' may, under varying jurisdictions, be attributed with either an exclusive or an inclusive meaning. For the purpose of this specification, and unless otherwise noted, the term 'comprise' shall have an inclusive meaning - i.e. that it will be taken to mean an inclusion of not only the listed components it directly references, but also other non-specified components or elements. This rationale will also be used when the term 'comprised' or 'comprising' is used in relation to one or more steps in a method or process.
As used herein the term 'geometrical relationship refers broadly to any relationship that can be defined geometrically. The term is not limited to static relationships and may specifically include relationships that adapt over with time or in response to given conditions.
As used herein the term 'virtual object' is intended to refer broadly to any object that may be manipulated at least in part by a graphical editor.
As used herein the term 'editing' is intended to broadly refer to any interaction with a virtual object enabled by a graphic editor.
As used herein the term 'graphical objects' are intended to broadly refer to any graphical representation of any virtual object that might be manipulated graphically. It may include graphical representations of text objects.
The applicant has identified a need for a simplified, rapid process for selecting and using virtual tools.
It is an object of the present invention to address the foregoing problems or at least to provide the public with a useful choice.
Further aspects and advantages of the present invention will become apparent from the ensuing description which is given by way of example only.
DISCLOSURE OF INVENTION
According to one aspect, the present invention provides a set of computer executable instructions stored on a computer readable medium, said instructions providing a graphical editor which is adapted to:
• provide a first set of editing functions available for editing virtual objects;
• provide a selection input means to receive inputs to select virtual objects to be edited;
• determine an editing context for a virtual object selected;
• provide for each virtual object selected a second set of editing functions, said second set being a selection of functions taken from the first set of functions said selections being determined by the editing context of said virtual object selected;
• displaying in association with the selected object selected at least one icon for each function of said second set of functions.
According to a second aspect of the present invention there is provided computer executable instructions stored on a computer readable medium, said instructions allowing for the manipulation of a virtual object, said instructions being configured to execute the steps of;
(i) retrieving a first set of manipulation functions available for manipulating virtual objects; (ii) receiving a selection input which selects at least one of a set of displayed virtual objects;
(iii) determine an editing context for a virtual object selected;
(iv) determining for each object selected a second set of manipulation functions, said second set being a selection of functions taken from the first set of functions, said functions being determined by the editing context determined for said object;
(v) displaying in association with the virtual object selected at least one icon representative of each member of said second set of functions.
According to yet another aspect of the present invention there is provided a method of manipulating a virtual object, said method being characterised by the steps of:
(i) displaying a graphical representation of a virtual object;
(ii) retrieving a first set of manipulation functions available for manipulating virtual objects;
(iii) receiving a selection input which selects the virtual object;
(iv) determining an editing context for the virtual object;
(v) determining a second set of manipulation functions, said second set of functions being selected from members of the first set of manipulation functions retrieved, where the members of said second set are determined by the editing context determined for the virtual object;
(vi) displaying in association with the graphical representation of the virtual object at least one manipulation tool icon, wherein a manipulation tool icon is displayed for every member of the second set of functions determined;
(vii) manipulating the virtual object by manipulation of at least one displayed manipulation tool icon.
It will be appreciated that although the invention is described herein with respect to manipulating graphics, the invention is also applicable to manipulating alternative virtual on-screen objects including text, tables, cells, formulae, video, files and so forth and as such fall these within the scope of the present invention. To improve clarity and avoid prolixity, the invention is described further with regard to graphical object manipulation though this is not to be interpreted narrowly and includes manipulation of any convenient virtual on-screen object.
Reference in general will also be made to the present invention providing or implementing a mechanism by which a virtual object may be manipulated. Reference throughout this specification will also be made to the use of manipulation functions, and the display of manipulation tool icons in conjunction with the present invention. Those skilled in the art should appreciate that the editing of a virtual object as referenced throughout this specification forms a subset of such manipulation functions or operations.
Preferably, each icon is displayed with a predetermined geometrical relationship to the selected object whereby manipulation of the object is effected by manipulation of the at least one icon associated with said selected second set function. Preferably the editing context of said object selected includes at least one attribute of the object.
Preferably the editing context of said object selected includes a designated object type for the object. Preferably the context of the object selected includes aspects of the relationship of the object to other objects.
Preferably the first set of editing functions includes a move function.
Preferably the first set of editing functions includes a lock or unlock function.
Preferably the first set of editing functions includes a rotate function.
Preferably the first set of editing functions includes a play function.
Preferably the first set of editing functions includes an edit function.
In the example of a graphical editor, there may be a multitude of possible functions available to the user to manipulate a graphical object. However, depending on the context of the graphical object's position, history, size, state or any other relevant context factor, only a limited number of the total array of functions may be applicable or relevant to the object at a given instant. Consequently, instead of requiring the user to scan numerous toolbars, menu's or the like, or to require a prodigious memory, the present invention presents the user with only those functions relevant to the object at that instant. Clearly the context may differ markedly according to the nature of the application. A word processing application may recognise a virtual object such as text in the form of a web address and provide the user with the option of accessing the corresponding web site. The applicable manipulable functions for a video object such as play, pause, stop and so forth are clearly not applicable in the context of a static graphical image object.
The 'context' of an object may take into account any combination of the following. • The type of object. For example, whether the object is a video, 2D graphic, text object or such like. Many alternative types will be apparent to those skilled in the art.
• The state of the object as defined by any means known to those skilled in the art. These may include elapsed time or events which have occurred.
• The relationship of the object with other objects. This might be proximity on a screen, parent-child type relationship, or specified links between objects.
The editing context may also include properties of the object or even logic associated with the object.
According to an aspect of the present invention there is provided a method of manipulating a virtual object, the method characterised by the steps of:
(i) displaying a graphical representation of the virtual object;
(ii) receiving a notification of a user selection of said graphical representation of the virtual object;
(iii) displaying manipulation tool icons in association with said graphical representation of the virtual object selected;
(iv) manipulating the virtual object in response to a user selection of one or more manipulation tool icons.
Preferably the manipulation tool icons displayed are related to the content of the virtual object and manipulation operations applicable to the object. Preferably the manipulation tool icons displayed are a selection of a set of manipulator tool icons, the selection being applicable to the editing context of the virtual object.
Preferably the manipulation of tool icons displayed are elements of a computer operating system.
According to an aspect of the present invention there is provided a method of displaying a virtual object, the method characterised by the steps of:
(i) displaying a graphical representation of a virtual object;
(ii) receiving a notification of a user selection of said graphical icon of the virtual object;
(iii) defining a set of editing context applicable manipulation functions applicable to a context of the virtual object selected;
(iv) displaying manipulation tool icons for the set of context applicable manipulation functions;
(v) manipulating the virtual object in response to a user selection of one or more manipulation tool icons.
Preferably the manipulation tool icons are displayed in a predetermined geometrical relationship with the graphical representation of the virtual object.
In the example of a graphical editor an object can be manipulated by manipulation of an icon associated with the object.
In the example of a graphical editor icons are displayed only for functions which are applicable to the object in a given situation, this is the context of an object which are displayed.
BRIEF DESCRIPTION OF DRAWINGS
Further aspects of the present invention will become apparent from the following description which is given by way of example only and with reference to the accompanying drawings in which:
Figure 1 depicts a graphical object displayed by a graphical editor according to a preferred embodiment of the present invention;
Figure 2 shows a graphical object displayed by a graphical editor according to a preferred embodiment of the present invention, with the graphical object selected;
Figure 3 shows a graphical object displayed by a graphical editor according to a preferred embodiment of the present invention, with the graphical object 1 selected and rotated;
Figure 4 shows a graphical object displayed by a graphical editor according to a preferred embodiment of the present invention, with the graphical object selected and rotated in 3- Dimensions;
Figure 5 shows a graphical object displayed by a graphical editor according to a preferred embodiment of the present invention, with the graphical object having changed its state by being replayed;
Figure 6 shows an alternative graphical object to figures 1 to 5 displayed by a graphical editor according to a preferred embodiment of the present invention, with the object selected;
Figure 7 shows the same graphical object as figure 6 displayed by a graphical editor according to a preferred embodiment of the present invention with the graphical object rotated in 2- Dimensions;
Figures 8 and 9 show a graphical object displayed by a graphical editor according to a preferred embodiment of the present invention with the editing context altered by use of a keyboard key;
Figure 10 shows a process for the display of virtual tool icons according to a preferred embodiment of the present invention;
Figures 11. 12 and 13show a graphical object displayed by a graphical editor according to a preferred embodiment of the present invention and depict a line editing functionality;
Figures 14 and 15 show a graphical object displayed by a graphical editor according to a preferred embodiment of the present invention and depict a text editing functionality.
BEST MODES FOR CARRYING OUT THE INVENTION
Aspects of the present invention have been described by way of example only and it should be appreciated that modifications and additions may be made thereto without departing from the scope thereof.
The present invention provides (with respect to figures 1-9) a set of computer executable instructions stored on a computer readable medium. The instructions provide a graphical editor (not shown) which is adapted to provide a first set of editing functions available for editing graphical objects 1 and provide a selection input means (for example a computer mouse pointer or keyboard, not shown) to receive inputs to select objects to be edited.
The invention provides a means to determine an editing context for an object selected and provide for each object selected a second set of editing functions, said second set being a selection of functions taken from the first set of functions said selections being determined by the editing context of said object selected (such as box 2 shown in figure 2) and displaying in association with the selected object selected at least one icon 3 for each function of said second set of functions.
Figure 1 shows a graphical object 1 as it might appear on a geographical editor according to a preferred embodiment of the present invention. The graphical object 1 has not been selected.
Figure 2 shows a graphic object 1 as it would appear on a graphic editor (not shown). The graphic object 1 has been selected as denoted by the edge of the box 2 being highlighted. The graphic object 1 would typically be selected by some form of selection event such as a cursor 6 coming into the proximity with the graphic object 1. Suitable selection events will be apparent to those skilled in the art.
Figure 2 shows a set of icons 3 displayed in association with the selected object. In this case, the set of icons 3 is located slightly above the box 2 at the left side of the box 2.
The set of icons shown in figure 2 includes an icon 4 (which is replicated around the other three corners of the box 2), and which represents a re-scaling tool.
Each icon of set of icons 3 represents a different function provided by the graphical editor with which to manipulate or edit the graphical object 1. The example shown in figure 2 has a 'copy' icon 5. When this icon is clicked with the cursor 6, a copy of the graphical object 1 is generated and displayed by the graphical editor.
The set of icons shown in figure 3 also includes a 'move' icon 7. When the 'move' icon 7 is moved the graphical object 1 is moved in response to the icon 7. The graphical object moves with the 'move' icon 7 to preserve the geometrical relationship between the icon 7 and the object 1. Because the geometrical relationship between the 'move' icon 7 and the object 1 is preserved by the graphical editor, the object can in effect be moved or manipulated in general, by moving the 'move' icon 7. When the 'move' icon 7 is moved the rest of the set of icons 3 and the box 2 will typically move with the icon and preserve the geometrical relationship with the graphical object 1 and the other icons.
Figure 2 shows a 'help' box which shows the word 'move' when the 'move' icon 7 is selected with the cursor 6.
Figure 3 depicts the situation where a 'rotate' icon 8 is manipulated by the cursor 6. Once again, the geometrical relationship between the graphical object 1 and the icon is preserved so that the graphical object 1 has in effect been manipulated by manipulation of the icon.
Figure 3 also depicts that once again the geometrical relationship between respective icons and the box 2 are preserved during manipulations of the icon and the object 1.
Figure 4 resembles figures 2 and 3 except that it is a 'rotate 3D' icon 10 that is selected. From figure 4 it is apparent that the 3-Dimensional graphical object 1 has been rotated in a 3-Dimensional manner. The 3D icon typically allows a user to manipulate the 'pitch' and 'yaw' of the object. The 'rolling' of the object will be manipulated with the 'rotate' icon as in the case of 2D graphics. To manipulate the 'pitch' and 'yaw' the user clicks on the 3D rotate icon then drags the cursor in a given direction. The icon may not move with respect to a central point of the object (not shown) but the distance and direction that the cursor is dragged from the icon affects a manipulation of the object. In this case the geometrical relationship between the icon and a central point of the object is preserved. Also the icon is manipulated by a cursor being dragged a distance and direction from the icon.
Figure 5 depicts the case where a 'replay' icon 11 is selected and activated. The attitude and appearance of the graphical object 1 has changed from that shown in the other figures to depict that the graphical object is an animation which has begun to be replayed. If the replay icon is selected, a pause icon (not shown) may appear. This demonstrates the editing context of an object being determined in part by the state of the object.
Figure 6 shows another graphical object 21 which has been selected, as denoted by the appearance of the box 2 and the set of icons 23. In the case of figure 6, the graphical object 21 is a static, 2-Dimensional graphic. A static 2-Dimensional graphic object 21 represents a different context to a graphical editor and, correspondingly, it cannot be manipulated by the same set of functions as a 3-
Dimensional animation. The different context presented to the graphical editor by a different type of object is represented by a different set of icons 23 being displayed with the graphical object 21. In the case of a static, 2-Dimensional graphic as shown in figure 6, the 'rotate 3D' icon 10 and the 'replay' icon 11 are not displayed with the graphical object 21. This is because the editing functions for which those icons are not applicable to a static, 2-Dimensional graphic. A user wanting to manipulate the graphical object is presented with a set of objects that has been refined to the subset of ail possible functions that are applicable to the context of the object. To match the set of icons to the set of editor functions applicable to a given object requires the graphic editor to determine the editing context of the object that has been selected, typically select the set of functions from all possible functions that are applicable to that context and then display an icon for each of the applicable functions. These typically include the type of object but also may include a variety of properties or attributes that a graphical object may have and may also include the relationship of the graphical object with other graphical objects.
In particular, the editing context may typically include a representation of the current state of an object. For example, the current frame of an animation might correspond to a particular state of the graphical or virtual object.
Figures 8 and 9 depict a function which is available in a context that is affected by events received by the graphic editor. The event might be a given keyboard key being selected when the object 31 is selected and the shift key is selected, for example, the move function, depicted by the move icon 37, is adapted by being restricted to predefined movement aixs as depicted by the set of icons 38.
Figure 9 depicts the movement of the object 31 by the move icon 37 used in the modified context of the shift key, for example, being selected.
Figures 8 and 9 and the example depicted demonstrates the context not only being used to select the icons displayed from all possible icons but also demonstrates that a function can be modified by a context involving an event such as a key stroke.
Figure 10 depicts a process for displaying icons for manipulator functions according to a preferred embodiment of the present invention.
At step 41 a graphical representation of a virtual object is displayed. This might be the graphical object or if the object is a text object, for example, a graphical representation of the object will typically be provided. Figures 1 to 9 shows examples of a graphical representation of an object.
At step 42 events from the graphical editor are received as notification that the user has selected the object. Figures 1 to 9 show an object selected with a cursor 6, 26 and 36.
Steps 43 and 44 define a set of functions that are applicable to the object in the given context.
Specifically, in the example depicted, step 43 establishes the type of the object. Examples of the type are given in table 1. These might be an image, video or shape, for example. Various 'types' will be apparent to those skilled in the art.
In the example of the depicted, step 44 establishes the state dependant aspects of the context of the object. The state may involve events, such as a key selection. The state may also involve whether a video, for example, is being played and how much time has elapsed. Various functions involved in the state and the impact on the applicability of given factors will be apparent to those skilled in the art.
At step 45 the set of functions that are applicable to the context of the object enabled. Those skilled in the art will be aware of suitable methods for enabling given functions.
At step 46 icons are displayed for enabled functions. Figures 1 to 9 illustrate various example sets of icons displayed.
At step 47 events defining a users selection and manipulation of the icons are received. This may be the user 'clicking and dragging' an icon 8 such as rotate (see figure 3).
At step 48 the object is manipulated according to the events received in step 47. This may be rotating the object (see figure 3).
The following table shows an example functions available in given contexts. In these examples the icon is named after the function it represents. These particular examples determine editing context by use the object type and a predefined condition relating to the object or events received by the graphic editor. Other criteria may be used in place of these or in addition to these. Additional criteria would be represented in this table by additional or replacement columns. Alternative criteria and alternative names for the elements shown in the table will be apparent to those skilled in the art.
Examples of context sensitive icons:
Table 1
Figure imgf000018_0001
Figure imgf000019_0001
Figure imgf000020_0001
Figure imgf000021_0001
Figures 11 , 12 and 13 depict a line editing function. The line to be edited in the example of figures 11 to 13 is defined by a series of line sections and points and has an overlayed texture.
Figure 11 depicts the selection of an 'edit' icon denoted by a 'pen'. The 'edit' icon is selected from a set of icons displayed in association with the object, which is a drawn line in this case. Only icons that relate to functions applicable to the line are displayed.
Figure 12 depicts the line 52 as it is displayed once the 'edit' icon has been selected. The set of icons displayed in association with the object has been, in this particular embodiment, removed. Another icon for de-selecting the 'edit' icon is now displayed in association with the object.
As figure 12 shows, once the 'edit' icon is selected the points 53 and lines 54 defining the line are displayed and made available for manipulation by a cursor. The lines may include 'handles' 55.
Figure 13 shows a set of text boxes 56 and 57 and corresponding icons which represent options made available when the 'edit' icon is selected.
Figures 14 and 15 depict editing of an object 61 in the form of text. An 'edit' icon 62 is displayed in association with the object 61 along with icons depicting alternative functionalities.
Figure 14 shows the icon 62 changing shade or colour when it is selected.
Figure 15 depicts the set of icons 64 to 66 depicting alternative functions to the 'edit' being hidden. The icon 63 representing de-selection of the 'edit' function is shown in association with the object.
The preferred embodiment of the present invention displays icons that are editing context sensitive so the number of icons displayed is minimised and selection of the icons is facilitated.
The preferred embodiment of the present invention allows an object to be manipulated by manipulation of an icon associated with the object. This facilitates rapid, succinct editing.
Aspects of the present invention have been described by way of example only and it should be appreciated that modifications and additions may be made thereto without departing from the scope thereof as defined in the appended claims.

Claims

WHAT WE CLAIM IS:
1. Computer executable instructions stored on a computer readable medium, said instructions allowing for the manipulation of a virtual object, said instructions being configured to execute the steps of;
(i) retrieving a first set of manipulation functions available for manipulating virtual objects;
(ii) receiving a selection input which selects at least one of a set of displayed virtual objects;
(iii) determine an editing context for a virtual object selected;
(iv) determining for each virtual object selected a second set of manipulation functions, said second set being a selection of functions taken from the first set of functions, said functions being determined by the editing context determined for said virtual object;
(v) displaying in association with the virtual object selected at least one icon representative of each member of said second set of functions.
2. Computer executable instructions as claimed in 1 , wherein each icon is displayed with a predetermined geometric relationship to the displayed selected object.
3. Computer executable instructions as claimed in claim 1 or 2, wherein the virtual object selected is manipulated by manipulating an icon representative of a member of said second set of functions.
4. Computer executable instructions as claimed in any previous claim, wherein the editing context of a virtual object is determined at least in part by at least one attribute of the virtual object.
5. Computer executable instructions as claimed in claim 4, wherein the editing context of a virtual object is determined at least in part by the type of the object.
6. Computer executable instructions as claimed in claim 4 or claim 5, wherein the editing context of a virtual object is determined at least in part by the state of the object.
7. Computer executable instructions as claimed in any previous claim, wherein the editing context of a virtual object is determined at least in part by the objects relationships to other objects.
8. Computer executable instructions as claimed in any previous claim, wherein the first set of editing functions includes a move function.
9. Computer executable instructions as claimed in any previous claim, wherein the first set of editing functions includes an object lock or unlock function.
10. Computer executable instructions as claimed in any previous claim, wherein the first set of editing functions includes a rotate function.
11. Computer executable instructions as claimed in any previous claim, wherein the first set of editing functions includes a play function.
12. Computer executable instructions as claimed in any previous claim, wherein the first set of editing functions includes an edit function.
13. A method of manipulating a virtual object, said method being characterised by the steps of:
(i) displaying a graphical representation of a virtual object;
(ii) retrieving a first set of manipulation functions available for manipulating virtual objects;
(iii) receiving a selection input which selects the virtual object;
(iv) determining an editing context for the virtual object;
(v) determining a second set of manipulation functions, said second set of functions being selected from members of the first set of manipulation functions retrieved, where the members of said second set are determined by the editing context determined for the virtual object;
(vi) displaying in association with the graphical representation of the virtual object at least one manipulation tool icon, wherein a manipulation tool icon is displayed for every member of the second set of functions determined;
(vii) manipulating the virtual object by manipulation of at least one displayed manipulation tool icon.
14. A method of manipulating a virtual object as claimed in claim 13, wherein each manipulation tool icon is displayed with a predetermined geometric relationship to the displayed graphical representation of the selected object.
15. A method of manipulating a virtual object as claimed in claim 13 or claim 14, wherein the editing context of a virtual object is determined at least in part by at least one attribute of the virtual object.
16. A method of manipulating a virtual object as claimed in claim 15, wherein the editing context of a virtual object is determined at least in part by the type of the object.
17. A method of manipulating a virtual object as claimed in claim 15 or claim 16, wherein the editing context of a virtual object is determined at least in part by the state of the object.
18. A method of manipulating a virtual object as claimed in any one of claims 13 to 17, wherein the editing context of a virtual object is determined at least in part by the objects relationships to other objects.
19. A method of manipulating a virtual object as claimed in any one of claims 13 to 18, wherein the first set of editing functions includes a move function.
20. A method of manipulating a virtual object as claimed in any one of claims 13 to 19, wherein the first set of editing functions includes an object lock or unlock function.
21. A method of manipulating a virtual object as claimed in any one of claims 13 to 20, wherein the first set of editing functions includes a rotate function.
22. A method of manipulating a virtual object as claimed in any one of claims 13 to 21 , wherein the first set of editing functions includes a play function.
23. A method of manipulating a virtual object as claimed in any one of claims 13 to 22, wherein the first set of editing functions includes an edit function.
24. Computer executable instructions substantially as herein described with reference to and illustrated by the accompanying drawings and/or examples.
5. A method of manipulating a virtual object substantially as herein described with reference to and illustrated by the accompanying drawings and/or examples.
PCT/NZ2007/000033 2006-02-21 2007-02-21 Improvements relating to manipulator tools for virtual objects WO2007097644A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
NZ54548006 2006-02-21
NZ545480 2006-02-21

Publications (2)

Publication Number Publication Date
WO2007097644A2 true WO2007097644A2 (en) 2007-08-30
WO2007097644A3 WO2007097644A3 (en) 2007-10-04

Family

ID=38437803

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/NZ2007/000033 WO2007097644A2 (en) 2006-02-21 2007-02-21 Improvements relating to manipulator tools for virtual objects

Country Status (1)

Country Link
WO (1) WO2007097644A2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014018574A3 (en) * 2012-07-25 2014-07-10 Microsoft Corporation Manipulating tables with touch gestures
US9400567B2 (en) 2011-09-12 2016-07-26 Microsoft Technology Licensing, Llc Explicit touch selection and cursor placement
WO2018187099A1 (en) * 2017-04-03 2018-10-11 Microsoft Technology Licensing, Llc Virtual object user interface display
EP3540571A1 (en) * 2018-03-09 2019-09-18 Beijing Xiaomi Mobile Software Co., Ltd. Method and device for editing virtual scene, and non-transitory computer-readable storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0717343A1 (en) * 1994-12-13 1996-06-19 Microsoft Corporation Context sensitive menu system/menu behavior
US6232970B1 (en) * 1997-08-04 2001-05-15 Starfish Software, Inc. User interface methodology supporting light data entry for microprocessor device having limited user input
EP1118929A2 (en) * 2000-01-19 2001-07-25 Siemens Aktiengesellschaft Interactive input with limit-value monitoring and online help for a palmtop device
WO2001098888A2 (en) * 2000-06-21 2001-12-27 Microsoft Corporation Context-sensitive methods and systems for displaying command sets
US20060036945A1 (en) * 2004-08-16 2006-02-16 Microsoft Corporation User interface for displaying selectable software functionality controls that are contextually relevant to a selected object

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0717343A1 (en) * 1994-12-13 1996-06-19 Microsoft Corporation Context sensitive menu system/menu behavior
US6232970B1 (en) * 1997-08-04 2001-05-15 Starfish Software, Inc. User interface methodology supporting light data entry for microprocessor device having limited user input
EP1118929A2 (en) * 2000-01-19 2001-07-25 Siemens Aktiengesellschaft Interactive input with limit-value monitoring and online help for a palmtop device
WO2001098888A2 (en) * 2000-06-21 2001-12-27 Microsoft Corporation Context-sensitive methods and systems for displaying command sets
US20060036945A1 (en) * 2004-08-16 2006-02-16 Microsoft Corporation User interface for displaying selectable software functionality controls that are contextually relevant to a selected object

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9400567B2 (en) 2011-09-12 2016-07-26 Microsoft Technology Licensing, Llc Explicit touch selection and cursor placement
US9612670B2 (en) 2011-09-12 2017-04-04 Microsoft Technology Licensing, Llc Explicit touch selection and cursor placement
WO2014018574A3 (en) * 2012-07-25 2014-07-10 Microsoft Corporation Manipulating tables with touch gestures
WO2018187099A1 (en) * 2017-04-03 2018-10-11 Microsoft Technology Licensing, Llc Virtual object user interface display
US10290152B2 (en) 2017-04-03 2019-05-14 Microsoft Technology Licensing, Llc Virtual object user interface display
CN110476142A (en) * 2017-04-03 2019-11-19 微软技术许可有限责任公司 Virtual objects user interface is shown
CN110476142B (en) * 2017-04-03 2022-03-25 微软技术许可有限责任公司 Computing device, method and head mounted display device for displaying virtual content
EP3540571A1 (en) * 2018-03-09 2019-09-18 Beijing Xiaomi Mobile Software Co., Ltd. Method and device for editing virtual scene, and non-transitory computer-readable storage medium
US11315336B2 (en) 2018-03-09 2022-04-26 Beijing Xiaomi Mobile Software Co., Ltd. Method and device for editing virtual scene, and non-transitory computer-readable storage medium

Also Published As

Publication number Publication date
WO2007097644A3 (en) 2007-10-04

Similar Documents

Publication Publication Date Title
US20190377478A1 (en) Visualization Object Receptacle
US9367199B2 (en) Dynamical and smart positioning of help overlay graphics in a formation of user interface elements
US8381122B2 (en) Multi-dimensional application environment
US6970749B1 (en) Grouped palette stashing
US9786074B2 (en) Temporal graph visualization including beams for indicating operations
US5546529A (en) Method and apparatus for visualization of database search results
US7877685B2 (en) Persistent adjustable text selector
US6874128B1 (en) Mouse driven splitter window
US9035949B1 (en) Visually representing a composite graph of image functions
CA2507405C (en) Graphical user interface for 3-dimensional view of a data collection based on an attribute of the data
EP2748738B1 (en) Method of creating a snap point in a computer-aided design system
JPH06203136A (en) Selective operation method of data collection display and data processing system
US20030189597A1 (en) Virtual desktop manager
US20080307334A1 (en) Visualization and interaction models
US20080307362A1 (en) Desktop Filter
US20080307360A1 (en) Multi-Dimensional Desktop
US20080307335A1 (en) Object stack
US20130179777A1 (en) Method of reducing computing time and apparatus thereof
US20170131874A1 (en) Software Design Tool For A User Interface And The Administration Of Proximity Responsive Information Displays In Augmented Reality Or Virtual Reality Environments
WO2007097644A2 (en) Improvements relating to manipulator tools for virtual objects
EP3040831A1 (en) Setting a parameter
JP6587237B2 (en) Program, information processing method, image processing apparatus, and server
US10445946B2 (en) Dynamic workplane 3D rendering environment
JP6532094B1 (en) Display processing apparatus, display processing method, and program
EP3040832A1 (en) Setting a parameter

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase in:

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 07715985

Country of ref document: EP

Kind code of ref document: A2