Volumetric data exploration using multi-point input controls
First Claim
1. A computer-implemented method of enabling visual navigation through a three-dimensional data set on a multi-touch display device that includes a touch surface, the method comprising:
- accessing a three-dimensional data set from a computer memory storage device;
defining a two-dimensional planar bounded surface that intersects the three-dimensional data set, that defines a two-dimensional data set within the three-dimensional data set, and that divides the three-dimensional data set into first and second subsets of the three-dimensional data set, the two-dimensional bounded surface having a normal defining positive and negative directions relative to the two-dimensional bounded surface, the first and second subsets of the three-dimensional data set being distinct and corresponding to points located on opposing sides of the two-dimensional bounded surface, the first subset of the three-dimensional data set including data from the three-dimensional data set that is in the positive direction relative to the two-dimensional bounded surface, the second subset of the three-dimensional data set including data from the three-dimensional data set that is in the negative direction relative to the two-dimensional bounded surface, and the two-dimensional data set including data from the three-dimensional data set that is intersected by the two-dimensional bounded surface;
rendering, on the multi-touch display device, a three-dimensional view of the three-dimensional data set while also rendering the two-dimensional bounded surface intersecting the three-dimensional data set, wherein at least a portion of the first subset of the three-dimensional data set is excluded from the three-dimensional view of the three-dimensional data set and at least a portion of the two-dimensional data set is displayed within the three-dimensional view of the three-dimensional data set;
providing a first control that enables a user of the multi-touch display device to rotate the two-dimensional bounded surface in three dimensions about a point on the two-dimensional bounded surface, the first control being configured to;
detect engagement by an input mechanism of a point on the multi-touch display device corresponding to the first control,track movements of the input mechanism while the input mechanism remains engaged with the multi-touch display device,rotate the two-dimensional bounded surface in three dimensions about the point on the two-dimensional bounded surface as a function of the tracked movement of the input mechanism to cause the two-dimensional bounded surface to intersect a new two-dimensional data set within the three-dimensional data set and to divide the three-dimensional data set into new first and second subsets of the three-dimensional data set, the new first and second subsets of the three-dimensional data set being distinct and corresponding to points located on opposing sides of the two-dimensional bounded surface, the new first subset of the three-dimensional data set including data from the rotated three-dimensional data set that is in the positive direction relative to the two-dimensional bounded surface, and the new second subset of the three-dimensional data set including data from the rotated three-dimensional data set that is in the negative direction relative to the two-dimensional bounded surface, andupdate the rendering, on the multi-touch display device, of the three-dimensional view of the three-dimensional data set to reflect the rotation of the two-dimensional bounded surface about the point on the two-dimensional bounded surface as a function of the tracked movement of the input mechanism, causing at least a portion of the new first subset of the three-dimensional data set to be excluded from the updated three-dimensional view of the three-dimensional data set and at least a portion of the new two-dimensional data set to be displayed within the three-dimensional view of the three-dimensional data set;
providing a second control comprising a view frame that is superimposed over the two-dimensional bounded surface that intersects the three-dimensional data set, wherein the superimposed view frame enables the user of the multi-touch display device to translate the two-dimensional bounded surface on a plane containing and parallel to the view frame and the two-dimensional bounded surface to a new position within the three-dimensional data set, the plane being distinct from and not parallel to a plane of the touch surface of the multi-touch display device, the second control being configured to;
detect engagement by an input mechanism of a point on the multi-touch display device corresponding to the view frame,track movements of the input mechanism while the input mechanism remains engaged with the multi-touch display device,translate the two-dimensional bounded surface on the plane containing and parallel to the view frame and the two-dimensional bounded surface to a new position within the three-dimensional data set as a function of the tracked movement of the input mechanism to cause the two-dimensional bounded surface to intersect a new two-dimensional data set within the three-dimensional data, andupdate the rendering, on the multi-touch display device, of the three-dimensional view of the three-dimensional data set to reflect the translation of the two-dimensional bounded surface on the plane containing and parallel to the two-dimensional bounded surface to a new position within the three-dimensional data set as a function of the tracked movement of the input mechanism to cause at least a portion of the first subset of the three-dimensional data set to be excluded from the updated three-dimensional view of the three-dimensional data set and at least a portion of the new two-dimensional data set to be displayed within the three-dimensional view of the three-dimensional data set;
detecting concurrent engagement of;
(1) a point on the multi-touch display device corresponding to the first control by a first input mechanism, and (2) a point on the multi-touch display device corresponding to the view frame by a second input mechanism;
tracking movements of the first input mechanism and the second input mechanism while the first input mechanism and second input mechanism remain concurrently engaged with the multi-touch display device;
rotating the two-dimensional bounded surface in three dimensions about a point on the two-dimensional bounded surface as a function of the tracked movement of the first input mechanism;
translating the two-dimensional bounded surface on the plane containing and parallel to the view frame and the two-dimensional bounded surface to a new position within the three-dimensional data set as a function of the tracked movement of the second input mechanism; and
updating the rendering, on the multi-touch display device, of the three-dimensional view of the three-dimensional data set to concurrently reflect both the rotation of the two-dimensional bounded surface about the point on the two-dimensional bounded surface as a function of the tracked movement of the first input mechanism and the translation of the two-dimensional bounded surface on the plane containing and parallel to the view frame and the two-dimensional bounded surface to the new position within the three-dimensional data set as a function of the tracked movement of the second input mechanism.
3 Assignments
0 Petitions
Accused Products
Abstract
A three-dimensional data set is accessed. A two-dimensional plane is defined that intersects a space defined by the three-dimensional data set. The two-dimensional plane defines a two-dimensional data set within the three-dimensional data set and divides the three-dimensional data set into first and second subsets. A three-dimensional view based on the three-dimensional data set is rendered on such that at least a portion of the first subset of the three-dimensional data set is removed and at least a portion of the two-dimensional data set is displayed. A two-dimensional view of a first subset of the two-dimensional data set also is rendered. Controls are provided that enable visual navigation through the three-dimensional data set by engaging points on the multi-touch display device that correspond to either the three-dimensional view based on the three-dimensional data set and/or the two-dimensional view of the first subset of the two-dimensional data set.
-
Citations
32 Claims
-
1. A computer-implemented method of enabling visual navigation through a three-dimensional data set on a multi-touch display device that includes a touch surface, the method comprising:
-
accessing a three-dimensional data set from a computer memory storage device; defining a two-dimensional planar bounded surface that intersects the three-dimensional data set, that defines a two-dimensional data set within the three-dimensional data set, and that divides the three-dimensional data set into first and second subsets of the three-dimensional data set, the two-dimensional bounded surface having a normal defining positive and negative directions relative to the two-dimensional bounded surface, the first and second subsets of the three-dimensional data set being distinct and corresponding to points located on opposing sides of the two-dimensional bounded surface, the first subset of the three-dimensional data set including data from the three-dimensional data set that is in the positive direction relative to the two-dimensional bounded surface, the second subset of the three-dimensional data set including data from the three-dimensional data set that is in the negative direction relative to the two-dimensional bounded surface, and the two-dimensional data set including data from the three-dimensional data set that is intersected by the two-dimensional bounded surface; rendering, on the multi-touch display device, a three-dimensional view of the three-dimensional data set while also rendering the two-dimensional bounded surface intersecting the three-dimensional data set, wherein at least a portion of the first subset of the three-dimensional data set is excluded from the three-dimensional view of the three-dimensional data set and at least a portion of the two-dimensional data set is displayed within the three-dimensional view of the three-dimensional data set; providing a first control that enables a user of the multi-touch display device to rotate the two-dimensional bounded surface in three dimensions about a point on the two-dimensional bounded surface, the first control being configured to; detect engagement by an input mechanism of a point on the multi-touch display device corresponding to the first control, track movements of the input mechanism while the input mechanism remains engaged with the multi-touch display device, rotate the two-dimensional bounded surface in three dimensions about the point on the two-dimensional bounded surface as a function of the tracked movement of the input mechanism to cause the two-dimensional bounded surface to intersect a new two-dimensional data set within the three-dimensional data set and to divide the three-dimensional data set into new first and second subsets of the three-dimensional data set, the new first and second subsets of the three-dimensional data set being distinct and corresponding to points located on opposing sides of the two-dimensional bounded surface, the new first subset of the three-dimensional data set including data from the rotated three-dimensional data set that is in the positive direction relative to the two-dimensional bounded surface, and the new second subset of the three-dimensional data set including data from the rotated three-dimensional data set that is in the negative direction relative to the two-dimensional bounded surface, and update the rendering, on the multi-touch display device, of the three-dimensional view of the three-dimensional data set to reflect the rotation of the two-dimensional bounded surface about the point on the two-dimensional bounded surface as a function of the tracked movement of the input mechanism, causing at least a portion of the new first subset of the three-dimensional data set to be excluded from the updated three-dimensional view of the three-dimensional data set and at least a portion of the new two-dimensional data set to be displayed within the three-dimensional view of the three-dimensional data set; providing a second control comprising a view frame that is superimposed over the two-dimensional bounded surface that intersects the three-dimensional data set, wherein the superimposed view frame enables the user of the multi-touch display device to translate the two-dimensional bounded surface on a plane containing and parallel to the view frame and the two-dimensional bounded surface to a new position within the three-dimensional data set, the plane being distinct from and not parallel to a plane of the touch surface of the multi-touch display device, the second control being configured to; detect engagement by an input mechanism of a point on the multi-touch display device corresponding to the view frame, track movements of the input mechanism while the input mechanism remains engaged with the multi-touch display device, translate the two-dimensional bounded surface on the plane containing and parallel to the view frame and the two-dimensional bounded surface to a new position within the three-dimensional data set as a function of the tracked movement of the input mechanism to cause the two-dimensional bounded surface to intersect a new two-dimensional data set within the three-dimensional data, and update the rendering, on the multi-touch display device, of the three-dimensional view of the three-dimensional data set to reflect the translation of the two-dimensional bounded surface on the plane containing and parallel to the two-dimensional bounded surface to a new position within the three-dimensional data set as a function of the tracked movement of the input mechanism to cause at least a portion of the first subset of the three-dimensional data set to be excluded from the updated three-dimensional view of the three-dimensional data set and at least a portion of the new two-dimensional data set to be displayed within the three-dimensional view of the three-dimensional data set; detecting concurrent engagement of;
(1) a point on the multi-touch display device corresponding to the first control by a first input mechanism, and (2) a point on the multi-touch display device corresponding to the view frame by a second input mechanism;tracking movements of the first input mechanism and the second input mechanism while the first input mechanism and second input mechanism remain concurrently engaged with the multi-touch display device; rotating the two-dimensional bounded surface in three dimensions about a point on the two-dimensional bounded surface as a function of the tracked movement of the first input mechanism; translating the two-dimensional bounded surface on the plane containing and parallel to the view frame and the two-dimensional bounded surface to a new position within the three-dimensional data set as a function of the tracked movement of the second input mechanism; and updating the rendering, on the multi-touch display device, of the three-dimensional view of the three-dimensional data set to concurrently reflect both the rotation of the two-dimensional bounded surface about the point on the two-dimensional bounded surface as a function of the tracked movement of the first input mechanism and the translation of the two-dimensional bounded surface on the plane containing and parallel to the view frame and the two-dimensional bounded surface to the new position within the three-dimensional data set as a function of the tracked movement of the second input mechanism. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A tangible computer-readable storage device storing instructions that, when executed by a computing system, cause the computing system to perform operations comprising:
-
access a three-dimensional data set from a computer memory storage device; define a two-dimensional planar bounded surface that intersects the three-dimensional data set, that defines a two-dimensional data set within the three-dimensional data set, and that divides the three-dimensional data set into first and second subsets of the three-dimensional data set, the two-dimensional bounded surface having a normal defining positive and negative directions relative to the two-dimensional bounded surface, the first and second subsets of the three-dimensional data set being distinct and corresponding to points located on opposing sides of the two-dimensional bounded surface, the first subset of the three-dimensional data set including data from the three-dimensional data set that is in the positive direction relative to the two-dimensional bounded surface, the second subset of the three-dimensional data set including data from the three-dimensional data set that is in the negative direction relative to the two-dimensional bounded surface, and the two-dimensional data set including data from the three-dimensional data set that is intersected by the two-dimensional bounded surface; render, on a multi-touch display device that includes a touch surface, a three-dimensional view of the three-dimensional data set while also rendering the two-dimensional bounded surface intersecting the three-dimensional data set, wherein at least a portion of the first subset of the three-dimensional data set is excluded from the three-dimensional view of the three-dimensional data set and at least a portion of the two-dimensional data set is displayed within the three-dimensional view of the three-dimensional data set; provide a first control that enables a user of the multi-touch display device to rotate the two-dimensional bounded surface in three dimensions about a point on the two-dimensional bounded surface, the first control being configured to; detect engagement by an input mechanism of a point on the multi-touch display device corresponding to the first control, track movements of the input mechanism while the input mechanism remains engaged with the multi-touch display device, rotate the two-dimensional bounded surface in three dimensions about the point on the two-dimensional bounded surface as a function of the tracked movement of the input mechanism to cause the two-dimensional bounded surface to intersect a new two-dimensional data set within the three-dimensional data set and to divide the three-dimensional data set into new first and second subsets of the three-dimensional data set, the new first and second subsets of the three-dimensional data set being distinct and corresponding to points located on opposing sides of the two-dimensional bounded surface, the new first subset of the three-dimensional data set including data from the rotated three-dimensional data set that is in the positive direction relative to the two-dimensional bounded surface, and the new second subset of the three-dimensional data set including data from the rotated three-dimensional data set that is in the negative direction relative to the two-dimensional bounded surface, and update the rendering, on the multi-touch display device, of the three-dimensional view of the three-dimensional data set to reflect the rotation of the two-dimensional bounded surface about the point on the two-dimensional bounded surface as a function of the tracked movement of the input mechanism, causing at least a portion of the new first subset of the three-dimensional data set to be excluded from the updated three-dimensional view of the three-dimensional data set and at least a portion of the new two-dimensional data set to be displayed within the three-dimensional view of the three-dimensional data set; provide a second control comprising a view frame that is superimposed over the two-dimensional bounded surface that intersects the three-dimensional data set, wherein the superimposed view frame enables a user of the multi-touch display device to translate the two-dimensional bounded surface on a plane containing and parallel to the view frame and the two-dimensional bounded surface to a new position within the three-dimensional data set, the plane being distinct from and not parallel to a plane of the touch surface of the multi-touch display device, the second control being configured to; detect engagement by an input mechanism of a point on the multi-touch display device corresponding to the view frame, track movements of the input mechanism while the input mechanism remains engaged with the multi-touch display device, translate the two-dimensional bounded surface on the plane containing and parallel to the view frame and the two-dimensional bounded surface to a new position within the three-dimensional data set as a function of the tracked movement of the input mechanism to cause the two-dimensional bounded surface to intersect a new two-dimensional data set within the three-dimensional data, and update the rendering, on the multi-touch display device, of the three-dimensional view of the three-dimensional data set to reflect the translation of the two-dimensional bounded surface on the plane containing and parallel to the two-dimensional bounded surface to a new position within the three-dimensional data set as a function of the tracked movement of the input mechanism, causing at least a portion of the first subset of the three-dimensional data set to be excluded from the updated three-dimensional view of the three-dimensional data set and at least a portion of the new two-dimensional data set to be displayed within the three-dimensional view of the three-dimensional data set; detect concurrent engagement of;
(1) a point on the multi-touch display device corresponding to the first control by a first input mechanism, and (2) a point on the multi-touch display device corresponding to the view frame by a second input mechanism;track movements of the first input mechanism and the second input mechanism while the first input mechanism and second input mechanism remain concurrently engaged with the multi-touch display device; rotate the two-dimensional bounded surface in three dimensions about a point on the two-dimensional bounded surface as a function of the tracked movement of the first input mechanism; translate the two-dimensional bounded surface on the plane containing and parallel to the view frame and the two-dimensional bounded surface to a new position within the three-dimensional data set as a function of the tracked movement of the second input mechanism; and update the rendering, on the multi-touch display device, of the three-dimensional view of the three-dimensional data set to concurrently reflect both the rotation of the two-dimensional bounded surface about the point on the two-dimensional bounded surface as a function of the tracked movement of the first input mechanism and the translation of the two-dimensional bounded surface on the plane containing and parallel to the view frame and the two-dimensional bounded surface to the new position within the three-dimensional data set as a function of the tracked movement of the second input mechanism. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30)
-
-
31. A multi-touch display device comprising:
-
a display that includes a touch surface; a multi-touch input sensor; a processor; and a computer memory device storing instructions that, when executed by the processor, cause the processor to perform operations comprising; access a three-dimensional data set; define a two-dimensional planar bounded surface that intersects the three-dimensional data set, that defines a two-dimensional data set within the three-dimensional data set, and that divides the three-dimensional data set into first and second subsets of the three-dimensional data set, the two-dimensional bounded surface having a normal defining positive and negative directions relative to the two-dimensional bounded surface, the first and second subsets of the three-dimensional data set being distinct and corresponding to points located on opposing sides of the two-dimensional bounded surface, the first subset of the three-dimensional data set including data from the three-dimensional data set that is in the positive direction relative to the two-dimensional bounded surface, the second subset of the three-dimensional data set including data from the three-dimensional data set that is in the negative direction relative to the two-dimensional bounded surface, and the two-dimensional data set including data from the three-dimensional data set that is intersected by the two-dimensional bounded surface; render, on the display, a three-dimensional view of the three-dimensional data set while also rendering the two-dimensional bounded surface intersecting the three-dimensional data set, wherein at least a portion of the first subset of the three-dimensional data set is excluded from the three-dimensional view of the three-dimensional data set and at least a portion of the two-dimensional data set is displayed within the three-dimensional view of the three-dimensional data set; provide a first control that enables a user of the multi-touch display device to rotate the two-dimensional bounded surface in three dimensions about a point on the two-dimensional bounded surface, the first control being configured to; detect engagement by an input mechanism of a point on the multi-touch input sensor corresponding to the first control, track movements of the input mechanism while the input mechanism remains engaged with the multi-touch input sensor, rotate the two-dimensional bounded surface in three dimensions about the point on the two-dimensional bounded surface as a function of the tracked movement of the input mechanism to cause the two-dimensional bounded surface to intersect a new two-dimensional data set within the three-dimensional data set and to divide the three-dimensional data set into new first and second subsets of the three-dimensional data set, the new first and second subsets of the three-dimensional data set being distinct and corresponding to points located on opposing sides of the two-dimensional bounded surface, the new first subset of the three-dimensional data set including data from the rotated three-dimensional data set that is in the positive direction relative to the two-dimensional bounded surface, and the new second subset of the three-dimensional data set including data from the rotated three-dimensional data set that is in the negative direction relative to the two-dimensional bounded surface, and update the rendering, on the display, of the three-dimensional view of the three-dimensional data set to reflect the rotation of the two-dimensional bounded surface about the point on the two-dimensional bounded surface as a function of the tracked movement of the input mechanism, causing at least a portion of the new first subset of the three-dimensional data set to be excluded from the updated three-dimensional view of the three-dimensional data set and at least a portion of the new two-dimensional data set to be displayed within the three-dimensional view of the three-dimensional data set; provide a second control comprising a view frame that is superimposed over the two-dimensional bounded surface that intersects the three-dimensional data set, wherein the superimposed view frame enables a user of the multi-touch display device to translate the two-dimensional bounded surface on a plane containing and parallel to the view frame and the two-dimensional bounded surface to a new position within the three-dimensional data set, the plane being distinct from and not parallel to a plane of the touch surface of the multi-touch display device, the second control being configured to; detect engagement by an input mechanism of a point on the multi-touch input sensor corresponding to the view frame, track movements of the input mechanism while the input mechanism remains engaged with the multi-touch input sensor, translate the two-dimensional bounded surface on the plane containing and parallel to the view frame and the two-dimensional bounded surface to a new position within the three-dimensional data set as a function of the tracked movement of the input mechanism to cause the two-dimensional bounded surface to intersect a new two-dimensional data set within the three-dimensional data, and update the rendering, on the display, of the three-dimensional view of the three-dimensional data set to reflect the translation of the two-dimensional bounded surface on the plane containing and parallel to the two-dimensional bounded surface to a new position within the three-dimensional data set as a function of the tracked movement of the input mechanism, causing at least a portion of the first subset of the three-dimensional data set to be excluded from the updated three-dimensional view of the three-dimensional data set and at least a portion of the new two-dimensional data set to be displayed within the three-dimensional view of the three-dimensional data set; detect concurrent engagement of;
(1) a point on the multi-touch input sensor corresponding to the first control by a first input mechanism, and (2) a point on the multi-touch input sensor corresponding to the view frame by a second input mechanism;track movements of the first input mechanism and the second input mechanism while the first input mechanism and second input mechanism remain concurrently engaged with the multi-touch input sensor; rotate the two-dimensional bounded surface in three dimensions about a point on the two-dimensional bounded surface as a function of the tracked movement of the first input mechanism; translate the two-dimensional bounded surface on the plane containing and parallel to the view frame and the two-dimensional bounded surface to a new position within the three-dimensional data set as a function of the tracked movement of the second input mechanism; and update the rendering, on the display, of the three-dimensional view of the three-dimensional data set to concurrently reflect both the rotation of the two-dimensional bounded surface about the point on the two-dimensional bounded surface as a function of the tracked movement of the first input mechanism and the translation of the two-dimensional bounded surface on the plane containing and parallel to the view frame and the two-dimensional bounded surface to the new position within the three-dimensional data set as a function of the tracked movement of the second input mechanism. - View Dependent Claims (32)
-
Specification