# US 8,542,238 B2 · User interface for controlling animation of an object

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,542,238 B2
- Document ID: US8542238B2
- Status: Granted
- Kind: B2
- Application number: 12/729,912
- Filed: 2010-03-23
- Published: 2010-08-05
- Granted: 2013-09-24
- Earliest claimed: 2004-04-16
- Assignees: Apple Inc.
- Applicants: Gregory E. Niles; Stephen M. Sheeler; Guido Hucking
- Inventors: Gregory E. Niles; Stephen M. Sheeler; Guido Hucking
- Web page: https://patentgrep.com/patent/US8542238B2

## CPC

- G06T 13/00: Animation
- G06T 13/20: Three-dimensional [3D] animation
- G06T 2200/24: involving graphical user interfaces [GUIs]
- G06T 2213/12: Rule based animation
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL

## Abstract

A user can control the animation of an object via an interface that includes a control area and a user-manipulable control element. In one embodiment, the control area includes an ellipse, and the user-manipulable control element includes an arrow. In yet another embodiment, the control area includes an ellipse, and the user-manipulable control element includes two points on the circumference of the ellipse. In yet another embodiment, the control area includes a first rectangle, and the user-manipulable control element includes a second rectangle. In yet another embodiment, the user-manipulable control element includes two triangular regions, and the control area includes an area separating the two regions.

## Claims

### Claim 1

A computer-implemented method for animating an object according to a speed with which the object rotates and a direction in which the object rotates, the method comprising:
displaying a user interface comprising:
a control area comprising an ellipse; and
a user-manipulable control element located within the control area, and including an arrow having a curved body, a variable length specifying the rotation speed, and a variable direction specifying the rotation direction, and wherein the curved body of the arrow comprises an arc of the circumference of the ellipse, and the tail and the head of the arrow are located on the circumference of the ellipse, the arrow pointing along the circumference of the ellipse;
receiving user input via the user-manipulable control element, the input comprising dragging the head of the arrow to set the arrow's length and the arrow's direction;
responsive to the set length of the arrow exceeding the circumference of the ellipse, displaying a multiplier value indicating a number of revolutions of the arrow head around the circumference of the ellipse included in the set length; and
animating the object based on the received input.

### Claim 2 (depends on 1)

The method of claim 1, wherein animating the object further comprises rotating the object about an anchor point.

### Claim 3 (depends on 1)

The method of claim 1, wherein the object is animated using a Spin behavior.

### Claim 4 (depends on 3)

The method of claim 3, wherein the Spin behavior includes an additional parameter that cannot be set using the user-manipulable control element.

### Claim 5 (depends on 3)

The method of claim 3, wherein the Spin behavior includes an Increment parameter that indicates how the Spin behavior's effect progresses over the Spin behavior's duration.

### Claim 6 (depends on 5)

The method of claim 5, wherein the Increment parameter has a value of Continuous Rate, and wherein animating the object further comprises rotating the object at a steady rate.

### Claim 7 (depends on 6)

The method of claim 6, wherein the steady rate is indicated by a Spin Rate parameter.

### Claim 8 (depends on 6)

The method of claim 6, wherein the steady rate is measured in degrees per second.

### Claim 9 (depends on 5)

The method of claim 5, wherein the Increment parameter has a value of Ramp to Final Value, and wherein animating the object further comprises rotating the object a particular amount over a duration of the Spin behavior.

### Claim 10 (depends on 9)

The method of claim 9, wherein the particular amount is indicated by a Spin To parameter.

### Claim 11 (depends on 9)

The method of claim 9, wherein the particular amount is measured in degrees.

### Claim 12 (depends on 1)

The method of claim 1, wherein a portion of the user interface is semi-transparent.

### Claim 13 (depends on 1)

The method of claim 1, further comprising responsive to the set length of the arrow being less than the circumference of the ellipse, not displaying the multiplier value indicating the number of revolutions of the arrow head around the circumference of the ellipse included in the set length.

### Claim 14

A non-transitory computer-readable medium having stored thereon data representing instructions that, when executed by a processor, cause the processor to perform operations comprising:
displaying a user interface comprising:
a control area comprising an ellipse; and
a user-manipulable control element located within the control area, and including an arrow having a curved body, a variable length specifying the rotation speed, and a variable direction specifying the rotation direction, and wherein the curved body of the arrow comprises an arc of the circumference of the ellipse, and the tail and the head of the arrow are located on the circumference of the ellipse, the arrow pointing along the circumference of the ellipse;
receiving user input via the user-manipulable control element, the input comprising dragging the head of the arrow to set the arrow's length and the arrow's direction;
responsive to the set length of the arrow exceeding the circumference of the ellipse, displaying a multiplier value indicating a number of revolutions of the arrow head around the circumference of the ellipse included in the set length; and
animating the object based on the received input.

### Claim 15 (depends on 14)

The computer-readable medium of claim 14, wherein animating the object further comprises rotating the object about an anchor point.

### Claim 16 (depends on 14)

The computer-readable medium of claim 14, wherein the object is animated using a Spin behavior.

### Claim 17 (depends on 16)

The computer-readable medium of claim 16, wherein the Spin behavior includes an Increment parameter that indicates how the Spin behavior's effect progresses over the Spin behavior's duration.

### Claim 18 (depends on 17)

The computer-readable medium of claim 17, wherein the Increment parameter has a value of Continuous Rate, and wherein animating the object further comprises rotating the object at a steady rate.

### Claim 19 (depends on 17)

The computer-readable medium of claim 17, wherein the Increment parameter has a value of Ramp to Final Value, and wherein animating the object further comprises rotating the object a particular amount over a duration of the Spin behavior.

### Claim 20

A system for animating an object according to a speed with which the object rotates and a direction in which the object rotates, the system comprising:
a non-transitory computer-readable medium having stored thereon data representing instructions that, when executed by a processor, cause the processor to perform operations comprising:
displaying a user interface comprising:
a control area comprising an ellipse; and
a user-manipulable control element located within the control area, and including an arrow having a curved body, a variable length specifying the rotation speed, and a variable direction specifying the rotation direction, and wherein the curved body of the arrow comprises an arc of the circumference of the ellipse, and wherein the tail and the head of the arrow are located on the circumference of the ellipse, the arrow pointing along the circumference of the ellipse;
receiving user input via the user-manipulable control element, the input comprising dragging the head of the arrow to set the arrow's length and the arrow's direction;
responsive to the set length of the arrow exceeding the circumference of the ellipse, displaying a multiplier value indicating a number of revolutions of the arrow head around the circumference of the ellipse included in the set length; and
animating the object based on the received input; and
a processor for performing the operations.
