IP Library Granted Patent US 10,109,098
Granted Patent B2
US 10,109,098 · App. 15/622,520 · Granted Oct 23, 2018

Systems and methods for displaying representative images

Inventors: Adam Barry Feder (Mountain View, CA); Brian J. Kindle (Sunnyvale, CA); William Guie Rivard (Menlo Park, CA)
Assignee: DUELIGHT LLC
G06T13/80G06F3/0346G06F3/0484G06T3/60G09G5/37G06F3/0482G06F3/0485G06F2200/1614G06F2200/1637G06T1/20G09G2340/0492
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,109,098
App. No.
15/622,520
Granted
Oct 23, 2018
Kind
B2
Abstract

A system, method, and computer program product for displaying representative images within a collection viewer is disclosed. The method comprises receiving an indication of a new orientation for the collection viewer, displaying a sequence of animation frames that depict an in-place rotation animation for the representative images, generating a rotation angle in a sequence of rotation angles, and displaying a rendered representative image for each of the two or more representative images by rendering the two or more representative images, wherein each rendered representative image is rotated according to the rotation angle.

Claims (46)

1. A method, comprising:

displaying, on a display unit of a mobile computing device, two or more representative images within a collection viewer, wherein each one of the two or more representative images is displayed at a respective location relative to a physical origin for the display unit;

receiving an indication of a new orientation for the collection viewer; and

in response to the indication, displaying a sequence of animation frames that depict an in-place rotation animation for each of the two or more representative images, wherein each in-place rotation animation is displayed at the respective location relative to the physical origin for the display unit, and wherein each animation frame in the sequence of animation frames depicts a different rotation angle in a sequence of rotation angles for the two or more representative images by:

generating the different rotation angle for each animation frame in the sequence of animation frames; and

displaying a rendered representative image for each of the two or more representative images at the respective location relative to the physical origin for the display unit, wherein each rendered representative image is rotated according to the different rotation angle,

wherein a first timing is associated with the in-place rotation animation and a second timing is associated with a physical rotation timing, and the first timing commences after the second timing commences;

wherein a hysteresis is applied such that when a change of a physical rotation surpasses a rotational threshold, a notification of the new orientation is received;

wherein, in response to the notification, each in-place rotation animation is timed independently of the physical rotation and each in-place rotation animation fully completes before a subsequent in-place rotation animation begins.

2. The method of claim 1 , wherein the indication comprises a message in an object-based message passing system.

3. The method of claim 1 , wherein the indication is generated in response to a measurement of a physical force associated with a mobile computing device.

4. The method of claim 1 , wherein displaying the two or more representative images comprises identifying representative images that are visible within the collection viewer.

5. The method of claim 1 , wherein the respective location for each of the two or more representative images is determined in one or more animation frames of the sequence of animation frames according to a current scroll position.

6. The method of claim 1 , wherein displaying the sequence of rotation angles is performed by a graphics processing unit within a mobile computing device.

7. A computer program product embodied in a non-transitory computer-readable medium that, when executed by a processor, causes the processor to perform a method comprising:

displaying, on a display unit of a mobile computing device, two or more representative images within a collection viewer, wherein each one of the two or more representative images is displayed at a respective location relative to a physical origin for the display unit;

receiving an indication of a new orientation for the collection viewer; and

in response to the indication, displaying a sequence of animation frames that depict an in-place rotation animation for each of the two or more representative images, wherein each in-place rotation animation is displayed at the respective location relative to the physical origin for the display unit, and wherein each animation frame in the sequence of animation frames depicts a different rotation angle in a sequence of rotation angles for the two or more representative images by:

generating the different rotation angle for each animation frame in the sequence of animation frames; and

displaying a rendered representative image for each of the two or more representative images at the respective location relative to the physical origin for the display unit, wherein each rendered representative image is rotated according to the different rotation angle;

wherein a first timing is associated with the in-place rotation animation and a second timing is associated with a physical rotation timing, and the first timing commences after the second timing commences;

wherein a hysteresis is applied such that when a change of a physical rotation surpasses a rotational threshold, a notification of the new orientation is received;

wherein, in response to the notification, each in-place rotation animation is timed independently of the physical rotation and each in-place rotation animation fully completes before a subsequent in-place rotation animation begins.

8. The computer program product of claim 7 , wherein the indication comprises a message in an object-based message passing system.

9. The computer program product of claim 7 , wherein the indication is generated in response to a measurement of a physical force associated with a mobile computing device.

10. The computer program product of claim 7 , wherein displaying the two or more representative images comprises identifying representative images that are visible within the collection viewer.

11. The computer program product of claim 7 , wherein the respective location for each of the two or more representative images is determined in one or more animation frames of the sequence of animation frames according to a current scroll position.

12. The computer program product of claim 7 , wherein displaying the sequence of rotation angles is performed by a graphics processing unit within a mobile computing device.

13. A mobile computing device comprising:

a display unit configured to display a collection viewer; and

a processing unit in communication with the display unit and configured to:

display two or more representative images within the collection viewer, wherein each one of the two or more representative images is displayed at a respective location relative to a physical origin for the display unit;

receive an indication of a new orientation for the collection viewer; and

in response to the indication, display a sequence of animation frames that depict an in-place rotation animation for each of the two or more representative images, wherein each in-place rotation animation is displayed at the respective location relative to the physical origin for the display unit, and wherein each animation frame in the sequence of animation frames depicts a different rotation angle in a sequence of rotation angles for the two or more representative images by:

generating the different rotation angle for each animation frame in the sequence of animation frames; and

displaying a rendered representative image for each of the two or more representative images at the respective location relative to the physical origin for the display unit, wherein each rendered representative image is rotated according to the different rotation angle;

wherein a first timing is associated with the in-place rotation animation and a second timing is associated with a physical rotation timing, and the first timing commences after the second timing commences;

wherein a hysteresis is applied such that when a change of a physical rotation surpasses a rotational threshold, a notification of the new orientation is received;

wherein, in response to the notification, each in-place rotation animation is timed independently of the physical rotation and each in-place rotation animation fully completes before a subsequent in-place rotation animation begins.

14. The method of claim 1 , wherein the first timing associated with each in-place rotation animation is based, at least in part, on tracking a physical rotation associated with the new orientation for the collection viewer.

15. The method of claim 1 , wherein each in-place rotation animation starts with a first frame of the sequence of animation frames and ends with a last frame of the sequence of animation frames, wherein the last frame corresponds to the new orientation for the collection viewer.

16. The method of claim 1 , wherein the in-place rotation animation for each of the two or more representative images completes the respective rotation angle in the sequence of rotation angles within a specified maximum number of frame times.

17. The method of claim 1 , wherein the in-place rotation animation for each of the two or more representative images occurs synchronously with respect to the in-place rotation animations of other representative images of the two or more representative images.

18. The method of claim 1 , wherein a placement of the rendered representative image for each of the two or more representative images is consistent with a placement of the two or more representative images.

19. The method of claim 1 , wherein the new orientation is based on rotating the display unit from at least one of a landscape orientation to a portrait orientation, the portrait orientation to the landscape orientation, or a combination of the landscape orientation to the portrait orientation and the portrait orientation to the landscape orientation.

20. The method of claim 1 , wherein a third timing of the sequence of animation frames is based on a timing of a physical rotation.

Assignments (2)
SECURITY INTEREST Recorded Jul 30, 2021
From: DUELIGHT, LLC
To: ZILKA KOTAB, P.C.
Reel/Frame 057043/0301 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 20, 2018
From: FEDER, ADAM BARRY; KINDLE, BRIAN J.; RIVARD, WILLIAM GUIE
To: DUELIGHT LLC
Reel/Frame 045603/0732 →
Continuity (3)
Continuation 14340557 · Jul 24, 2014
Provisional Application 61958324 · Jul 25, 2013
Related Publication 20170278292A1 · Sep 28, 2017
Cited By (5)
US 12,401,911 US 12,401,912 US 12,418,727 US 12,445,736 US 12,666,159