IP Library Granted Patent US 10,304,240
Granted Patent B2
US 10,304,240 · App. 15/722,269 · Granted May 28, 2019

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 10,304,240
App. No.
15/722,269
Granted
May 28, 2019
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 (44)

1. A system, comprising:

a processor; and

a memory communicatively coupled to the processor, the memory having stored therein computer-executable instructions, 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 different navigation modes, wherein the different navigation modes comprises a walking mode that provides one or more perspectives of the different perspectives from the virtual camera representative of walking in the three-dimensional model;

receive user input indicating a target position of the virtual camera in the walking mode;

in response to a determination that the target position of the virtual camera creates a conflict with a portion of the three-dimensional model:

select a new target position that resolves the conflict, wherein the new target position is selected from predetermined positions, and wherein a predetermined position of the predetermined positions is selected based upon iterative placement of a bottom of a user volume at a local floor height at points respectively associated with the predetermined positions of a series of successively larger areas surrounding the target position until a point is located that resolves the conflict, and set the point as the new target position, and

generate at least one representation of the three-dimensional model in the graphical user interface from at least one of the different perspectives based on the new target position.

2. The system of claim 1 , the memory further comprising a transition component configured to transition, according to a transition function, from a first representation of the three-dimensional model at a first perspective associated with a current position of the virtual camera to a second representation of the three-dimensional model at a second perspective associated with the new target position.

3. The system of claim 2 , wherein the user input further comprises a target orientation, the first perspective is further associated with a current orientation of the virtual camera, and the second perspective is further associated with the target orientation of the virtual camera.

4. The system of claim 2 , wherein the transition function employs interpolation over a time interval to generate a smooth visual transition between the first representation of the three-dimensional model and the second representation of the three-dimensional model.

5. The system of claim 1 , wherein the different navigation modes further comprise at least one of:

a floor plan mode that provides perspectives of the three-dimensional model from the virtual camera positioned outside and above the three-dimensional model and with a view of the three-dimensional model that has a pitch direction of the view locked substantially orthogonally orientated relative to a horizontal surface of the three-dimensional model, and wherein the floor plan mode enables spatial motion of the virtual camera while maintaining the substantially orthogonal orientation of the view relative to the horizontal surface, or

an orbit mode that provides perspectives of the three-dimensional model from the virtual camera positioned outside of the three-dimensional model based upon a point of the three-dimensional model.

6. The system of claim 1 , wherein the areas are circles.

7. The system of claim 1 , wherein the three-dimensional model represents a floor plan of a building.

8. A method, comprising:

generating, by a system comprising a processor, a graphical user interface viewing and navigating a three-dimensional model from different perspectives of a virtual camera in different navigation modes, wherein the different navigation modes comprises a walking mode that provides one or more perspectives of the different perspectives from the virtual camera representative of walking in the three-dimensional model;

receiving, by the system, user input indicating a target position of the virtual camera in the walking mode;

in response to a determination that the target position of the virtual camera creates a conflict with a portion of the three-dimensional model:

selecting, by the system, a new target position that resolves the conflict, wherein the new target position is selected from predetermined positions, and wherein a predetermined position of the predetermined positions is selected based upon iterative placement of a bottom of a user volume at a local floor height at points respectively associated with the predetermined positions of a series of successively larger areas surrounding the target position until a point is located that resolves the conflict, and set the point as the new target position; and

generating, by the system, at least one representation of the three-dimensional model in the graphical user interface from at least one of the different perspectives based on the new target position.

9. The method of claim 8 , further comprising transitioning, by the system according to a transition function, from a first representation of the three-dimensional model at a first perspective associated with a current position of the virtual camera to a second representation of the three-dimensional model at a second perspective associated with the new target position.

10. The method of claim 9 , wherein the user input further comprises a target orientation, the first perspective is further associated with a current orientation of the virtual camera, and the second perspective is further associated with the target orientation of the virtual camera.

11. The method of claim 9 , wherein the transition function employs interpolation over a time interval to generate a smooth visual transition between the first representation of the three-dimensional model and the second representation of the three-dimensional model.

12. The method of claim 8 , wherein the different navigation modes further comprise at least one of:

a floor plan mode that provides perspectives of the three-dimensional model from the virtual camera positioned outside and above the three-dimensional model and with a view of the three-dimensional model that has a pitch direction of the view locked substantially orthogonally orientated relative to a horizontal surface of the three-dimensional model, and wherein the floor plan mode enables spatial motion of the virtual camera while maintaining the substantially orthogonal orientation of the view relative to the horizontal surface, or

an orbit mode that provides perspectives of the three-dimensional model from the virtual camera positioned outside of the three-dimensional model based upon a point of the three-dimensional model.

13. The method of claim 8 , wherein the areas are circles.

14. 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 different navigation modes, wherein the different navigation modes comprises a walking mode that provides one or more perspectives of the different perspectives from the virtual camera representative of walking in the three- dimensional model;

receiving user input indicating a target position of the virtual camera in the walking mode;

in response to a determination that the target position of the virtual camera creates a conflict with a portion of the three-dimensional model:

selecting a new target position that resolves the conflict, wherein the new target position is selected from predetermined positions, and wherein a predetermined position of the predetermined positions is selected based upon iterative placement of a bottom of a user volume at a local floor height at points respectively associated with the predetermined positions of a series of successively larger areas surrounding the target position until a point is located that resolves the conflict, and set the point as the new target position; and

generating at least one representation of the three-dimensional model in the graphical user interface from at least one of the different perspectives based on the new target position.

15. The non-transitory computer-readable medium of claim 14 , further comprising transitioning, according to a transition function, from a first representation of the three-dimensional model at a first perspective associated with a current position of the virtual camera to a second representation of the three-dimensional model at a second perspective associated with the new target position.

16. The non-transitory computer-readable medium of claim 15 , wherein the user input further comprises a target orientation, the first perspective is further associated with a current orientation of the virtual camera, and the second perspective is further associated with the target orientation of the virtual camera.

17. The non-transitory computer-readable medium of claim 15 , wherein the transition function employs interpolation over a time interval to generate a smooth visual transition between the first representation of the three-dimensional model and the second representation of the three-dimensional model.

18. The non-transitory computer-readable medium of claim 14 , wherein the different navigation modes further comprise at least one of:

a floor plan mode that provides perspectives of the three-dimensional model from the virtual camera positioned outside and above the three-dimensional model and with a view of the three-dimensional model that has a pitch direction of the view locked substantially orthogonally orientated relative to a horizontal surface of the three-dimensional model, and wherein the floor plan mode enables spatial motion of the virtual camera while maintaining the substantially orthogonal orientation of the view relative to the horizontal surface, or

an orbit mode that provides perspectives of the three-dimensional model from the virtual camera positioned outside of the three-dimensional model based upon a point of the three-dimensional model.

19. The non-transitory computer-readable medium of claim 14 , wherein the areas are circles.

20. The non-transitory computer-readable medium of claim 14 , wherein the three-dimensional model represents a floor plan of a building.

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 Oct 2, 2017
From: BELL, MATTHEW; BEEBE, MICHAEL
To: MATTERPORT, INC.
Reel/Frame 043753/0637 →
Continuity (3)
Continuation 13925772 · Jun 24, 2013
Provisional Application 61663265 · Jun 22, 2012
Related Publication 20180025536A1 · Jan 25, 2018
Cited By (1)
US 12,217,311