Trackball systems and methods for rotating a three-dimensional image on a computer display
First Claim
1. A method for rotating a three-dimensional image displayed by a computer, comprising:
- (a) using a trackball connected to the computer to provide input to the computer, the trackball including a roller ball having a spherical, scannable surface and being rotatable around its center point;
(b) defining a coordinate system, within which there are defined first and second local scanning regions corresponding respectively to first and second portions of the roller ball surface to be scanned, and within which there are further defined non-antipodal first and second reference locations respectively located within the first and second local scanning regions;
(c) scanning the first and second portions of the roller ball surface at a starting time and at an ending time of a defined time interval;
(d) at the starting time, designating respective first and second non-antipodal points within the first and second scanned portions of the roller ball surface, wherein the designated first and second non-antipodal points comprise first and second points of the roller ball surface that are located, respectively, at the first and second reference locations at the starting time, wherein the designated first and second non-antipodal points are selected without reference to any previously designated points on the roller ball surface;
(e) detecting changes in position of the first and second non-antipodal points occurring during the time interval, wherein any detected changes in position correspond to respective displacements within the first and second local scanning regions relative to the first and second reference locations, wherein displacement data generated during the time interval, comprising magnitude and direction of each displacement, uniquely identifies a change in roller ball orientation occurring during the time interval, without reference to an absolute orientation of the roller ball;
(f) using the displacement data to generate a transformation representing the change of rotational orientation of the roller ball; and
(g) applying the transformation to the displayed computer image to rotate the displayed image around an image pivot point in correspondence with the rotation of the roller ball around its center point.
0 Assignments
0 Petitions
Accused Products
Abstract
A trackball rotates a three-dimensional image displayed by a computer. Displacement data is generated for designated first and second non-antipodal points on the surface of the trackball'"'"'s roller ball, for displacement of the designated first and second points during a time interval between a starting time and an ending time. The displacement data is used to generate a rotational transformation that is representative of a change in rotational orientation of the roller ball occurring during the time interval. The generated transformation is then applied to the displayed computer image to cause the image to be rotated around an image pivot point in correspondence with the rotation of the roller ball around its center.
8 Citations
19 Claims
-
1. A method for rotating a three-dimensional image displayed by a computer, comprising:
-
(a) using a trackball connected to the computer to provide input to the computer, the trackball including a roller ball having a spherical, scannable surface and being rotatable around its center point; (b) defining a coordinate system, within which there are defined first and second local scanning regions corresponding respectively to first and second portions of the roller ball surface to be scanned, and within which there are further defined non-antipodal first and second reference locations respectively located within the first and second local scanning regions; (c) scanning the first and second portions of the roller ball surface at a starting time and at an ending time of a defined time interval; (d) at the starting time, designating respective first and second non-antipodal points within the first and second scanned portions of the roller ball surface, wherein the designated first and second non-antipodal points comprise first and second points of the roller ball surface that are located, respectively, at the first and second reference locations at the starting time, wherein the designated first and second non-antipodal points are selected without reference to any previously designated points on the roller ball surface; (e) detecting changes in position of the first and second non-antipodal points occurring during the time interval, wherein any detected changes in position correspond to respective displacements within the first and second local scanning regions relative to the first and second reference locations, wherein displacement data generated during the time interval, comprising magnitude and direction of each displacement, uniquely identifies a change in roller ball orientation occurring during the time interval, without reference to an absolute orientation of the roller ball; (f) using the displacement data to generate a transformation representing the change of rotational orientation of the roller ball; and (g) applying the transformation to the displayed computer image to rotate the displayed image around an image pivot point in correspondence with the rotation of the roller ball around its center point. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system for rotating a three-dimensional computer image, comprising:
-
a computer including an image rotator for rotating the three-dimensional image around an image pivot point; a trackball corrected to the computer, the trackball including a roller ball having a spherical, scannable surface, the roller ball being rotatable around its center point, wherein the trackball includes means for defining a coordinate system and for defining first local scanning region and a second local scanning region within the defined coordinate system corresponding respectively to first and second portions of the roller ball surface to be scanned, and within which there are further defined non-antipodal first and second reference locations respectively located within the first and second local scanning regions; the trackball further including at least one sensor for scanning the first and second portions of the roller ball surface, and for monitoring designated first and second non-antipodal points at the roller ball surface, wherein the designated first and second non-antipodal points comprise first and second points of the roller ball surface that are located, respectively, at the first and second reference locations at a starting time of a scanning time interval, wherein the designated first and second non-antipodal points are selected without reference to any previously designated points on the roller ball surface; wherein the at least one sensor includes means for detecting changes in position of the first and second non-antipodal points occurring during the time interval, wherein any detected changes in position correspond to respective displacements within the first and second local scanning regions relative to the first and second reference locations, wherein displacement data generated during the time interval, comprising magnitude and direction of each displacement, uniquely identities a change in roller ball orientation occurring during the time interval, without reference to an absolute orientation of the roller ball; and a transformation generator connected to the sensor for generating a transformation based upon the displacement data, the transformation representing a change in rotational orientation of the roller ball occurring during the time interval, the image rotator receiving the transformation as an input and applying the transformation to the displayed image to rotate the image around the image pivot point in correspondence with rotation of the roller ball around its center point. - View Dependent Claims (12, 13, 14)
-
-
15. A trackball, comprising:
-
a base; a roller ball seated on top of the base, the roller ball having a spherical, scannable surface and being rotatable around its center point; means for defining a defined coordinate system and for defining a first local scanning region and a second local scanning region within the defined coordinate system corresponding to first and second portions of the roller surface to be scanned; and at least one sensor for scanning the first and second portions of the roller ball surface, and for monitoring designated first and second non-antipodal points at the roller ball surface, wherein the first non-antipodal point corresponds to a first reference location in the first local scanning region and the second non-antipodal point corresponds to a second reference location in the second local scanning region, wherein the at least one sensor includes, means for detecting changes in position of the first and second non-antipodal points occurring during a time interval having a starting time and an ending time, wherein any detected changes in position correspond to respective displacements within the first and second local scanning regions relative to the first and second reference locations, wherein displacement data generated during the time interval, comprising magnitude and direction of each displacement, uniquely identifies a change in roller ball orientation occurring during the time interval, without reference to an absolute orientation of the roller ball, and wherein the first and second non-antipodal points are newly designated at the starting time of each time interval based upon their respective proximity to the first and second reference locations, without reference to any previously designated points on the roller ball surface. - View Dependent Claims (16, 17, 18, 19)
-
Specification