IP Library Granted Patent US 11,651,563
Granted Patent B1
US 11,651,563 · App. 17/169,001 · Granted May 16, 2023

Dockable billboards for labeling objects in a display having a three dimensional perspective of a virtual or real environment

Inventors: Roy Arsan (Sunnyvale, CA); Alexander Raitz (San Francisco, CA); Clark Allan (San Jose, CA); Cary Glen Noel (Pleasant Hill, CA)
Assignee: SPLUNK INC.
G06T19/006G06F3/011
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 11,651,563
App. No.
17/169,001
Filed
Feb 5, 2021
Granted
May 16, 2023
Kind
B1
Art Unit
2613
USPC
345/419
Abstract

A system and method that allows a user to view objects in a three-dimensional environment, where one or more of the objects have a data display (e.g., a data billboard, etc.) that shows data about the object. To enhance user experience and to provide relevant contextual data as the user navigates through the three-dimensional environment, the system calculates a location for the user and a location for each object and determines if a relationship between the user frame of reference and each object location satisfies a first criterion. If the first criterion is satisfied, the system is configured to move the data display to the bottom of a viewing area of the three-dimensional environment (e.g. docking the data display to the bottom of the viewing area, etc.). The system may also arrange the data displays in the same order as the objects are perceived by the user in the three-dimensional environment.

Claims (47)

1. A computer-implemented method, comprising:

rendering a plurality of three-dimensional objects in a three-dimensional environment based on user navigational input, wherein, for each three-dimensional object included in the plurality of three-dimensional objects, a corresponding data display area appears proximate to the three-dimensional object in the three-dimensional environment;

detecting a change in user perspective;

in response to the change in user perspective,

determining that each of two or more three-dimensional objects included in the plurality of three-dimensional objects is within a specified angle of the user perspective and that a distance between each of the two or more three-dimensional objects and the user perspective is less than a threshold distance, and

responsive to the determining, moving two or more data display areas respectively corresponding to each of the two or more three-dimensional objects from appearing proximate to the respective two or more three-dimensional objects to a foreground area of the three-dimensional environment while displaying, for a third three-dimensional object included in the plurality of three-dimensional objects, a third data display area proximate to the third three-dimensional object in the three-dimensional environment; and

rearranging positions of the two or more data display areas located in the foreground area, wherein the rearranged positions reflect the change in user perspective.

2. The computer-implemented method of claim 1 , wherein, for a given data display area corresponding to a given three-dimensional object, the user perspective and relative lateral positions of two or more three-dimensional objects included in the plurality of three-dimensional objects indicate a display order of the two or more three-dimensional objects included in the plurality of three-dimensional objects as viewed from the user perspective, and a foreground location within the foreground area for the data display area corresponding to the given three-dimensional object is determined based on the display order.

3. The computer-implemented method of claim 1 , wherein, for a given data display area corresponding to a given three-dimensional object, a foreground location within the foreground area for the data display area corresponding to the given three-dimensional object is based on an angle between the given three-dimensional object and the user perspective.

4. The computer-implemented method of claim 1 , wherein the data display area corresponding to each three-dimensional object included in the plurality of three-dimensional objects are non-overlapping with one another in the foreground area of the three-dimensional environment.

5. The computer-implemented method of claim 1 , wherein the data display area corresponding to each three-dimensional object included in the plurality of three-dimensional objects comprise content from one or more of: real-time streaming data or non-real-time streaming data.

6. The computer-implemented method of claim 1 , wherein the data display areas, when appearing proximate to each three-dimensional object included in the plurality of three-dimensional objects, are aligned with one of: an area adjacent to the three-dimensional object, an area left of the three-dimensional object, an area right of the three-dimensional object, an area above the three-dimensional object, an area below the three-dimensional object, or an area centered on the three-dimensional object.

7. The computer-implemented method of claim 1 , wherein content displayed in each data display area in the foreground area is the content displayed in the data display area that appears proximate to each corresponding three-dimensional object included in the plurality of three-dimensional objects.

8. The computer-implemented method of claim 1 , wherein content displayed in each data display area in the foreground area is different than content displayed in the data display area that appears proximate to each corresponding three-dimensional object included in the plurality of three-dimensional objects.

9. The computer-implemented method of claim 1 , wherein the plurality of three-dimensional objects is rendered on one or more of: a display of a computing device, a display of a wearable computer, a heads-up display, or a display glass.

10. The computer-implemented method of claim 1 , wherein:

the user perspective corresponds to a position along a path in the three-dimensional environment in which the plurality of three-dimensional objects is rendered, and

the position along the path and the user perspective are determined based on one or more of:

a user's actions relating to one or more user input devices, or

a user's physical position and physical perspective, as detected based on one or more sensors.

11. The computer-implemented method of claim 1 , wherein:

the user perspective corresponds to a position along a path in the three-dimensional environment in which the plurality of three-dimensional objects is rendered, and

the position along the path and the user perspective are determined based on a user's physical position and physical perspective, as detected based on one or more of: an accelerometer, a geosynchronous positioning sensor, a geomagnetic field sensor, an orientation sensor, a gyroscope, a gravity sensor, or a rotation vector sensor.

12. The computer-implemented method of claim 1 , wherein:

the user perspective corresponds to a position along a path in the three-dimensional environment in which the plurality of three-dimensional objects is rendered, the three-dimensional environment is dynamically superimposed with a portion of a real-world three-dimensional environment in which a user moves, and the user navigational input is generated based on one or more sensors configured to track a motion of the user within the real-world three-dimensional environment.

13. One or more non-transitory computer readable storage media storing software instructions that, when executed by one or more processors, cause the one or more processors to perform the steps of:

rendering a plurality of three-dimensional objects in a three-dimensional environment based on user navigational input, wherein, for each three-dimensional object included in the plurality of three-dimensional objects, a corresponding data display area appears proximate to the three-dimensional object in the three-dimensional environment;

detecting a change in user perspective;

in response to the change in user perspective,

determining that each of two or more three-dimensional objects included in the plurality of three-dimensional objects is within a specified angle of the user perspective and that a distance between each of the two or more three-dimensional objects and the user perspective is less than a threshold distance, and

responsive to the determining, moving two or more data display areas respectively corresponding to each of the two or more three-dimensional objects from appearing proximate to the respective two or more three-dimensional objects to a foreground area of the three-dimensional environment while displaying, for a third three-dimensional object included in the plurality of three-dimensional objects, a third data display area proximate to the third three-dimensional object in the three-dimensional environment; and

rearranging positions of the two or more data display areas located in the foreground area, wherein the rearranged positions reflect the change in user perspective.

14. The one or more non-transitory computer readable media of claim 13 , wherein, for a given data display area corresponding to a given three-dimensional object, the user perspective and relative lateral positions of two or more three-dimensional objects of the plurality of three-dimensional objects indicate a display order of the two or more three-dimensional objects of the plurality of three-dimensional objects as viewed from the user perspective and a foreground location within the foreground area for the data display area corresponding to the given three-dimensional object is determined based on the display order.

15. The one or more non-transitory computer readable media of claim 13 , wherein, for a given data display area corresponding to a given three-dimensional object, a foreground location within the foreground area is based on an angle between the given three-dimensional object and the user perspective.

16. The one or more non-transitory computer readable media of claim 13 , wherein the data display area corresponding to each three-dimensional object included in the plurality of three-dimensional objects are non-overlapping with one another in the foreground area of the three-dimensional environment.

17. The one or more non-transitory computer readable media of claim 13 , wherein the data display area corresponding to each three-dimensional object included in the plurality of three-dimensional objects comprise content from one or more of: real-time streaming data or non-real-time streaming data.

18. The one or more non-transitory computer readable media of claim 13 , wherein the data display areas, when appearing proximate to each three-dimensional object included in the plurality of three-dimensional objects, are aligned with one of: an area adjacent to the three-dimensional object, an area left of the three-dimensional object, an area right of the three-dimensional object, an area above the three-dimensional object, an area below the three-dimensional object, or an area centered on the three-dimensional object.

19. A system comprising:

a memory; and

a processor that is coupled to the memory and that:

renders a plurality of three-dimensional objects in a three-dimensional environment based on user navigational input, wherein, for each three-dimensional object included in the plurality of three-dimensional objects, a corresponding data display area appears proximate to the three-dimensional object in the three-dimensional environment;

detects a change in user perspective;

in response to the change in user perspective,

determines that each of two or more three-dimensional objects included in the plurality of three-dimensional objects is within a specified angle of the user perspective and that a distance between each of the two or more three-dimensional objects and the user perspective is less than a threshold distance, and

responsive to the determination, moves two or more data display areas respectively corresponding to each of the two or more three-dimensional objects from appearing proximate to the respective two or more three-dimensional objects to a foreground area of the three-dimensional environment while displaying, for a third three-dimensional object included in the plurality of three-dimensional objects, a third data display area proximate to the third three-dimensional object in the three-dimensional environment; and

rearranges positions of the two or more data display areas located in the foreground area, wherein the rearranged positions reflect the change in user perspective.

20. The system of claim 19 , wherein, for a given data display area corresponding to a given three-dimensional object, the user perspective and relative lateral positions of two or more three-dimensional objects of the plurality of three-dimensional objects indicate a display order of the two or more three-dimensional objects of the plurality of three-dimensional objects as viewed from the user perspective and a foreground location within the foreground area for the data display area corresponding to the given three-dimensional object is determined based on the display order.

Assignments (3)
CHANGE OF NAME Recorded Jul 22, 2025
From: SPLUNK INC.
To: SPLUNK LLC
Reel/Frame 072170/0599 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 22, 2025
From: SPLUNK LLC
To: CISCO TECHNOLOGY, INC.
Reel/Frame 072173/0058 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 9, 2021
From: ARSAN, ROY; RAITZ, ALEXANDER; ALLAN, CLARK; NOEL, CARY GLEN
To: SPLUNK INC.
Reel/Frame 056490/0530 →
Continuity (3)
Continuation 16515429 · Jul 18, 2019
Continuation 14266511 · Apr 30, 2014
Provisional Application 61860882 · Jul 31, 2013
Cited By (3)
US 12,602,108 US 12,613,575 US 12,670,680