IP Library Granted Patent US 11,551,410
Granted Patent B2
US 11,551,410 · App. 17/372,333 · Granted Jan 10, 2023

Multi-modal method for interacting with 3D models

Inventors: Matthew Bell (Palo Alto, CA); Michael Beebe (San Carlos, CA)
Assignee: Matterport, Inc.
G06T17/00G06T19/003G06T2210/04
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,551,410
App. No.
17/372,333
Granted
Jan 10, 2023
Kind
B2
Abstract

The present disclosure concerns a methodology that allows a user to “orbit” around a model on a specific axis of rotation and view an orthographic floor plan of the model. A user may view and “walk through” the model while staying at a specific height above the ground with smooth transitions between orbiting, floor plan, and walking modes.

Claims (40)

1. A system, comprising:

a processor; and

a memory communicatively coupled to the processor, the memory having stored therein computer-executable instructions, the memory comprising:

an interface component configured to:

generate a graphical user interface that facilitates viewing and navigating a three-dimensional model from different perspectives of a virtual camera in an orbit navigational mode and a walking navigational mode, the walking navigational mode including a first field of view of the virtual camera being at a predetermined height above a ground of the three-dimensional model, the orbit navigational mode including a second field of view of the virtual camera being above the predetermined height;

receive user input indicating a transition from the orbit navigational mode to the walking navigational mode;

determine a current position of the virtual camera below the second field of view within the three-dimensional model;

determine if the current position collides with a portion of the three-dimensional model;

if the current position collides with a portion of the three-dimensional model, select a first position as a new target position such that the first position does not collide with the three-dimensional model, the selecting the first position including placing a series of successively larger concentric circles surrounding the current position until a portion of at least one of the concentric circles no longer collides with the three-dimensional model and selecting the first position to be at the portion of the at least one of the concentric circles; and

generate at least one representation of the three-dimensional model in the graphical user interface from a perspective of the walking navigational mode at the first position.

2. The system of claim 1 , wherein the interface component configured to determine if the current position collides with a portion of the three-dimensional model comprises the interface component configured to determine if the current position collides with an object within the three-dimensional model.

3. The system of claim 1 , wherein the interface component configured to determine if the current position collides with a portion of the three-dimensional model comprises the interface component configured to determine if the current position collides with a wall within the three-dimensional model.

4. The system of claim 1 , wherein the second field of view of the orbit navigational mode is about an axis of rotation.

5. The system of claim 1 , wherein the second field of view of the orbit navigational mode is of an orthographic floor plan of the three-dimensional model.

6. The system of claim 1 , wherein the orbit navigational mode comprises a floor plan mode.

7. The system of claim 1 , wherein the orbit navigational mode enables pitch movement of the second field of view.

8. The system of claim 1 , wherein the orbit navigational mode enables zooming in and out.

9. The system of claim 1 , wherein the interface component configured to receive the user input indicating the transition from the orbit navigational mode to the walking navigational mode comprises receiving a user selection of the current position.

10. A method comprising:

generating a graphical user interface that facilitates viewing and navigating a three-dimensional model from different perspectives of a virtual camera in an orbit navigational mode and a walking navigational mode, the walking navigational mode including a first field of view of the virtual camera being at a predetermined height above a ground of the three-dimensional model, the orbit navigational mode including a second field of view of the virtual camera being above the predetermined height;

receiving user input indicating a transition from the orbit navigational mode to the walking navigational mode;

determining a current position of the virtual camera below the second field of view within the three-dimensional model;

determining if the current position collides with a portion of the three-dimensional model;

if the current position collides with a portion of the three-dimensional model, selecting a first position as a new target position such that the first position does not collide with the three-dimensional model, the selecting the first position including placing a series of successively larger concentric circles surrounding the current position until a portion of at least one of the concentric circles no longer collides with the three-dimensional model and selecting the first position to be at the portion of the at least one of the concentric circles; and

generating at least one representation of the three-dimensional model in the graphical user interface from a perspective of the walking navigational mode at the first position.

11. The method of claim 10 , wherein determining if the current position collides with a portion of the three-dimensional model comprises determining if the current position collides with an object within the three-dimensional model.

12. The method of claim 10 , wherein determining if the current position collides with a portion of the three-dimensional model comprises determining if the current position collides with a wall within the three-dimensional model.

13. The method of claim 10 , wherein the second field of view of the orbit navigational mode is about an axis of rotation.

14. The method of claim 10 , wherein the second field of view of the orbit navigational mode is of an orthographic floor plan of the three-dimensional model.

15. The method of claim 10 , wherein the orbit navigational mode comprises a floor plan mode.

16. The method of claim 10 , wherein the orbit navigational mode enables pitch movement of the second field of view.

17. The method of claim 10 , wherein the orbit navigational mode enables zooming in and out.

18. The method of claim 10 , wherein receiving the user input indicating the transition from the orbit navigational mode to the walking navigational mode comprises receiving a user selection of the current position.

19. A non-transitory computer-readable medium having instructions stored thereon that, in response to execution, cause a system including a processor to perform operations, comprising:

generating a graphical user interface that facilitates viewing and navigating a three-dimensional model from different perspectives of a virtual camera in an orbit navigational mode and a walking navigational mode, the walking navigational mode including a first field of view of the virtual camera being at a predetermined height above a ground of the three-dimensional model, the orbit navigational mode including a second field of view of the virtual camera being above the predetermined height;

receiving user input indicating a transition from the orbit navigational mode to the walking navigational mode;

determining a current position of the virtual camera below the second field of view within the three-dimensional model;

determining if the current position collides with a portion of the three-dimensional model;

if the current position collides with a portion of the three-dimensional model, selecting a first position as a new target position such that the first position does not collide with the three-dimensional model, the selecting the first position including placing a series of successively larger concentric circles surrounding the current position until a portion of at least one of the concentric circles no longer collides with the three-dimensional model and selecting the first position to be at the portion of the at least one of the concentric circles; and

generating at least one representation of the three-dimensional model in the graphical user interface from a perspective of the walking navigational mode at the first position.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 25, 2025
From: MATTERPORT, LLC
To: COSTAR REALTY INFORMATION, INC.
Reel/Frame 072938/0425 →
MERGER AND CHANGE OF NAME Recorded Sep 10, 2025
From: MATTERPORT, INC.; MATRIX MERGER SUB II LLC
To: MATTERPORT, LLC
Reel/Frame 072827/0559 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 9, 2021
From: BELL, MATTHEW; BEEBE, MICHAEL
To: MATTERPORT, INC.
Reel/Frame 056821/0076 →
Continuity (5)
Continuation 16386910 · Apr 17, 2019
Continuation 15722269 · Oct 2, 2017
Continuation 13925772 · Jun 24, 2013
Provisional Application 61663265 · Jun 22, 2012
Related Publication 20210335034A1 · Oct 28, 2021
Cited By (1)
US 12,217,311