IP Library Granted Patent US 8,456,466
Granted Patent B1
US 8,456,466 · App. 12/753,080 · Granted Jun 4, 2013

Resolving ambiguous rotations in 3D manipulation

Inventors: Jason L. Reisman (Brooklyn, NY); Philip L. Davidson (New York, NY); Jefferson Y. Han (Holliswood, NY)
Assignee: Perceptive Pixel Inc.
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 8,456,466
App. No.
12/753,080
Granted
Jun 4, 2013
Kind
B1
Abstract

A three-dimensional transformation of a three-dimensional object is calculated by a solver using an algorithm that reduces deviation between projected two-dimensional locations of three-dimensional contact points on a surface of the object after object transformation and two dimensional locations of touch points placed on a multi-touch display device. The algorithm is biased to generate a three-dimensional transformation that preferentially rotates the object in one direction over an opposite direction when all three-dimensional contact points are located at substantially the same depth along a Z-axis away from an image plane of the multi-touch display device and when transformation is then triggered by touch points moving such that a Euclidean distance between at least two of the touch points decreases.

Claims (9)

1. A computer-implemented method of resolving ambiguous rotations when manipulating a three-dimensional object displayed in a multi-touch display device, the method comprising:

displaying a three-dimensional object in two dimensions on the multi-touch display device by projecting the three-dimensional object onto an image plane, the three-dimensional object having an initial three-dimensional location and an initial three-dimensional rotational orientation;

detecting touching by one or more input mechanisms of three or more touch points on the multi-touch display device;

determining, for each touch point, a first two-dimensional location of the touch point on the multi-touch display device;

matching each touch point to a three-dimensional contact point on a surface of the three-dimensional object, the three-dimensional contact point being displayed at the first two-dimensional location of its matching touch point when the contact point is projected for display onto the image plane of the camera, the three-dimensional contact points matched to the touch points being located at substantially the same depth along a Z-axis away from the image plane;

detecting, based on movement of the one or more input mechanisms while the one or more input mechanisms remain touching the multi-touch display device, movement of at least one of the touch points from its first two-dimensional location to a second two-dimensional location, the movement of the at least one of the touch points to its second two-dimensional location resulting in a Euclidean distance between at least two of the touch points decreasing;

using a solver to calculate a three-dimensional transformation of the three-dimensional object that specifies at least a new three-dimensional rotational orientation for the three-dimensional object, the three-dimensional transformation being calculated by the solver using an algorithm that reduces deviation between projected two-dimensional locations of the three-dimensional contact points after object transformation and two dimensional locations of their respective touch points, the algorithm being biased to generate a three-dimensional transformation that preferentially rotates the object in one direction over an opposite direction when all three-dimensional contact points are located at substantially the same depth along a Z-axis away from the image plane of the camera and transformation is triggered by touch points moving such that a Euclidean distance between at least two of the touch points decreases;

transforming, using at least one computer processor, the three-dimensional object using the three-dimensional transformation such that the transformed three-dimensional object is rotated in accordance with the new three-dimensional rotation; and

displaying the transformed three-dimensional object on the multi-touch display device by projecting the transformed three-dimensional object onto the image plane of the camera.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 28, 2017
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 044823/0905 →
MERGER Recorded Nov 27, 2017
From: PERCEPTIVE PIXEL INC.
To: MICROSOFT CORPORATION
Reel/Frame 044511/0872 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2010
From: REISMAN, JASON L.; DAVIDSON, PHILIP L.; HAN, JEFFERSON Y.
To: PERCEPTIVE PIXEL INC.
Reel/Frame 024546/0901 →
Continuity (2)
Provisional Application 61165853 · Apr 1, 2009
Provisional Application 61248670 · Oct 5, 2009