← Back to Patent Explorer
US5588098A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for direct manipulation of 3-D objects on computer displays

Assignee: Apple Inc
•
Filing: 1995-06-07
•
Granted: 1996-12-24
•
Expires: 2015-06-07
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus for direct manipulation of 3-D objects on computer display. This method and apparatus provides for a 3-D bounding region wherein the 3-D bounding region has sensitive areas which the user can select with a reference pointer such that when the user manipulates the reference pointer after selecting a sensitive area the 3-D bounding region and the object within it are manipulated with direct kinesthetic correspondence between the user's manipulation of the reference pointer and the bounding region and object manipulation.

Inventors

  • 👤 Michael Chen
  • 👤 Stephanie L. Houde
  • 👤 Robert H. Seidl

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-27 16:21
CPC Classifications
G; G06; G06F; G06F3/00; G06F3/01; G06F3/048; G06F3/0484; G06F3/04845; G06T; G06T19/00; G06T19/20; G06T2210/00; G06T2210/12; G06T2219/00; G06T2219/20; G06T2219/2016

Claims Analysis

Total Claims: 98
Claim 1
Independent Claim 179 words
A method for manipulating an object displayed in three-dimensional representation on a computer controlled display system having a computer and a display coupled to the computer, comprising the steps of: a) providing a user actuated input controller signal for selectively positioning a reference indicator on the display; b) positioning the reference indicator over the displayed object and signaling the computer to activate a control movement mode; c) providing on the display a three-dimensional representation of a bounding region including at least two portions which specify respective predefined control movement types, one of said types being rotation around an axis parallel to the portion which specifies rotation around that axis; d) positioning the reference indicator over one of said portions; e) signaling the computer to activate a predefined control movement type specified by the portion of the bounding region under the reference indicator, and while the reference indicator is over said portion, repositioning the reference indicator to define a movement of the specified type; and f) re-displaying the displayed object in accordance with the defined movement of the specified type.
Claim 2
Independent Claim 179 words
A method for manipulating an object displayed in three-dimensional representation on a computer controlled display system having a computer and a display coupled to the computer, comprising the steps of: a) providing a user actuated input controller signal for selectively positioning a reference indicator on the display; b) positioning the reference indicator over the displayed object and signaling the computer to activate a control movement mode; c) providing on the display a three-dimensional representation of a bounding region including at least two portions which specify respective predefined control movement types, one of said types being rotation around an axis parallel to the portion which specifies rotation around that axis; d) positioning the reference indicator over one of said portions; e) signaling the computer to activate a predefined control movement type specified by the portion of the bounding region under the reference indicator, and while the reference indicator is over said portion, repositioning the reference indicator to define a movement of the specified type; and f) re-displaying the displayed object in accordance with the defined movement of the specified type.
Claim 3
Dependent Claim 43 words
The method of claim 1 wherein the three-dimensional representation of a bounding region is a generally rectilinear bounding box, and wherein the step of re-displaying further comprises re-displaying the bounding box in accordance with the defined movement of the predefined control movement type.
Claim 4
Dependent Claim 18 words
The method of claim 1 wherein the bounding region is reduced in size relative to the displayed object.
Claim 5
Dependent Claim 14 words
The method of claim 1 wherein the input controller signal is from a mouse.
Claim 6
Dependent Claim 16 words
The method of claim 4 wherein the reference indicator is a pointer displayed on the display.
Claim 7
Dependent Claim 25 words
The method of claim 5 wherein the step of signaling the computer to activate the control movement mode includes the step of activating a switch.
Claim 8
Dependent Claim 19 words
The method of claim 6 wherein the step of activating a switch comprises pressing a button on the mouse.
Claim 9
Dependent Claim 26 words
The method of claim 6 wherein the step of signaling the computer to activate a predefined control movement type includes the step of activating a switch.
Claim 10
Dependent Claim 19 words
The method of claim 8 wherein the step of activating a switch comprises pressing a button on the mouse.
Claim 11
Dependent Claim 45 words
The method of claim 1 further comprising, in step (e), after signaling the computer to activate a predefined control movement type, changing the shape of the reference indicator and thus indicating, to a user of the method, a type and direction of available object manipulations.
Claim 12
Dependent Claim 16 words
The method of claim 1 wherein the portion of the bounding region is an active zone.
Claim 13
Dependent Claim 27 words
The method of claim 1 wherein the portion of the bounding region defines a handle which graphically distinguishes said portion from the remainder of the bounding region.
Claim 14
Dependent Claim 23 words
The method of claim 12 wherein the handle indicates, to a user of the method, a type and direction of available object manipulations.
Claim 15
Dependent Claim 33 words
The method of claim 12 wherein the handle extends outwardly from the bounding region such that the outwardly extending handle presents an appearance of being available to be selected by the reference indicator.
Claim 16
Dependent Claim 13 words
The method of claim 12 wherein the handle is shaped like a rod.
Claim 17
Dependent Claim 13 words
The method of claim 12 wherein the handle is shaped like a cube.
Claim 18
Dependent Claim 13 words
The method of claim 12 wherein the handle is shaped like an arrow.
Claim 19
Dependent Claim 18 words
The method of claim 1 wherein the portion of the bounding region is an image of a hand.
Claim 20
Dependent Claim 23 words
The method of claim 18 wherein the hand indicates to a user of the method a type and direction of available object manipulations.
Claim 21
Dependent Claim 13 words
The method of claim 18 wherein the hand looks like a human hand.
Claim 22
Dependent Claim 19 words
The method of claim 20 wherein the hand appears to be grabbing the three-dimensional representation of a bounding region.
Claim 23
Dependent Claim 13 words
The method of claim 18 wherein the hand looks like a mechanical hand.
Claim 24
Dependent Claim 19 words
The method of claim 22 wherein the hand appears to be grabbing the three-dimensional representation of a bounding region.
Claim 25
Dependent Claim 18 words
The method of claim 1 wherein the predefined control movement type is a translation of the displayed object.
Claim 26
Dependent Claim 18 words
The method of claim 24 wherein the translation of the displayed object is along model space coordinate axes.
Claim 27
Dependent Claim 27 words
The method of claim 25 wherein the translation of the displayed object in model space is parallel to a plane of a face of the bounding region.
Claim 28
Dependent Claim 27 words
The method of claim 25 wherein the translation of the displayed object in model space is perpendicular to a plane of a face of the bounding region.
Claim 29
Dependent Claim 99 words
The method of claim 24 wherein the translation of the displayed object is performed by determining a difference in model space between a position of the reference indicator when the translation operation was activated and a current position of the reference indicator, and transforming the difference into scaled and rotated coordinates using a scale transform and a rotate transform, and adding the transformed difference to a translation transform to create a new translation transform, and wherein re-displaying the displayed object on the video display is in accordance with the scale transform, the rotate transform and the new translation transform.
Claim 30
Dependent Claim 33 words
The method of claim 24 wherein translation of the displayed object is parallel to a plane of a face of the bounding region and is limited to a predefined range of translation manipulations.
Claim 31
Dependent Claim 21 words
The method of claim 1 wherein the axis of rotation of the displayed object is parallel to model space coordinate axes.
Claim 32
Dependent Claim 23 words
The method of claim 30 wherein the rotation of the displayed object in model space is around an axis of the bounding region.
Claim 33
Dependent Claim 18 words
The method of claim 31 wherein the axis of rotation is a center line of the bounding region.
Claim 34
Dependent Claim 17 words
The method of claim 31 wherein the axis of rotation is an edge of the bounding region.
Claim 35
Dependent Claim 28 words
The method of claim 33 wherein the axis of rotation is around a bounding region edge opposite from the portion of the bounding region under the reference indicator.
Claim 36
Dependent Claim 16 words
The method of claim 30 wherein the axis of rotation is outside of the bounding region.
Claim 37
Dependent Claim 102 words
The method of claim 1 wherein the rotation of the displayed object is performed by transforming a position of the reference indicator when the rotation operation was activated by a scale transform, and transforming a current position of the reference indicator by the scale transform and determining an angle created thereby versus a center point of the displayed object, and concatenating a rotation matrix of the angle into a rotation transform to create a new rotation transform, and wherein re-displaying the displayed object on the video display is in accordance with the scale transform, the new rotation transform and a translation transform.
Claim 38
Dependent Claim 21 words
The method of claim 1 wherein a second of the predefined control movement types is a scaling of the displayed object.
Claim 39
Dependent Claim 18 words
The method of claim 37 wherein the scaling of the displayed object is along model space coordinate axes.
Claim 40
Dependent Claim 23 words
The method of claim 38 wherein the scaling in model space is parallel to a plane of a face of the bounding region.
Claim 41
Dependent Claim 10 words
The method of claim 38 wherein the scaling is homogenous.
Claim 42
Dependent Claim 91 words
The method of claim 37 wherein the scaling of the displayed object is performed by determining a ratio of a position of the reference indicator versus an origin of the bounding region when the scaling operation was activated and a current-position of the reference indicator versus the origin of the bounding region and multiplying the ratio with a scale transform to create a new scale transform and wherein re-displaying the displayed object on the video display is in accordance with the new scale transform, a rotate transform and a translation transform.
Claim 43
Dependent Claim 33 words
The method of claim 41 wherein scaling of the displayed object is parallel to a plane of a face of the bounding region and is limited to a predefined range of scaling manipulations.
Claim 44
Independent Claim 163 words
A method for manipulating an object displayed in three-dimensional representation on a computer controlled video display system having a computer, a video display and a mouse, comprising the steps of: a) selecting the displayed object by using the mouse to position a pointer over the displayed object and pressing a button on the mouse; b) displaying a three-dimensional representation of a bounding box having at least two active zones which specify respective available movement types, one of said types being rotation around an axis parallel to the zone which specifies rotation around that axis, when the displayed object is selected; c) defining a movement of a type predefined by one of the active zones by using the mouse to position the pointer over an active zone, pressing the button on the mouse, and, while the pointer is over the active zone, repositioning the pointer with the mouse; and d) re-displaying the bounding box and the displayed object in accordance with the defined movement.
Claim 45
Independent Claim 163 words
A method for manipulating an object displayed in three-dimensional representation on a computer controlled video display system having a computer, a video display and a mouse, comprising the steps of: a) selecting the displayed object by using the mouse to position a pointer over the displayed object and pressing a button on the mouse; b) displaying a three-dimensional representation of a bounding box having at least two active zones which specify respective available movement types, one of said types being rotation around an axis parallel to the zone which specifies rotation around that axis, when the displayed object is selected; c) defining a movement of a type predefined by one of the active zones by using the mouse to position the pointer over an active zone, pressing the button on the mouse, and, while the pointer is over the active zone, repositioning the pointer with the mouse; and d) re-displaying the bounding box and the displayed object in accordance with the defined movement.
Claim 46
Dependent Claim 15 words
The method of claim 43 wherein the available movement types further comprise translation and scaling.
Claim 47
Dependent Claim 118 words
The method of claim 44 wherein if the predefined movement type is translation then the translation of the displayed object and the bounding box is performed by determining a difference in model space between a position of the pointer when the pointer was positioned over the active zone and the mouse button was pressed and a current position of the pointer, and transforming the difference into scaled and rotated coordinates using a scale transform and a rotate transform and adding the transformed difference to a translation transform to create a new translation transform, and wherein re-displaying the bounding box and the displayed object is in accordance with the scale transform, the rotate transform and the new translation transform.
Claim 48
Dependent Claim 125 words
The method of claim 44 wherein if the predefined movement type is rotation then the rotation of the displayed object and the bounding box is performed by transforming a position of the pointer when the pointer was positioned over the active zone and the mouse button was pressed by a scale transform and transforming a current position of the pointer by the scale transform and determining an angle created thereby versus a center point of the displayed object and concatenating a rotation matrix of the angle into a rotation transform to create a new rotation transform, and wherein re-displaying the displayed object and the bounding box on the video display is in accordance with the scale transform, the new rotation transform and a translation transform.
Claim 49
Dependent Claim 115 words
The method of claim 44 wherein if the predefined movement type is scaling then the scaling of the displayed object and the bounding box is performed by determining a ratio of a position of the pointer versus an origin of the bounding box when the pointer was positioned over the active zone and the mouse button was pressed and a current position of the pointer versus the origin of the bounding box and multiplying the ratio with a scaling transform to create a new scaling transform and wherein re-displaying the displayed object and the bounding box on the video display is in accordance with the new scaling transform, a rotate transform and a translation transform.
Claim 50
Independent Claim 169 words
An apparatus for manipulating an object displayed in three-dimensional representation on a computer controlled display system having a computer and a display coupled to the computer, the apparatus comprising: a) means for positioning a reference indicator over the displayed object and signaling the computer to activate a control movement mode; b) means for generating on the display a three-dimensional representation of a bounding region including at least two portions which specify respective predefined control movement types, one of said types being rotation around an axis parallel to the portion which specifies rotation around that axis; c) means for signaling the computer to activate a predefined control movement type specified by a portion of the bounding region under the reference indicator; d) means for repositioning the reference indicator while the reference indicator is over the portion of the bounding region to define a movement of the predefined control movement type; and e) means for re-displaying the displayed object in accordance with the defined movement of the predefined control movement type.
Claim 51
Independent Claim 169 words
An apparatus for manipulating an object displayed in three-dimensional representation on a computer controlled display system having a computer and a display coupled to the computer, the apparatus comprising: a) means for positioning a reference indicator over the displayed object and signaling the computer to activate a control movement mode; b) means for generating on the display a three-dimensional representation of a bounding region including at least two portions which specify respective predefined control movement types, one of said types being rotation around an axis parallel to the portion which specifies rotation around that axis; c) means for signaling the computer to activate a predefined control movement type specified by a portion of the bounding region under the reference indicator; d) means for repositioning the reference indicator while the reference indicator is over the portion of the bounding region to define a movement of the predefined control movement type; and e) means for re-displaying the displayed object in accordance with the defined movement of the predefined control movement type.
Claim 52
Dependent Claim 40 words
The apparatus of claim 48 wherein the three-dimensional representation of a bounding region is a generally rectilinear bounding box, and further comprising means for re-displaying the bounding box in accordance with the defined movement of the predefined control movement type.
Claim 53
Dependent Claim 18 words
The apparatus of claim 48 wherein the bounding region is reduced in size relative to the displayed object.
Claim 54
Dependent Claim 16 words
The apparatus of claim 48 wherein the positioning means and the repositioning means is a mouse.
Claim 55
Dependent Claim 16 words
The apparatus of claim 51 wherein the reference indicator is a pointer displayed on the display.
Claim 56
Dependent Claim 21 words
The apparatus of claim 52 wherein the means for signaling the computer to activate the control movement mode is a switch.
Claim 57
Dependent Claim 14 words
The apparatus of claim 53 wherein the switch is a button on the mouse.
Claim 58
Dependent Claim 22 words
The apparatus of claim 53 wherein the means for signaling the computer to activate a predefined control movement type includes a switch.
Claim 59
Dependent Claim 14 words
The apparatus of claim 55 wherein the switch is a button on the mouse.
Claim 60
Dependent Claim 52 words
The apparatus of claim 48 wherein the means for signaling the computer further comprises means for changing the shape of the reference indicator when the computer has been signaled to activate a predefined control movement type thus indicating to a user of the apparatus a type and direction of available object manipulations.
Claim 61
Dependent Claim 16 words
The apparatus of claim 48 wherein the portion of the bounding region is an active zone.
Claim 62
Dependent Claim 27 words
The apparatus of claim 48 wherein the portion of the bounding region defines a handle which graphically distinguishes said portion from the remainder of the bounding region.
Claim 63
Dependent Claim 23 words
The apparatus of claim 59 wherein the handle indicates, to a user of the apparatus, a type and direction of available object manipulations.
Claim 64
Dependent Claim 33 words
The apparatus of claim 59 wherein the handle extends outwardly from the bounding region such that the outwardly extending handle presents an appearance of being available to be selected by the reference indicator.
Claim 65
Dependent Claim 13 words
The apparatus of claim 59 wherein the handle is shaped like a rod.
Claim 66
Dependent Claim 13 words
The apparatus of claim 59 wherein the handle is shaped like a cube.
Claim 67
Dependent Claim 13 words
The apparatus of claim 59 wherein the handle is shaped like a arrow.
Claim 68
Dependent Claim 18 words
The apparatus of claim 48 wherein the portion of the bounding region is an image of a hand.
Claim 69
Dependent Claim 23 words
The apparatus of claim 65 wherein the hand indicates to a user of the apparatus a type and direction of available object manipulations.
Claim 70
Dependent Claim 13 words
The apparatus of claim 65 wherein the hand looks like a human hand.
Claim 71
Dependent Claim 19 words
The apparatus of claim 67 wherein the hand appears to be grabbing the three-dimensional representation of a bounding region.
Claim 72
Dependent Claim 13 words
The apparatus of claim 65 wherein the hand looks like a mechanical hand.
Claim 73
Dependent Claim 19 words
The apparatus of claim 69 wherein the hand appears to be grabbing the three-dimensional representation of a bounding region.
Claim 74
Dependent Claim 18 words
The apparatus of claim 48 wherein the predefined control movement type is a translation of the displayed object.
Claim 75
Dependent Claim 18 words
The apparatus of claim 71 wherein the translation of the displayed object is along model space coordinate axes.
Claim 76
Dependent Claim 27 words
The apparatus of claim 72 wherein the translation of the displayed object in model space is parallel to a plane of a face of the bounding region.
Claim 77
Dependent Claim 27 words
The apparatus of claim 72 wherein the translation of the displayed object in model space is perpendicular to a plane of a face of the bounding region.
Claim 78
Dependent Claim 99 words
The apparatus of claim 71 wherein the translation of the displayed object is performed by determining a difference in model space between a position of the reference indicator when the translation operation was activated and a current position of the reference indicator and transforming the difference into scaled and rotated coordinates using a scale transform and a rotate transform and adding the transformed difference to a translation transform to create a new translation transform and wherein re-displaying the displayed object on the video display is in accordance with the scale transform, the rotate transform and the new translation transform.
Claim 79
Dependent Claim 33 words
The apparatus of claim 71 wherein translation of the displayed object is parallel to a plane of a face of the bounding region and is limited to a predefined range of translation manipulations.
Claim 80
Dependent Claim 21 words
The apparatus of claim 48 wherein the axis of rotation of the displayed object is parallel to model space coordinate axes.
Claim 81
Dependent Claim 23 words
The apparatus of claim 77 wherein the rotation in model space of the displayed object is around an axis of the bounding region.
Claim 82
Dependent Claim 18 words
The apparatus of claim 78 wherein the axis of rotation is a center line of the bounding region.
Claim 83
Dependent Claim 17 words
The apparatus of claim 78 wherein the axis of rotation is an edge of the bounding region.
Claim 84
Dependent Claim 28 words
The apparatus of claim 80 wherein the axis of rotation is around a bounding region edge opposite from the portion of the bounding region under the reference indicator.
Claim 85
Dependent Claim 16 words
The apparatus of claim 77 wherein the axis of rotation is outside of the bounding region.
Claim 86
Dependent Claim 102 words
The apparatus of claim 48 wherein the rotation of the displayed object is performed by transforming a position of the reference indicator when the rotation operation was activated by a scale transform and transforming a current position of the reference indicator by the scale transform and determining an angle created thereby versus a center point of the displayed object, and concatenating a rotation matrix of the angle into a rotation transform to create a new rotation transform, and wherein re-displaying the displayed object on the video display is in accordance with the scale transform, the new rotation transform and a translation transform.
Claim 87
Dependent Claim 21 words
The apparatus of claim 48 wherein a second of the predefined control movement types is a scaling of the displayed object.
Claim 88
Dependent Claim 18 words
The apparatus of claim 84 wherein the scaling of the displayed object is along model space coordinate axes.
Claim 89
Dependent Claim 23 words
The apparatus of claim 85 wherein the scaling in model space is parallel to a plane of a face of the bounding region.
Claim 90
Dependent Claim 10 words
The apparatus of claim 84 wherein the scaling is homogenous.
Claim 91
Dependent Claim 92 words
The apparatus of claim 84 wherein the scaling of the displayed object is performed by determining a ratio of a position of the reference indicator versus an origin of the bounding region when the scaling operation was activated and a current position of the reference indicator versus the origin of the bounding region and multiplying the ratio with a scale transform to create a new scale transform and wherein re-displaying the displayed object on the video display is in accordance with the new scale transform, a rotate transform and a translation transform.
Claim 92
Dependent Claim 33 words
The apparatus of claim 88 wherein scaling of the displayed object is parallel to a plane of a face of the bounding region and is limited to a predefined range of scaling manipulations.
Claim 93
Independent Claim 170 words
An apparatus for manipulating an object displayed in three-dimensional representation on a computer controlled video display system having a computer, a video display and a mouse, the apparatus comprising: a) means for selecting the displayed object by using the mouse to position a pointer over the displayed object and pressing a button on the mouse; b) means for displaying a three-dimensional representation of a bounding box having at least two active zones which specify respective available movement types, one of said types being rotation around an axis parallel to the zone which specifies rotation around that axis, when the displayed object is selected; c) means for defining a movement of a type predefined by one of the active zones by using the mouse to position the pointer over an active zone, pressing the button on the mouse, and, while the pointer is over the active zone, repositioning the pointer with the mouse; and d) means for re-displaying the bounding box and the displayed object in accordance with the defined movement.
Claim 94
Independent Claim 170 words
An apparatus for manipulating an object displayed in three-dimensional representation on a computer controlled video display system having a computer, a video display and a mouse, the apparatus comprising: a) means for selecting the displayed object by using the mouse to position a pointer over the displayed object and pressing a button on the mouse; b) means for displaying a three-dimensional representation of a bounding box having at least two active zones which specify respective available movement types, one of said types being rotation around an axis parallel to the zone which specifies rotation around that axis, when the displayed object is selected; c) means for defining a movement of a type predefined by one of the active zones by using the mouse to position the pointer over an active zone, pressing the button on the mouse, and, while the pointer is over the active zone, repositioning the pointer with the mouse; and d) means for re-displaying the bounding box and the displayed object in accordance with the defined movement.
Claim 95
Dependent Claim 14 words
The apparatus of claim 90 wherein the available movement types comprise translation and scaling.
Claim 96
Dependent Claim 121 words
The apparatus of claim 91 wherein if the predefined movement type is translation then the translation of the displayed object and the bounding box is performed by a means for determining a difference in model space between a position of the pointer when the pointer was positioned over the active zone and the mouse button was pressed and a current position of the pointer, and transforming the difference into scaled and rotated coordinates using a scale transform and a rotate transform and adding the transformed difference to a translation transform to create a new translation transform, and wherein re-displaying the bounding box and the displayed object is in accordance with the scale transform, the rotate transform and the new translation transform.
Claim 97
Dependent Claim 128 words
The apparatus of claim 91 wherein if the predefined movement type is rotation then the rotation of the displayed object and the bounding box is performed by a means for transforming a position of the pointer when the pointer was positioned over the active zone and the mouse button was pressed by a scale transform and transforming a current position of the pointer by the scale transform and determining an angle created thereby versus a center point of the displayed object and concatenating a rotation matrix of the angle into a rotation transform to create a new rotation transform and wherein re-displaying the displayed object and the bounding box on the video display is in accordance with the scale transform, the new rotation transform and a translation transform.
Claim 98
Dependent Claim 118 words
The apparatus of claim 91 wherein if the predefined movement type is scaling then the scaling of the displayed object and the bounding box is performed by a means for determining a ratio of a position of the pointer versus an origin of the bounding box when the pointer was positioned over the active zone and the mouse button was pressed and a current position of the pointer versus the origin of the bounding box and multiplying the ratio with a scaling transform to create a new scaling transform, and wherein re-displaying the displayed object and the bounding box on the video display is in accordance with the new scaling transform, a rotate transform and a translation transform.

References Cited (Backward Citations)

US5428721A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1999-12-24 2000-06-24 2000-12-24 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2003-12-24 2004-06-24 2004-12-24 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2007-12-24 2008-06-24 2008-12-24 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag