Method and system for inversion of detail-in-context presentations
First Claim
1. In a data processing system that executes a program of instructions, a method for inverting a distorted surface in a detail-in-context presentation comprising the steps of:
- a) locating a first approximation point Pi for an inversion of a point X, wherein said point Pi is on an undistorted surface and said point X is on said distorted surface;
b) obtaining a point PiD by displacing said point Pi onto said distorted surface by applying a distortion function D;
calculating a magnitude of the difference |PiD−
X| between said point X and said PiD;
determining whether said point Pi is acceptable for said inversion of said point X by comparing said magnitude of the difference to a tolerance δ
; and
, selecting said tolerance δ
as a fraction of a width of a pixel for a computer display surface wherein said fraction includes one half;
c) locating a next approximation point Pi+1 for said inversion of said point X if said approximation point Pi is not acceptable for said inversion of said point X; and
, d) repeating steps (b) and (c) until said approximation point is acceptable for said inversion of said point X.
10 Assignments
0 Petitions
Accused Products
Abstract
In a data processing system that executes a program of instructions, a method of inverting a distorted surface in a detail-in-context presentation is provided comprising the steps of locating a first approximation point in an undistorted surface for the inversion of a point in a distorted surface, determining if the approximation point is acceptable as an inversion of the point in the distorted surface, locating a next approximation point in the undistorted surface if the first approximation point is not acceptable, and repeating this process until an acceptable approximation point is located for the inversion of the point in the distorted surface. The use of this method to obtain the distance between points on an undistorted surface from the relative distances between corresponding points on a plurality of distorted surfaces in a detail-in-context presentation is provided. A data processing system for the inversion of detail-in-context presentations is provided including an input device, a central processing unit, memory, and a display wherein said data processing system has stored therein data representing sequences of instructions which when executed cause the method described to be performed.
68 Citations
44 Claims
-
1. In a data processing system that executes a program of instructions, a method for inverting a distorted surface in a detail-in-context presentation comprising the steps of:
-
a) locating a first approximation point Pi for an inversion of a point X, wherein said point Pi is on an undistorted surface and said point X is on said distorted surface;
b) obtaining a point PiD by displacing said point Pi onto said distorted surface by applying a distortion function D;
calculating a magnitude of the difference |PiD−
X| between said point X and said PiD;
determining whether said point Pi is acceptable for said inversion of said point X by comparing said magnitude of the difference to a tolerance δ
; and
, selecting said tolerance δ
as a fraction of a width of a pixel for a computer display surface wherein said fraction includes one half;
c) locating a next approximation point Pi+1 for said inversion of said point X if said approximation point Pi is not acceptable for said inversion of said point X; and
,d) repeating steps (b) and (c) until said approximation point is acceptable for said inversion of said point X. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
a) projecting said point PiD onto said line RVP-X to locate a point PiP, where said point PiP is a closest point to said point PiD on said line RVP-X; and
,b) projecting said point PiP onto said undistorted surface in a direction opposite to that of a displacement due to distortion to locate said next approximation point Pi+1 for said inversion of said point X, wherein said displacement due to distortion is given by a line Fo-F constructed through said undistorted surface and a focus F of said distorted surface, and wherein said point Pi+1 is located on said undistorted surface at a point of intersection of said undistorted surface and a line constructed parallel to said line Fo-F and passing through said point PiP.
-
-
6. The method of claim 1 and further comprising the step of bisecting said point Pi to counter divergence in successive approximations of said point Pi due to folds or discontinuities in said distorted surface.
-
7. The method of claim 1 wherein said distorted surface is a plane.
-
8. The method of claim 1 wherein distorted surface is defined by said distortion function D.
-
9. The method of claim 8 wherein said distortion function D is an n-dimensional function, where n is an integer greater than zero.
-
10. The method of claim 9 wherein said distortion function D is a three-dimensional function.
-
11. The method of claim 8 wherein said distortion function D is a lens function.
-
12. A system for inverting a distorted surface in a detail-in-context presentation, said system having memory, a display, and an input device, said system comprising:
-
a processor coupled to said memory, display, and input device and adapted for;
(a) locating a first approximation point Pi for inversion of a point X, wherein said point Pi on an undistorted surface and said point X is on said distorted surface;
(b) obtaining a point PiD by displacing said point Pi onto said distorted surface by applying a distortion function D;
calculating a magnitude of the difference |PiD−
X| between said point X and said point PiD;
determining whether said point Pi is acceptable for said inversion of said point X comparing said magnitude of the difference to a tolerance δ
; and
, selecting said tolerance δ
as a fraction of a width of a pixel for said display wherein said fraction includes one half;
(c) locating a next approximation point Pi+1 for said inversion of said point X if said approximation point Pi is not acceptable or said inversion of said point X; and
,(d) repeating (c) until said approximation point is acceptable for said inversion of said point X. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
(a) projecting said point PiD onto said line RVP-X to locate a point PiP, where said point PiP is a closest point to said point PiD on said line RVP-X; and
, (b) projecting said point PiP onto said undistorted surface in a direction opposite to that of a displacement due to distortion to locate said next approximation point Pi+1 for said inversion of said point X, wherein said displacement due to distortion is given by a line Fo-F constructed through said undistorted surface and a focus F of said distorted surface, and wherein said point Pi+1 is located on said undistorted surface at a point of intersection of said undistorted surface and a line constructed parallel to said line Fo-F and passing through said point PiP.
-
-
17. The system of claim 12 wherein said processor is further adapted for bisecting said point Pi to counter divergence in successive approximations of said point Pi due to folds or discontinuities in said distorted surface.
-
18. The system of claim 12 wherein said undistorted surface is a plane.
-
19. The system of claim 12 wherein said distorted surface is defined by said distortion function D.
-
20. The system of claim 19 wherein said distortion function D is an n-dimensional function, where n is an integer greater than zero.
-
21. The system of claim 20 wherein said distortion function D is a three-dimensional function.
-
22. The system of claim 19 wherein said distortion function D is a lens function.
-
23. A computer program product having a computer readable medium tangibly embodying computer executable code for directing a data processing system to invert a distorted surface in a detail-in-context presentation, said computer program product comprising:
-
code for (a) locating a first approximation point Pi for inversion of a point X, wherein said point Pi is on an undistorted surface and said point X is on said distorted surface;
code for (b) obtaining a point by displacing said point Pi onto said distorted surface by applying a distortion function D;
calculating a magnitude of the difference |PiD X| between said point X and said point PiD;
determining ether said point Pi is acceptable for said inversion of said point X by comparing said magnitude of the difference to a tolerance δ
; and
, selecting said tolerance δ
as a fraction of a width of a pixel for a computer display surface wherein said fraction includes one half;
code for (c) locating next approximation point Pi+1 for said inversion of said point X if said approximation point Pi is not acceptable for said in anion of said point X; and
,code for (d) repeating (b) and (c) until said approximation point is acceptable for said inversion of said point X. - View Dependent Claims (24, 25, 26, 27, 28, 29, 30, 31, 32, 33)
code for (a) projecting said point PiD onto said line RVP-X to locate a point PiP, where said point PiP is a closest point to said point PiD on said line RVP-X; and
,code for (b) projecting said point PiP onto said undistorted surface in a direction opposite to that of a displacement due to distortion to locate said next approximation point Pi+1 for said inversion of said point X, wherein said displacement due to distortion is given by a line Fo-F constructed through said undistorted surface and a focus F of said distorted surface, and wherein said point Pi+1 is located on said undistorted surface at a point of intersection of said undistorted surface and a line constructed parallel to said line Fo-F and passing through said point PiP.
-
-
28. The computer program product of claim 23 and further comprising code for bisecting said point Pi to counter divergence in successive approximations of said point Pi due to folds or discontinuities in said distorted surface.
-
29. The computer program product of claim 23 wherein said undistorted surface is a plane.
-
30. The computer program product of claim 23 wherein said distorted surface is defined by said distortion function D.
-
31. The computer program product of claim 30 wherein said distortion function D is an n-dimensional function, where n is an integer greater than zero.
-
32. The computer program product of claim 31 wherein said distortion function D is a three-dimensional function.
-
33. The computer program product of claim 30 wherein said distortion function D is a lens function.
-
34. An article having a computer readable modulated carrier signal being usable over a network, and having means embedded in the computer readable modulated carrier signal for directing a data processing system to invert a distorted surface in a detail-in-context presentation, said article comprising:
-
means in the medium for (a) locating a first approximation point Pi for an inversion of a point X, wherein said point Pi is on an undistorted surface and said point X is on said distorted surface;
means in the medium for (b) obtaining a point PiD by displacing said point Pi onto said distorted surface by applying a distortion function D;
calculating a magnitude of the difference |PiD-X| between said point X and said point PiD;
determining whether said point Pi is acceptable for said inversion of said point by comparing said magnitude of the difference to a tolerance δ
; and
, selecting said tolerance δ
as a fraction of a width of a pixel for a computer display surface wherein said fraction includes one half;
means in the medium for (c) locating a next approximation point Pi+1 for said inversion of said point X if said approximation point Pi is not acceptable for said inversion of said point X; and
,means in the medium for (d) repeating (b) and (c) until said approximation point is acceptable for said inversion of said point x. - View Dependent Claims (35, 36, 37, 38, 39, 40, 41, 42, 43, 44)
means in the medium for (a) projecting said point PiP onto said line RVP-X to locate a point PiP, where said point PiP is a closest point to said point PiD on said line RVP-X; and
,means in the medium for (b) projecting said point PiP onto said undistorted surface in a direction opposite that of a displacement due o distortion to locate said next approximation point Pi+1 for said inversion of said point X, wherein said displacement due to distortion is given by a line Fo-F constructed through said undistorted surface and a focus F of said distorted surface, and wherein said point Pi+1 is located on said undistorted surface at a point of intersection of said undistorted surface and a line constructed parallel to said line Fo-F and passing through said point PiP.
-
-
39. The article of claim 34 and further comprising means in the medium for bisecting said point Pi counter divergence in successive approximations of said point Pi due to folds or discontinuities in said distorted surface.
-
40. The article of claim 34 wherein said undistorted surface is a basal plane.
-
41. The article of claim 34 wherein said distorted surface is defined by said distortion function D.
-
42. The article of claim 41 wherein said distortion function D is an n-dimensional function, where n is an integer greater than zero.
-
43. The article of claim 42 wherein said distortion function D is a three-dimensional function.
-
44. The article of claim 41 wherein said distortion function D is a lens function.
Specification