USER-DEFINED VIRTUAL INTERACTION SPACE AND MANIPULATION OF VIRTUAL CONFIGURATION
First Claim
1. A computer implemented method of creating a virtual spring in a three dimensional (3D) sensor space, the method including:
- detecting a lateral movement of a control object responsive to a lateral movement of a hand in a three dimensional (3D) sensor space;
defining a static length of a virtual spring that is in proportion to length of the lateral movement;
defining a spring constant of the virtual spring at least responsive to curling of fingers of the hand and degrees of freedom between fingers of the hand, wherein the spring constant is centered with respect to a fixed point proximate to the curled fingers and magnitude of the spring constant is calculated at least in part by a scale of curling of the fingers and degrees of freedom between the fingers; and
compounding interactions of the virtual spring with other virtual elements of the 3D sensor space.
12 Assignments
0 Petitions
Accused Products
Abstract
The technology disclosed relates to creating user-defined interaction spaces and modalities in a three dimensional (3D) sensor space in response to control gestures. It also relates to controlling virtual cameras in the 3D sensor space using control gestures and manipulating controls of the virtual cameras through the control gestures. In particular, it relates to defining one or more spatial attributes of the interaction spaces and modalities in response to one or more gesture parameters of the control gesture. It also particularly relates to defining one or more visual parameters of a virtual camera in response to one or more gesture parameters of the control gesture.
-
Citations
13 Claims
-
1. A computer implemented method of creating a virtual spring in a three dimensional (3D) sensor space, the method including:
-
detecting a lateral movement of a control object responsive to a lateral movement of a hand in a three dimensional (3D) sensor space; defining a static length of a virtual spring that is in proportion to length of the lateral movement; defining a spring constant of the virtual spring at least responsive to curling of fingers of the hand and degrees of freedom between fingers of the hand, wherein the spring constant is centered with respect to a fixed point proximate to the curled fingers and magnitude of the spring constant is calculated at least in part by a scale of curling of the fingers and degrees of freedom between the fingers; and compounding interactions of the virtual spring with other virtual elements of the 3D sensor space.
-
-
2. A computer implemented method of controlling a virtual camera in a three dimensional (3D) sensor space, the method including:
-
detecting a circular sweep around a virtual object responsive to a control gesture of a control object in a three dimensional (3D) sensor space; calculating a radius of the circular sweep responsive to a found point that is equidistant to a plurality of points defined on contour of the control gesture; determining a focal length of a virtual camera towards the virtual object responsive to the radius of the circular sweep by constructing a virtual sphere in the 3D sensor space that is in proportion to the radius of the circular sweep; defining a vector from the virtual camera to the center of the virtual sphere; and determining a point of intersection between the sphere and the vector; defining a field of view and orientation of the virtual camera responsive to orientation of the control object; and interpolating the virtual camera through time to a new position that coincides with the point of intersection.
-
-
3. A computer implemented method of spring-zooming a virtual camera in a three dimensional (3D) sensor space, the method including:
-
detecting a circular sweep responsive to a first control gesture of a control object in a three dimensional (3D) sensor space; calculating a radius of the circular sweep responsive to a found point that is equidistant to a plurality of points defined on contour of the control gesture, wherein a radius of the circular sweep defines a spring constant of a virtual camera launcher of a virtual camera; and a first distance between center of the circular sweep and the virtual camera defines a static length of the spring movement; detecting a backward pull of the virtual camera launcher to a second distance in response to a second control gesture of the control object in the 3D space; and accelerating the virtual camera through time responsive to releasing the virtual camera launcher by a third control gesture. - View Dependent Claims (4)
-
-
5. A computer implemented method of defining and controlling multiple virtual cameras in a three dimensional (3D) sensor space, the method including:
-
detecting circular sweeps in response to control gestures of a control object in a three dimensional (3D) sensor space, wherein the circular sweeps have respective center points and direction vectors; constructing multiple virtual cameras in the 3D space with different fields of view that are proportional to respective direction vectors of the circular sweeps; assigning each of the virtual cameras a virtual camera checkpoint from an array of virtual camera selectors created in the 3D space by one or more control gestures; and selecting and controlling visual parameters of a particular virtual camera in response to selection of corresponding camera selector. - View Dependent Claims (6, 7)
-
-
8. A computer implemented method of manipulating a virtual camera in a three dimensional (3D) sensor space, the method including:
-
determining a focal length of a virtual camera in a three dimensional (3D) sensor space responsive to at least one of; radius of a circular sweep of hands; distance between midpoints of the hands; scale of curling of fingers of the hands; and degree of freedom between fingers; defining a field of view and orientation of the virtual camera responsive to orientation of the hands; constructing a virtual sphere along a plurality of points on a non-intersecting contour of the hands; defining a view vector from the center of the virtual sphere to a point on virtual sphere'"'"'s surface that is equidistant to a plurality of points on the hands; and manipulating the virtual camera by at least rotating, translating, compressing, or scaling the view vector responsive to subsequent control gestures of the hands.
-
-
9. A computer implemented method of manipulating a virtual camera in a three dimensional (3D) sensor space, the method including:
-
detecting a first control gesture of a control object that defines a starting point of a virtual camera in a three dimensional (3D) sensor space; detecting a second control gesture of the control object that defines a continuous contour through time in the 3D sensor space; detecting a third control gesture of the control object that defines a finishing point of the virtual camera in the 3D sensor space; and moving the virtual camera along the continuous contour between the starting point and the finishing point. - View Dependent Claims (10, 11, 12, 13)
-
Specification