Three-dimensional tilt and pan navigation using a single gesture
First Claim
1. A computer-implemented method for controlling a virtual camera in a three-dimensional environment, the computer-implemented method comprising:
- receiving, by one or more computing devices, data describing a drag gesture performed by a user, wherein the drag gesture comprises a single user input that selects and then holds and drags a portion of the three-dimensional environment in a linear direction; and
in response to the drag gesture;
when the drag gesture comprises an upwards drag, incrementally adjusting, by the one or more computing devices, a tilt angle of the viewpoint until the tilt angle equals a maximum tilt value;
when the drag gesture comprises a downwards drag, incrementally adjusting, by the one or more computing devices, the tilt angle of the viewpoint until the tilt angle equals a minimum tilt value;
after the tilt angle of the virtual camera has been incrementally adjusted until the tilt angle equals one of the maximum tilt angle or the minimum tilt angle, panning, by the one or more computing devices, the virtual camera with respect to a rendering of a three-dimensional model included in the three-dimensional environment based at least in part on the data describing the drag gesture performed by the user, such that the virtual camera is sequentially tilted and then panned in response to the drag gesture;
wherein incrementally adjusting the tilt angle comprises pivoting the viewpoint of the three-dimensional rendering about a pivot point located beneath a surface of the three-dimensional rendering;
wherein panning the viewpoint with respect to the three-dimensional rendering comprises adjusting the location of the viewpoint in a direction parallel to the surface of the three-dimensional rendering while holding the tilt angle constant; and
wherein the tilt angle is defined with respect to the rendering of the three-dimensional model.
2 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for providing tilt and pan navigation within a three-dimensional environment in response to a single gesture are provided. An exemplary computer-implemented method includes receiving, by one or more computing devices, data describing a drag performed by a user. The computer-implemented method includes, in response to the drag, incrementally adjusting, by the one or more computing devices, a tilt angle of a virtual camera until the tilt angle equals one of a maximum tilt angle or a minimum tilt angle, and panning, by the one or more computing devices, the virtual camera with respect to a rendering of a three-dimensional model. An exemplary system includes a client device and a server in operative communication over a network.
-
Citations
15 Claims
-
1. A computer-implemented method for controlling a virtual camera in a three-dimensional environment, the computer-implemented method comprising:
-
receiving, by one or more computing devices, data describing a drag gesture performed by a user, wherein the drag gesture comprises a single user input that selects and then holds and drags a portion of the three-dimensional environment in a linear direction; and in response to the drag gesture; when the drag gesture comprises an upwards drag, incrementally adjusting, by the one or more computing devices, a tilt angle of the viewpoint until the tilt angle equals a maximum tilt value; when the drag gesture comprises a downwards drag, incrementally adjusting, by the one or more computing devices, the tilt angle of the viewpoint until the tilt angle equals a minimum tilt value; after the tilt angle of the virtual camera has been incrementally adjusted until the tilt angle equals one of the maximum tilt angle or the minimum tilt angle, panning, by the one or more computing devices, the virtual camera with respect to a rendering of a three-dimensional model included in the three-dimensional environment based at least in part on the data describing the drag gesture performed by the user, such that the virtual camera is sequentially tilted and then panned in response to the drag gesture; wherein incrementally adjusting the tilt angle comprises pivoting the viewpoint of the three-dimensional rendering about a pivot point located beneath a surface of the three-dimensional rendering; wherein panning the viewpoint with respect to the three-dimensional rendering comprises adjusting the location of the viewpoint in a direction parallel to the surface of the three-dimensional rendering while holding the tilt angle constant; and wherein the tilt angle is defined with respect to the rendering of the three-dimensional model. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 15)
-
-
12. A non-transitory computer-readable medium storing instructions that, when executed by one or more computing devices, cause the one or more computing devices to perform operations, the operations comprising:
-
receiving, by the one or more computing devices, data describing a drag gesture performed by a user, wherein the drag gesture comprises a single user input that selects and then holds and drags a rendering of a three-dimensional model in a linear direction; when the drag gesture comprises an upwards drag, adjusting, by the one or more computing devices in response to the drag gesture, a tilt angle of a viewpoint of the rendering of the three-dimensional model included in a three-dimensional environment to equal a maximum tilt value; when the drag gesture comprises a downwards drag, adjusting, by the one or more computing devices in response to the drag gesture, the tilt angle of the viewpoint to equal a minimum tilt value; and after adjusting the tilt angle of the viewpoint to equal the maximum tilt value or the minimum tilt value, panning, by the one or more computing devices in response to the drag gesture, the viewpoint with respect to the rendering of the three-dimensional model, such that the virtual camera is sequentially tilted and then panned in response to the drag gesture; wherein adjusting the tilt angle comprises pivoting the viewpoint of the three-dimensional rendering about a pivot point located beneath a surface of the three-dimensional rendering; and wherein panning the viewpoint with respect to the three-dimensional rendering comprises adjusting the location of the viewpoint in a direction parallel to the surface of the three-dimensional rendering while holding the tilt angle constant.
-
-
13. A computing device comprising a processor and a memory, the memory storing instructions that, when executed by the processor, cause the computing device to perform operations, the operations comprising:
-
receiving, by the computing device, data describing a drag gesture performed by a user, wherein the drag gesture has an up-axis component of a first magnitude and a right-axis component of a second magnitude, and wherein the up-axis and the right-axis are defined with respect to a viewpoint of a three-dimensional rendering provided to the user; when the first magnitude is greater than zero; adjusting, by the computing device, an x-axis tilt angle of the viewpoint to equal a maximum x-axis tilt value; and panning, by the computing device, the viewpoint negatively along a y-axis of the three-dimensional rendering; and when the first magnitude is less than zero; adjusting, by the computing device, the x-axis tilt angle of the viewpoint to equal a minimum x-axis tilt value; and panning, by the computing device, the viewpoint positively along the y-axis of the three-dimensional rendering; when the second magnitude is greater than zero; adjusting, by the computing device, a y-axis tilt angle of the viewpoint to equal a maximum y-axis tilt value; and panning, by the computing device, the viewpoint negatively along an x-axis of the three-dimensional rendering; and when the second magnitude is less than zero; adjusting, by the computing device, the y-axis tilt angle of the viewpoint to equal a minimum y-axis tilt value; and panning, by the computing device, the viewpoint positively along the x-axis of the three-dimensional rendering; wherein the x-axis tilt angle and the y-axis tilt angle are adjusted in a simultaneous fashion; and wherein the computing device continuously provides a depiction of the three-dimensional rendering while the x-axis tilt angle and the y-axis tilt angle are simultaneously adjusted. - View Dependent Claims (14)
-
Specification