Multi-modal method for interacting with 3D models
First Claim
Patent Images
1. A system, comprising:
- a memory that stores computer executable components;
a processor that executes at least the following computer executable components stored in the memory;
an interface component that configures a graphical user interface that facilitates viewing and navigating a three-dimensional model from different perspectives of a virtual camera, wherein the different perspectives are based on different navigation modes including;
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;
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, anda walking mode that provides perspectives of the three-dimensional model from the virtual camera positioned at an approximately consistent distance relative to a plane based on the three-dimensional model;
a rendering component configured to generate representations of the three-dimensional model from the different perspectives based on user input indicating position and orientation of the virtual camera and a selected mode;
wherein the interface component is further configured to, in response to a determination that a user volume associated with a target position creates a conflict with a portion of the three-dimensional model, iteratively place a bottom of the user volume at a local floor height at points 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 target position; and
a transition component configured to receive a request to transition from a first perspective of the three-dimensional model in a first mode of the different navigation modes to a second perspective of the three-dimensional model in a second mode of the different navigation modes, wherein based on the request the transition component is configured to determine a second set of parameters corresponding to the target position and orientation of the virtual camera relative to the three-dimensional model at the second perspective based in part on a first set of parameters corresponding to a position or orientation of the virtual camera relative to the three-dimensional model at the first perspective, and employ a transition function to interpolate from the first set of parameters to the second set of parameters to generate a smooth visual transition between a first representation of the three-dimensional model at the first perspective to a second representation of the three-dimensional model at the second perspective, wherein the transition function provides an accelerating portion of an interpolation between two values followed by a decelerating portion of the interpolation between the two values.
1 Assignment
0 Petitions
Accused Products
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.
-
Citations
58 Claims
-
1. A system, comprising:
-
a memory that stores computer executable components; a processor that executes at least the following computer executable components stored in the memory; an interface component that configures a graphical user interface that facilitates viewing and navigating a three-dimensional model from different perspectives of a virtual camera, wherein the different perspectives are based on different navigation modes including; 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; 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, and a walking mode that provides perspectives of the three-dimensional model from the virtual camera positioned at an approximately consistent distance relative to a plane based on the three-dimensional model; a rendering component configured to generate representations of the three-dimensional model from the different perspectives based on user input indicating position and orientation of the virtual camera and a selected mode; wherein the interface component is further configured to, in response to a determination that a user volume associated with a target position creates a conflict with a portion of the three-dimensional model, iteratively place a bottom of the user volume at a local floor height at points 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 target position; and a transition component configured to receive a request to transition from a first perspective of the three-dimensional model in a first mode of the different navigation modes to a second perspective of the three-dimensional model in a second mode of the different navigation modes, wherein based on the request the transition component is configured to determine a second set of parameters corresponding to the target position and orientation of the virtual camera relative to the three-dimensional model at the second perspective based in part on a first set of parameters corresponding to a position or orientation of the virtual camera relative to the three-dimensional model at the first perspective, and employ a transition function to interpolate from the first set of parameters to the second set of parameters to generate a smooth visual transition between a first representation of the three-dimensional model at the first perspective to a second representation of the three-dimensional model at the second perspective, wherein the transition function provides an accelerating portion of an interpolation between two values followed by a decelerating portion of the interpolation between the two values. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29)
-
-
30. A method comprising:
using a processor to execute the following computer executable instructions stored in a memory to perform the following acts; configuring a graphical user interface that facilitates viewing and navigating a three-dimensional model from different perspectives of a virtual camera, wherein the different perspectives are based on different navigation modes including; an orbit mode that provides perspectives of the three-dimensional model from the virtual camera positioned outside of the three-dimensional model and at various rotations around a vertical axis perpendicular to a floor of the three-dimensional model, 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 the floor of the three-dimensional model, and wherein the floor plan mode enables spatial motion of the virtual camera while maintaining the substantially orthogonally orientation of the view relative to the horizontal surface, and a walking mode that provides perspectives of the three-dimensional model from the virtual camera positioned at an approximately consistent distance relative to a defined surface of the three-dimensional model; generating representations of the three-dimensional model from the different perspectives based on user input identifying position and orientation of the virtual camera and a selected mode; in response to determining that a user volume associated with a target position creates a conflict with a portion of the three-dimensional model, iteratively placing a bottom of the user volume at a local floor height at points of a series of successively larger areas surrounding the target position until a point is located that resolves the conflict, and setting the point as the target position; receiving a request to transition from a first perspective of the three-dimensional model in a first mode of the different navigation modes to a second perspective of the three-dimensional model in a second mode of the different navigation modes; in response to the request, determining a second set of parameters corresponding to the target position and orientation of the virtual camera relative to the three-dimensional model at the second perspective, based in part on a first set of parameters corresponding to a position or orientation of the virtual camera relative to the three-dimensional model at the first perspective; and generating a smooth visual transition between a first representation of the three-dimensional model at the first perspective to a second representation of the three-dimensional model at the second perspective by interpolating from the first set of parameters to the second set of parameters using a transition function, wherein the transition function provides an accelerating portion of an interpolation between two values followed by a decelerating portion of the interpolation between the two values. - View Dependent Claims (31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49)
-
50. A non-transitory computer-readable storage medium comprising computer-readable instructions that, in response to execution, cause a computing system to perform operations, comprising:
-
configuring a graphical user interface that facilitates viewing and navigating a three-dimensional model from different perspectives of a virtual camera, wherein the different perspectives are based on different navigation modes including; a walking mode that provides perspectives of the three-dimensional model from the virtual camera positioned at an approximately consistent distance relative to defined surfaces of the three-dimensional model, and 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 orthogonally orientation of the view relative to the horizontal surface; in response to determining that a user volume associated with a target position creates a conflict with a portion of the three-dimensional model, iteratively placing a bottom of the user volume at a local floor height at points of a series of successively larger areas surrounding the target position until a point is located that resolves the conflict, and setting the point as the target position; generating representations of the three-dimensional model from the different perspectives based on user input identifying position and orientation of the virtual camera and a selected mode; receiving a request to transition from a first perspective of the three-dimensional model in a first mode of the different navigation modes to a second perspective of the three-dimensional model in a second mode of the different navigation modes; in response to the request, determining a second set of parameters corresponding to a target position and orientation of the virtual camera relative to the three-dimensional model at the second perspective, based in part on a first set of parameters corresponding to a position or orientation of the virtual camera relative to the three-dimensional model at the first perspective; and generating a smooth visual transition between a first representation of the three-dimensional model at the first perspective to a second representation of the three-dimensional model at the second perspective by interpolating from the first set of parameters to the second set of parameters using a transition function, wherein the transition function provides an accelerating portion of an interpolation between two values followed by a decelerating portion of the interpolation between the two values. - View Dependent Claims (51, 52, 53, 54, 55, 56, 57, 58)
-
Specification