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, the method comprising:
- accessing a three-dimensional data set from a computer memory storage device;
rendering, on a first region of a multi-touch display device, a three-dimensional view based on the accessed three-dimensional data set;
specifying an equation that defines a two-dimensional plane that intersects a space defined by 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 plane having a normal defining a positive direction relative to the two-dimensional plane and a negative direction relative to the two-dimensional plane, the first and second subsets of the three-dimensional data set being disjoint and corresponding to points located on opposing sides of the two-dimensional plane from one another, 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 plane, and 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 plane;
specifying, on the two-dimensional plane, a bounded area defining first and second subsets of the two-dimensional data set, the first and second subsets of the two-dimensional data set being disjoint, the first subset of the two-dimensional data set corresponding to points that lie within the bounded area on the two-dimensional plane, and the second subset of the two-dimensional data set corresponding to points that lie outside of the bounded area on the two-dimensional plane;
updating the rendering, on the multi-touch display device, of the three-dimensional view based on the three-dimensional data set to visually depict the two-dimensional plane by;
removing at least a portion of the visual display of the first subset of the three-dimensional data set from the visual display of the three-dimensional view based on the three-dimensional data set,displaying, within the three-dimensional view based on the three-dimensional data set, a visual indication of the bounded area on the two-dimensional plane, anddisplaying, within the three-dimensional view based on the three-dimensional data set, at least a portion of the first subset of the two-dimensional data set;
rendering, on a second region of the multi-touch display device that is distinct from the first region of the multi-touch display device, a two-dimensional view of the first subset of the two-dimensional data set such that the multi-touch display device concurrently displays both the two-dimensional view of the first subset of the two-dimensional data set and the updated three-dimensional view based on the three-dimensional data set that visually depicts the two-dimensional plane;
providing a first control set that enables a user of the multi-touch display device to visually navigate through the three-dimensional data set by engaging points on the second region of the multi-touch display device corresponding to the display of the two-dimensional view of the first subset of the two-dimensional data set, the first control set including;
a first translation control configured to;
detect engagement by one or more input mechanisms of one or more points on the multi-touch display device corresponding to the display of the two-dimensional view of the first subset of the two-dimensional data set,track movement of the one or more input mechanisms while the one or more input mechanisms remain engaged with the one or more points on the multi-touch display device,translate the bounded area on the two-dimensional plane to a new position on the two-dimensional plane as a function of the tracked movement of the one or more input mechanisms such that a new first subset of the two-dimensional data set corresponds to points that lie within the translated bounded area on the two-dimensional plane and a new second subset of the two-dimensional data set corresponds to points that lie outside of the translated bounded area on the two dimensional plane,update the rendering, on the multi-touch display device of the three-dimensional view based on the three-dimensional data set by translating, within the three-dimensional view based on the three-dimensional data set, the visual indication of the bounded area on the two-dimensional plane to reflect the new position of the translated bounded area on the two-dimensional plane, andupdate the rendering, on the multi-touch display device, of the two-dimensional view of the first subset of the two-dimensional data set to display a two-dimensional view of the new first subset of the two-dimensional data set corresponding to points that lie within the translated bounded area on the two-dimensional plane;
a first scale control configured to;
detect engagement by at least two input mechanisms of at least two points on the multi-touch display device corresponding to the display of the two-dimensional view of the first subset of the two-dimensional data set,track movement of the at least two input mechanisms while the at least two input mechanisms remain engaged with the one or more points on the multi-touch display device,scale dimensions of the bounded area on the two-dimensional plane as a function of the tracked movement of the at least two input mechanisms such that a new first subset of the two-dimensional data set corresponds to points that lie within the scaled bounded area on the two dimensional plane and a new second subset of the two-dimensional data set corresponds to points that lie outside of the scaled bounded area on the two dimensional plane,update the rendering, on the multi-touch display device of the three-dimensional view based on the three-dimensional data set by scaling, within the three-dimensional view based on the three-dimensional data set, the visual indication of the bounded area on the two-dimensional plane to reflect the scaled dimensions of the scaled bounded area on the two-dimensional plane, andupdate the rendering, on the multi-touch display device, of the two-dimensional view of the first subset of the two-dimensional data set to display a two-dimensional view of the new first subset of the two-dimensional data set corresponding to points that lie within the scaled bounded area on the two-dimensional plane; and
a first rotation control configured to;
detect engagement by one or more input mechanisms of one or more points on the multi-touch display device corresponding to the display of the two-dimensional view of the first subset of the two-dimensional data set,track movement of the one or more input mechanisms while the one or more input mechanisms remain engaged with the one or more points on the multi-touch display device,rotate the bounded area on the two-dimensional plane in two-dimensions around a point within the bounded area as a function of the tracked movement of the one or more input mechanisms such that a new first subset of the two-dimensional data set corresponds to points that lie within the rotated bounded area on the two dimensional plane and a new second subset of the two-dimensional data set corresponds to points that lie outside of the rotated bounded area on the two dimensional plane,update the rendering, on the multi-touch display device of the three-dimensional view based on the three-dimensional data set by rotating, within the three-dimensional view based on the three-dimensional data set, the visual indication of the bounded area on the two-dimensional plane to reflect the rotation of the rotated bounded area on the two-dimensional plane, andupdate the rendering, on the multi-touch display device, of the two-dimensional view of the first subset of the two-dimensional data set to display a two-dimensional view of the new first subset of the two-dimensional data set corresponding to points that lie within the rotated bounded area on the two-dimensional plane; and
providing a second control set that enables a user of the multi-touch display device to visually navigate through the three-dimensional data set by engaging points on the multi-touch display device corresponding to the display within the three-dimensional data set based on the visual indication of the bounded area on the two-dimensional plane, the second control set including;
a second translation control configured to;
detect engagement by one or more input mechanisms of one or more points on the multi-touch display device corresponding to the display of the visual indication of the bounded area on the two-dimensional plane,track movement of the one or more input mechanisms while the one or more input mechanisms remain engaged with the one or more points on the multi-touch display device,translate the bounded area on the two-dimensional plane to a new position on the two-dimensional plane as a function of the tracked movement of the one or more input mechanisms such that a new first subset of the two-dimensional data set corresponds to points that lie within the translated bounded area on the two dimensional plane and a new second subset of the two-dimensional data set corresponds to points that lie outside of the translated bounded area on the two dimensional plane,update the rendering, on the multi-touch display device of the three-dimensional view based on the three-dimensional data set by translating, within the three-dimensional view based on the three-dimensional data set, the visual indication of the bounded area on the two-dimensional plane to reflect the new position of the translated bounded area on the two-dimensional plane, andupdate the rendering, on the multi-touch display device, of the two-dimensional view of the first subset of the two-dimensional data set to display a two-dimensional view of the new first subset of the two-dimensional data set corresponding to points that lie within the translated bounded area on the two-dimensional plane;
a second scale control configured to;
detect engagement by one or more input mechanisms of one or more points on the multi-touch display device corresponding to the display of the visual indication of the bounded area on the two-dimensional plane,track movement of the one or more input mechanisms while the one or more input mechanisms remain engaged with the one or more points on the multi-touch display device,scale dimensions of the bounded area on the two-dimensional plane as a function of the tracked movement of the one or more input mechanisms such that a new first subset of the two-dimensional data set corresponds to points that lie within the scaled bounded area on the two dimensional plane and a new second subset of the two-dimensional data set corresponds to points that lie outside of the scaled bounded area on the two dimensional plane,update the rendering, on the multi-touch display device of the three-dimensional view based on the three-dimensional data set by scaling, within the three-dimensional view based on the three-dimensional data set, the visual indication of the bounded area of the two-dimensional plane to reflect the scaled dimensions of the scaled bounded area on the two-dimensional plane, andupdate the rendering, on the multi-touch display device, of the two-dimensional view of the first subset of the two-dimensional data set to display a two-dimensional view of the new first subset of the two-dimensional data set corresponding to points that lie within the scaled bounded area on the two-dimensional plane; and
a second rotation control configured to;
detect engagement by one or more input mechanisms of one or more points on the multi-touch display device corresponding to the display of the visual indication of the bounded area on the two-dimensional plane,track movement of the one or more input mechanisms while the one or more input mechanisms remain engaged with the one or more points on the multi-touch display device,rotate the bounded area on the two-dimensional plane in two dimensions around a point within the bounded area as a function of the tracked movement of the one or more input mechanisms such that a new first subset of the two-dimensional data set corresponds to points that lie within the rotated bounded area on the two dimensional plane and a new second subset of the two-dimensional data set corresponds to points that lie outside of the rotated bounded area on the two dimensional plane,update the rendering, on the multi-touch display device of the three-dimensional view based on the three-dimensional data set by rotating, within the three-dimensional view based on the three-dimensional data set, the visual indication of the bounded area of the two-dimensional plane to reflect the rotation of the rotated bounded area on the two-dimensional plane, andupdate the rendering, on the multi-touch display device, of the two-dimensional view of the first subset of the two-dimensional data set to display a two-dimensional view of the new first subset of the two-dimensional data set corresponding to points that lie within the rotated bounded area on the two-dimensional plane.
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.
29 Citations
20 Claims
-
1. A computer-implemented method of enabling visual navigation through a three-dimensional data set on a multi-touch display device, the method comprising:
-
accessing a three-dimensional data set from a computer memory storage device; rendering, on a first region of a multi-touch display device, a three-dimensional view based on the accessed three-dimensional data set; specifying an equation that defines a two-dimensional plane that intersects a space defined by 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 plane having a normal defining a positive direction relative to the two-dimensional plane and a negative direction relative to the two-dimensional plane, the first and second subsets of the three-dimensional data set being disjoint and corresponding to points located on opposing sides of the two-dimensional plane from one another, 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 plane, and 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 plane; specifying, on the two-dimensional plane, a bounded area defining first and second subsets of the two-dimensional data set, the first and second subsets of the two-dimensional data set being disjoint, the first subset of the two-dimensional data set corresponding to points that lie within the bounded area on the two-dimensional plane, and the second subset of the two-dimensional data set corresponding to points that lie outside of the bounded area on the two-dimensional plane; updating the rendering, on the multi-touch display device, of the three-dimensional view based on the three-dimensional data set to visually depict the two-dimensional plane by; removing at least a portion of the visual display of the first subset of the three-dimensional data set from the visual display of the three-dimensional view based on the three-dimensional data set, displaying, within the three-dimensional view based on the three-dimensional data set, a visual indication of the bounded area on the two-dimensional plane, and displaying, within the three-dimensional view based on the three-dimensional data set, at least a portion of the first subset of the two-dimensional data set; rendering, on a second region of the multi-touch display device that is distinct from the first region of the multi-touch display device, a two-dimensional view of the first subset of the two-dimensional data set such that the multi-touch display device concurrently displays both the two-dimensional view of the first subset of the two-dimensional data set and the updated three-dimensional view based on the three-dimensional data set that visually depicts the two-dimensional plane; providing a first control set that enables a user of the multi-touch display device to visually navigate through the three-dimensional data set by engaging points on the second region of the multi-touch display device corresponding to the display of the two-dimensional view of the first subset of the two-dimensional data set, the first control set including; a first translation control configured to; detect engagement by one or more input mechanisms of one or more points on the multi-touch display device corresponding to the display of the two-dimensional view of the first subset of the two-dimensional data set, track movement of the one or more input mechanisms while the one or more input mechanisms remain engaged with the one or more points on the multi-touch display device, translate the bounded area on the two-dimensional plane to a new position on the two-dimensional plane as a function of the tracked movement of the one or more input mechanisms such that a new first subset of the two-dimensional data set corresponds to points that lie within the translated bounded area on the two-dimensional plane and a new second subset of the two-dimensional data set corresponds to points that lie outside of the translated bounded area on the two dimensional plane, update the rendering, on the multi-touch display device of the three-dimensional view based on the three-dimensional data set by translating, within the three-dimensional view based on the three-dimensional data set, the visual indication of the bounded area on the two-dimensional plane to reflect the new position of the translated bounded area on the two-dimensional plane, and update the rendering, on the multi-touch display device, of the two-dimensional view of the first subset of the two-dimensional data set to display a two-dimensional view of the new first subset of the two-dimensional data set corresponding to points that lie within the translated bounded area on the two-dimensional plane; a first scale control configured to; detect engagement by at least two input mechanisms of at least two points on the multi-touch display device corresponding to the display of the two-dimensional view of the first subset of the two-dimensional data set, track movement of the at least two input mechanisms while the at least two input mechanisms remain engaged with the one or more points on the multi-touch display device, scale dimensions of the bounded area on the two-dimensional plane as a function of the tracked movement of the at least two input mechanisms such that a new first subset of the two-dimensional data set corresponds to points that lie within the scaled bounded area on the two dimensional plane and a new second subset of the two-dimensional data set corresponds to points that lie outside of the scaled bounded area on the two dimensional plane, update the rendering, on the multi-touch display device of the three-dimensional view based on the three-dimensional data set by scaling, within the three-dimensional view based on the three-dimensional data set, the visual indication of the bounded area on the two-dimensional plane to reflect the scaled dimensions of the scaled bounded area on the two-dimensional plane, and update the rendering, on the multi-touch display device, of the two-dimensional view of the first subset of the two-dimensional data set to display a two-dimensional view of the new first subset of the two-dimensional data set corresponding to points that lie within the scaled bounded area on the two-dimensional plane; and a first rotation control configured to; detect engagement by one or more input mechanisms of one or more points on the multi-touch display device corresponding to the display of the two-dimensional view of the first subset of the two-dimensional data set, track movement of the one or more input mechanisms while the one or more input mechanisms remain engaged with the one or more points on the multi-touch display device, rotate the bounded area on the two-dimensional plane in two-dimensions around a point within the bounded area as a function of the tracked movement of the one or more input mechanisms such that a new first subset of the two-dimensional data set corresponds to points that lie within the rotated bounded area on the two dimensional plane and a new second subset of the two-dimensional data set corresponds to points that lie outside of the rotated bounded area on the two dimensional plane, update the rendering, on the multi-touch display device of the three-dimensional view based on the three-dimensional data set by rotating, within the three-dimensional view based on the three-dimensional data set, the visual indication of the bounded area on the two-dimensional plane to reflect the rotation of the rotated bounded area on the two-dimensional plane, and update the rendering, on the multi-touch display device, of the two-dimensional view of the first subset of the two-dimensional data set to display a two-dimensional view of the new first subset of the two-dimensional data set corresponding to points that lie within the rotated bounded area on the two-dimensional plane; and providing a second control set that enables a user of the multi-touch display device to visually navigate through the three-dimensional data set by engaging points on the multi-touch display device corresponding to the display within the three-dimensional data set based on the visual indication of the bounded area on the two-dimensional plane, the second control set including; a second translation control configured to; detect engagement by one or more input mechanisms of one or more points on the multi-touch display device corresponding to the display of the visual indication of the bounded area on the two-dimensional plane, track movement of the one or more input mechanisms while the one or more input mechanisms remain engaged with the one or more points on the multi-touch display device, translate the bounded area on the two-dimensional plane to a new position on the two-dimensional plane as a function of the tracked movement of the one or more input mechanisms such that a new first subset of the two-dimensional data set corresponds to points that lie within the translated bounded area on the two dimensional plane and a new second subset of the two-dimensional data set corresponds to points that lie outside of the translated bounded area on the two dimensional plane, update the rendering, on the multi-touch display device of the three-dimensional view based on the three-dimensional data set by translating, within the three-dimensional view based on the three-dimensional data set, the visual indication of the bounded area on the two-dimensional plane to reflect the new position of the translated bounded area on the two-dimensional plane, and update the rendering, on the multi-touch display device, of the two-dimensional view of the first subset of the two-dimensional data set to display a two-dimensional view of the new first subset of the two-dimensional data set corresponding to points that lie within the translated bounded area on the two-dimensional plane; a second scale control configured to; detect engagement by one or more input mechanisms of one or more points on the multi-touch display device corresponding to the display of the visual indication of the bounded area on the two-dimensional plane, track movement of the one or more input mechanisms while the one or more input mechanisms remain engaged with the one or more points on the multi-touch display device, scale dimensions of the bounded area on the two-dimensional plane as a function of the tracked movement of the one or more input mechanisms such that a new first subset of the two-dimensional data set corresponds to points that lie within the scaled bounded area on the two dimensional plane and a new second subset of the two-dimensional data set corresponds to points that lie outside of the scaled bounded area on the two dimensional plane, update the rendering, on the multi-touch display device of the three-dimensional view based on the three-dimensional data set by scaling, within the three-dimensional view based on the three-dimensional data set, the visual indication of the bounded area of the two-dimensional plane to reflect the scaled dimensions of the scaled bounded area on the two-dimensional plane, and update the rendering, on the multi-touch display device, of the two-dimensional view of the first subset of the two-dimensional data set to display a two-dimensional view of the new first subset of the two-dimensional data set corresponding to points that lie within the scaled bounded area on the two-dimensional plane; and a second rotation control configured to; detect engagement by one or more input mechanisms of one or more points on the multi-touch display device corresponding to the display of the visual indication of the bounded area on the two-dimensional plane, track movement of the one or more input mechanisms while the one or more input mechanisms remain engaged with the one or more points on the multi-touch display device, rotate the bounded area on the two-dimensional plane in two dimensions around a point within the bounded area as a function of the tracked movement of the one or more input mechanisms such that a new first subset of the two-dimensional data set corresponds to points that lie within the rotated bounded area on the two dimensional plane and a new second subset of the two-dimensional data set corresponds to points that lie outside of the rotated bounded area on the two dimensional plane, update the rendering, on the multi-touch display device of the three-dimensional view based on the three-dimensional data set by rotating, within the three-dimensional view based on the three-dimensional data set, the visual indication of the bounded area of the two-dimensional plane to reflect the rotation of the rotated bounded area on the two-dimensional plane, and update the rendering, on the multi-touch display device, of the two-dimensional view of the first subset of the two-dimensional data set to display a two-dimensional view of the new first subset of the two-dimensional data set corresponding to points that lie within the rotated bounded area on the two-dimensional plane. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory computer-readable storage device storing instructions that, when executed by a computing system, cause the computing system to:
-
access a three-dimensional data set from a computer memory storage device; render, on a first region of a multi-touch display device, a three-dimensional view based on the accessed three-dimensional data set; specify an equation that defines a two-dimensional plane that intersects a space defined by 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 plane having a normal defining a positive direction relative to the two-dimensional plane and a negative direction relative to the two-dimensional plane, the first and second subsets of the three-dimensional data set being disjoint and corresponding to points located on opposing sides of the two-dimensional plane from one another, 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 plane, and 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 plane; specify, on the two-dimensional plane, a bounded area defining first and second subsets of the two-dimensional data set, the first and second subsets of the two-dimensional data set being disjoint, the first subset of the two-dimensional data set corresponding to points that lie within the bounded area on the two-dimensional plane, and the second subset of the two-dimensional data set corresponding to points that lie outside of the bounded area on the two-dimensional plane; update the rendering, on the multi-touch display device, of the three-dimensional view based on the three-dimensional data set to visually depict the two-dimensional plane by; removing at least a portion of the visual display of the first subset of the three-dimensional data set from the visual display of the three-dimensional view based on the three-dimensional data set, displaying, within the three-dimensional view based on the three-dimensional data set, a visual indication of the bounded area on the two-dimensional plane, and displaying, within the three-dimensional view based on the three-dimensional data set, at least a portion of the first subset of the two-dimensional data set; render, on a second region of the multi-touch display device that is distinct from the first region of the multi-touch display device, a two-dimensional view of the first subset of the two-dimensional data set such that the multi-touch display device concurrently displays both the two-dimensional view of the first subset of the two-dimensional data set and the updated three-dimensional view based on the three-dimensional data set that visually depicts the two-dimensional plane; providing a first control set that enables a user of the multi-touch display device to visually navigate through the three-dimensional data set by engaging points on the second region of the multi-touch display device corresponding to the display of the two-dimensional view of the first subset of the two-dimensional data set, the first control set including; a first translation control configured to; detect engagement by one or more input mechanisms of one or more points on the multi-touch display device corresponding to the display of the two-dimensional view of the first subset of the two-dimensional data set, track movement of the one or more input mechanisms while the one or more input mechanisms remain engaged with the one or more points on the multi-touch display device, translate the bounded area on the two-dimensional plane to a new position on the two-dimensional plane as a function of the tracked movement of the one or more input mechanisms such that a new first subset of the two-dimensional data set corresponds to points that lie within the translated bounded area on the two-dimensional plane and a new second subset of the two-dimensional data set corresponds to points that lie outside of the translated bounded area on the two dimensional plane, update the rendering, on the multi-touch display device of the three-dimensional view based on the three-dimensional data set by translating, within the three-dimensional view based on the three-dimensional data set, the visual indication of the bounded area on the two-dimensional plane to reflect the new position of the translated bounded area on the two-dimensional plane, and update the rendering, on the multi-touch display device, of the two-dimensional view of the first subset of the two-dimensional data set to display a two-dimensional view of the new first subset of the two-dimensional data set corresponding to points that lie within the translated bounded area on the two-dimensional plane; a first scale control configured to; detect engagement by at least two input mechanisms of at least two points on the multi-touch display device corresponding to the display of the two-dimensional view of the first subset of the two-dimensional data set, track movement of the at least two input mechanisms while the at least two input mechanisms remain engaged with the one or more points on the multi-touch display device, scale dimensions of the bounded area on the two-dimensional plane as a function of the tracked movement of the at least two input mechanisms such that a new first subset of the two-dimensional data set corresponds to points that lie within the scaled bounded area on the two dimensional plane and a new second subset of the two-dimensional data set corresponds to points that lie outside of the scaled bounded area on the two dimensional plane, update the rendering, on the multi-touch display device of the three-dimensional view based on the three-dimensional data set by scaling, within the three-dimensional view based on the three-dimensional data set, the visual indication of the bounded area on the two-dimensional plane to reflect the scaled dimensions of the scaled bounded area on the two-dimensional plane, and update the rendering, on the multi-touch display device, of the two-dimensional view of the first subset of the two-dimensional data set to display a two-dimensional view of the new first subset of the two-dimensional data set corresponding to points that lie within the scaled bounded area on the two-dimensional plane; and a first rotation control configured to; detect engagement by one or more input mechanisms of one or more points on the multi-touch display device corresponding to the display of the two-dimensional view of the first subset of the two-dimensional data set, track movement of the one or more input mechanisms while the one or more input mechanisms remain engaged with the one or more points on the multi-touch display device, rotate the bounded area on the two-dimensional plane in two-dimensions around a point within the bounded area as a function of the tracked movement of the one or more input mechanisms such that a new first subset of the two-dimensional data set corresponds to points that lie within the rotated bounded area on the two dimensional plane and a new second subset of the two-dimensional data set corresponds to points that lie outside of the rotated bounded area on the two dimensional plane, update the rendering, on the multi-touch display device of the three-dimensional view based on the three-dimensional data set by rotating, within the three-dimensional view based on the three-dimensional data set, the visual indication of the bounded area on the two-dimensional plane to reflect the rotation of the rotated bounded area on the two-dimensional plane, and update the rendering, on the multi-touch display device, of the two-dimensional view of the first subset of the two-dimensional data set to display a two-dimensional view of the new first subset of the two-dimensional data set corresponding to points that lie within the rotated bounded area on the two-dimensional plane; and providing a second control set that enables a user of the multi-touch display device to visually navigate through the three-dimensional data set by engaging points on the multi-touch display device corresponding to the display within the three-dimensional data set based on the visual indication of the bounded area on the two-dimensional plane, the second control set including; a second translation control configured to; detect engagement by one or more input mechanisms of one or more points on the multi-touch display device corresponding to the display of the visual indication of the bounded area on the two-dimensional plane, track movement of the one or more input mechanisms while the one or more input mechanisms remain engaged with the one or more points on the multi-touch display device, translate the bounded area on the two-dimensional plane to a new position on the two-dimensional plane as a function of the tracked movement of the one or more input mechanisms such that a new first subset of the two-dimensional data set corresponds to points that lie within the translated bounded area on the two dimensional plane and a new second subset of the two-dimensional data set corresponds to points that lie outside of the translated bounded area on the two dimensional plane, update the rendering, on the multi-touch display device of the three-dimensional view based on the three-dimensional data set by translating, within the three-dimensional view based on the three-dimensional data set, the visual indication of the bounded area on the two-dimensional plane to reflect the new position of the translated bounded area on the two-dimensional plane, and update the rendering, on the multi-touch display device, of the two-dimensional view of the first subset of the two-dimensional data set to display a two-dimensional view of the new first subset of the two-dimensional data set corresponding to points that lie within the translated bounded area on the two-dimensional plane; a second scale control configured to; detect engagement by one or more input mechanisms of one or more points on the multi-touch display device corresponding to the display of the visual indication of the bounded area on the two-dimensional plane, track movement of the one or more input mechanisms while the one or more input mechanisms remain engaged with the one or more points on the multi-touch display device, scale dimensions of the bounded area on the two-dimensional plane as a function of the tracked movement of the one or more input mechanisms such that a new first subset of the two-dimensional data set corresponds to points that lie within the scaled bounded area on the two dimensional plane and a new second subset of the two-dimensional data set corresponds to points that lie outside of the scaled bounded area on the two dimensional plane, update the rendering, on the multi-touch display device of the three-dimensional view based on the three-dimensional data set by scaling, within the three-dimensional view based on the three-dimensional data set, the visual indication of the bounded area on the two-dimensional plane to reflect the scaled dimensions of the scaled bounded area on the two-dimensional plane, and update the rendering, on the multi-touch display device, of the two-dimensional view of the first subset of the two-dimensional data set to display a two-dimensional view of the new first subset of the two-dimensional data set corresponding to points that lie within the scaled bounded area on the two-dimensional plane; and a second rotation control configured to; detect engagement by one or more input mechanisms of one or more points on the multi-touch display device corresponding to the display of the visual indication of the bounded area on the two-dimensional plane, track movement of the one or more input mechanisms while the one or more input mechanisms remain engaged with the one or more points on the multi-touch display device, rotate the bounded area on the two-dimensional plane in two dimensions around a point within the bounded area as a function of the tracked movement of the one or more input mechanisms such that a new first subset of the two-dimensional data set corresponds to points that lie within the rotated bounded area on the two dimensional plane and a new second subset of the two-dimensional data set corresponds to points that lie outside of the rotated bounded area on the two dimensional plane, update the rendering, on the multi-touch display device of the three-dimensional view based on the three-dimensional data set by rotating, within the three-dimensional view based on the three-dimensional data set, the visual indication of the bounded area of the two-dimensional plane to reflect the rotation of the rotated bounded area on the two-dimensional plane, and update the rendering, on the multi-touch display device, of the two-dimensional view of the first subset of the two-dimensional data set to display a two-dimensional view of the new first subset of the two-dimensional data set corresponding to points that lie within the rotated bounded area on the two-dimensional plane. - View Dependent Claims (16, 17, 18, 19)
-
-
20. A multi-touch display device comprising:
-
a display; a multi-touch input sensor; a processor; and a computer memory device storing instructions that, when executed by the processor, cause the processor to; access a three-dimensional data set; render, on a first region of the display, a three-dimensional view based on the accessed three-dimensional data set; specify an equation for a two-dimensional plane that defines a two-dimensional plane that intersects a space defined by the three-dimensional data set, 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 plane having a normal defining a positive direction relative to the two-dimensional plane and a negative direction relative to the two-dimensional plane, the first and second subsets of the three-dimensional data set being disjoint and corresponding to points located on opposing sides of the two-dimensional plane from one another, 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 plane, and 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 plane; specify, on the two-dimensional plane, a bounded area, the bounded area defining first and second subsets of the two-dimensional data set, the first and second subsets of the two-dimensional data set being disjoint, the first subset of the two-dimensional data set including data from the two-dimensional data set that corresponds to points that lie within the bounded area on the two-dimensional plane, and the second subset of the two-dimensional data set including data from the two-dimensional data set that lies outside of the bounded area on the two-dimensional plane; update the rendering, on the display, of the three-dimensional view based on the three-dimensional data set to visually depict the two-dimensional plane by; removing at least a portion of the visual display of the first subset of the three-dimensional data set from the visual display of the three-dimensional view based on the three-dimensional data set, displaying, within the three-dimensional view based on the three-dimensional data set, a visual indication of the bounded area on the two-dimensional plane, and displaying, within the three-dimensional view based on the three-dimensional data set, at least a portion of the first subset of the two-dimensional data set; render, on a second region of the display that is distinct from the first region of the display, a two-dimensional view of the first subset of the two-dimensional data set such that the display concurrently displays both the two-dimensional view of the first subset of the two-dimensional data set and the updated three-dimensional view based on the three-dimensional data set that visually depicts the two-dimensional plane; provide a first control set that enables a user of the multi-touch display device to visually navigate through the three-dimensional data set by engaging points on the second region of the multi-touch input sensor corresponding to the display of the two-dimensional view of the first subset of the two-dimensional slice of data intersected by the two-dimensional plane, the first control set including; a first translation control configured to; detect engagement by one or more input mechanisms of one or more points on the multi-touch input sensor corresponding to the display of the two-dimensional view of the first subset of the two-dimensional slice of data, track movement of the one or more input mechanisms while the one or more input mechanisms remain engaged with the one or more points on the multi-touch input sensor, translate the bounded area on the two-dimensional plane to a new position on the two-dimensional plane as a function of the tracked movement of the one or more input mechanisms such that a new first subset of the two-dimensional data set corresponds to points that lie within the translated bounded area on the two-dimensional plane and a new second subset of the two-dimensional data set corresponds to points that lie outside of the translated bounded area on the two dimensional plane, update the rendering, on the display of the three-dimensional view based on the three-dimensional data set by translating, within the three-dimensional view based on the three-dimensional data set, the visual indication of the bounded area of the two-dimensional plane to reflect the new position of the translated bounded area on the two-dimensional plane, and update the rendering, on the display, of the two-dimensional view of the first subset of the two-dimensional data set to display a two-dimensional view of the new first subset of the two-dimensional data set corresponding to points that lie within the translated bounded area on the two-dimensional plane; a first scale control configured to; detect engagement by at least two input mechanisms of at least two points on the multi-touch input sensor corresponding to the display of the two-dimensional view of the first subset of the two-dimensional data set, track movement of the at least two input mechanisms while the at least two input mechanisms remain engaged with the one or more points on the multi-touch input sensor, scale dimensions of the bounded area on the two-dimensional plane as a function of the tracked movement of the at least two input mechanisms such that a new first subset of the two-dimensional slice of data corresponds to points that lie within the scaled bounded area on the two-dimensional plane and a new second subset of the two-dimensional data set corresponds to points that lie outside of the scaled bounded area on the two dimensional plane, update the rendering, on the display of the three-dimensional view of the three-dimensional data set by scaling, within the three-dimensional view of the three-dimensional data set, the visual indication of the bounded area of the two-dimensional plane to reflect the scaled dimensions of the scaled bounded area on the two-dimensional plane, and update the rendering, on the display, of the two-dimensional view of the first subset of the two-dimensional data set to display a two-dimensional view of the new first subset of the two-dimensional data set corresponding to points that lie within the scaled bounded area on the two-dimensional plane; and a first rotation control configured to; detect engagement by one or more input mechanisms of one or more points on the multi-touch input sensor corresponding to the display of the two-dimensional view of the first subset of the two-dimensional data set, track movement of the one or more input mechanisms while the one or more input mechanisms remain engaged with the one or more points on the multi-touch input sensor, rotate the bounded area on the two-dimensional plane in two-dimensions around a point within the bounded area as a function of the tracked movement of the one or more input mechanisms such that a new first subset of the two-dimensional data set corresponds to points that lie within the rotated bounded area on the two dimensional plane and a new second subset of the two-dimensional data set corresponds to points that lie outside of the rotated bounded area on the two dimensional plane, update the rendering, on the display, of the three-dimensional view based on the three-dimensional data set by rotating, within the three-dimensional view based on the three-dimensional data set, the visual indication of the bounded area of the two-dimensional plane to reflect the rotation of the rotated bounded area on the two-dimensional plane, and update the rendering, on the display, of the two-dimensional view of the first subset of the two-dimensional data set to display a two-dimensional view of the new first subset of the two-dimensional data set corresponding to points that lie within the rotated bounded area on the two-dimensional plane; and provide a second control set that enables a user of the multi-touch display device to visually navigate through the three-dimensional data set by engaging points on the multi-touch input sensor corresponding to the display within the three-dimensional data set of the visual indication of the bounded area on the two-dimensional plane, the second control set including; a second translation control configured to; detect engagement by one or more input mechanisms of one or more points on the multi-touch input sensor corresponding to the display of the visual indication of the bounded area on the two-dimensional plane, track movement of the one or more input mechanisms while the one or more input mechanisms remain engaged with the one or more points on the multi-touch input sensor, translate the bounded area on the two-dimensional plane to a new position on the two-dimensional plane as a function of the tracked movement of the one or more input mechanisms such that a new first subset of the two-dimensional data set corresponds to points that lie within the translated bounded area on the two dimensional plane and a new second subset of the two-dimensional data set corresponds to points that lie outside of the translated bounded area on the two dimensional plane, update the rendering, on the display of the three-dimensional view based on the three-dimensional data set by translating, within the three-dimensional view based on the three-dimensional data set, the visual indication of the bounded area of the two-dimensional plane to reflect the new position of the translated bounded area on the two-dimensional plane, and update the rendering, on the display, of the two-dimensional view of the first subset of the two-dimensional data set to display a two-dimensional view of the new first subset of the two-dimensional data set corresponding to points that lie within the translated bounded area on the two-dimensional plane; a second scale control configured to; detect engagement by one or more input mechanisms of one or more points on the multi-touch input sensor corresponding to the display of the visual indication of the bounded area on the two-dimensional plane, track movement of the one or more input mechanisms while the one or more input mechanisms remain engaged with the one or more points on the multi-touch input sensor, scale dimensions of the bounded area on the two-dimensional plane as a function of the tracked movement of the one or more input mechanisms such that a new first subset of the two-dimensional data set corresponds to points that lie within the scaled bounded area on the two dimensional plane and a new second subset of the two-dimensional data set corresponds to points that lie outside of the scaled bounded area on the two dimensional plane, update the rendering, on the display of the three-dimensional view based on the three-dimensional data set by scaling, within the three-dimensional view based on the three-dimensional data set, the visual indication of the bounded area of the two-dimensional plane to reflect the scaled dimensions of the scaled bounded area on the two-dimensional plane, and update the rendering, on the display, of the two-dimensional view of the first subset of the two-dimensional data set to display a two-dimensional view of the new first subset of the two-dimensional data set corresponding to points that lie within the scaled bounded area on the two-dimensional plane; and a second rotation control configured to; detect engagement by one or more input mechanisms of one or more points on the multi-touch input sensor corresponding to the display of the visual indication of the bounded area on the two-dimensional plane, track movement of the one or more input mechanisms while the one or more input mechanisms remain engaged with the one or more points on the multi-touch input sensor, rotate the bounded area on the two-dimensional plane in two dimensions around a point within the bounded area as a function of the tracked movement of the one or more input mechanisms such that a new first subset of the two-dimensional data set corresponds to points that lie within the rotated bounded area on the two dimensional plane and a new second subset of the two-dimensional data set corresponds to points that lie outside of the rotated bounded area on the two dimensional plane, update the rendering, on the display of the three-dimensional view based on the three-dimensional data set by rotating, within the three-dimensional view based on the three-dimensional data set, the visual indication of the bounded area of the two-dimensional plane to reflect the rotation of the rotated bounded area on the two-dimensional plane, and update the rendering, on the display, of the two-dimensional view of the first subset of the two-dimensional data set to display a two-dimensional view of the new first subset of the two-dimensional data set corresponding to points that lie within the rotated bounded area on the two-dimensional plane.
-
Specification