P
USRE44348EExpiredUtilityPatentIndex 48

Detail-in-context terrain displacement algorithm with optimizations

Assignee: MONTAGNESE CATHERINEPriority: Apr 13, 2005Filed: Aug 24, 2011Granted: Jul 9, 2013
Est. expiryApr 13, 2025(expired)· nominal 20-yr term from priority
Inventors:MONTAGNESE CATHERINETIGGES MARK H A
G06T 17/05G06T 3/047
48
PatentIndex Score
0
Cited by
320
References
47
Claims

Abstract

A method for generating a presentation of a region-of-interest in a terrain data representation for display on a display screen, comprising: translating each point of the representation within a lens bounds to a rotated plane being normal to a vector defined by a position for the region-of-interest with respect to a base plane for the representation and an apex above the base plane, the lens bounds defining a shoulder region at least partially surrounding a focal bounds defining a focal region in which the position is located, each point having a respective height above the base plane; displacing each translated point from the rotated plane by a function of the respective height and a magnification for the focal region, the magnification varying across the shoulder region in accordance with a drop-off function; rotating each displaced point toward a viewpoint for the region-of-interest to maintain visibility of each displaced point and each point of the data representation beyond the lens bounds when viewed from the viewpoint; and, adjusting each rotated point corresponding to the shoulder region to provide a smooth transition to the data representation beyond the lens bounds.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A method for generating a presentation of a region-of-interest in a terrain data representation for display on a display screen of a data processing system, comprising:
 translating each point of the representation, by the data processing system, within a lens bounds to a rotated plane being normal to a vector defined by a position for the region-of-interest with respect to a base plane for the representation and an apex above the base plane, the lens bounds defining a shoulder region at least partially surrounding a focal bounds defining a focal region in which the position is located, each point having a respective height above the base plane; 
 displacing each translated point from the rotated plane, by the data processing system, by a function of the respective height and a magnification for the focal region, the magnification varying across the shoulder region in accordance with a drop-off function; 
 rotating each displaced point, by the data processing system, toward a viewpoint for the region-of-interest to maintain visibility of each displaced point; and 
 adjusting each rotated point corresponding to the shoulder region, by the data processing system, to provide a smooth transition to the data representation beyond the lens bounds. 
 
     
     
       2. The method of  claim 1  and further comprising projecting each adjusted point within the shoulder region, each rotated point within the focal region, and each point of the representation beyond the lens bounds onto a plane in a direction aligned with the viewpoint to produce the presentation. 
     
     
       3. The method of  claim 2  and further comprising displaying the presentation on the display screen. 
     
     
       4. The method of  claim 3  wherein the translating of each point further comprises determining a maximum translation for a point on the lens bounds and determining a translation for each point within the lens bounds by scaling the maximum translation in accordance with a distance of each point from the lens bounds. 
     
     
       5. The method of  claim 3  wherein the function is a product of the magnification and a difference between a magnitude of a vector defined by an origin of the representation with respect to the base plane and the viewpoint and the respective height. 
     
     
       6. The method of  claim 3  wherein the rotating of each displaced point further comprises determining an axis of rotation for the rotating from a cross product of a vector defined by an origin of the representation with respect to the base plane and the viewpoint and a vector defined by the origin and the apex. 
     
     
       7. The method of  claim 3  wherein the adjusting of each rotated point corresponding to the shoulder region further comprises adding to each rotated point a weighted average of first and second difference vectors scaled by the drop-off function, the first and second difference vectors corresponding to a difference between first and seconds points on the lens bound and corresponding first and second displaced points, respectively, the first and second points being on a line drawn through the rotated point. 
     
     
       8. The method of  claim 1  and further comprising approximating the representation with a mesh. 
     
     
       9. The method of  claim 1  and further comprising approximating the respective height using height information from surrounding points. 
     
     
       10. A system comprising:
 a processor; and 
 a module that is executable on the processor for translating each point of a terrain data representation within a lens bounds of a presentation of a region-of-interest, for display on a display screen, to a rotated plane being normal to a vector defined by a position for the region-of-interest with respect to a base plane for the representation and an apex above the base plane, the lens bounds defining a shoulder region at least partially surrounding a focal bounds defining a focal region in which the position is located, each point having a respective height above the base plane; 
 a module that is executable on the processor for displacing each translated point from the rotated plane by a function of the respective height and a magnification for the focal region, the magnification varying across the shoulder region in accordance with a drop-off function; 
 a module that is executable on the processor for rotating each displaced point toward a viewpoint for the region-of-interest to maintain visibility of each displaced point; and 
 a module that is executable on the processor for adjusting each rotated point corresponding to the shoulder region to provide a smooth transition to the data representation beyond the lens bounds. 
 
     
     
       11. The system of  claim 10  and further comprising a module for projecting each adjusted point within the shoulder region, each rotated point within the focal region, and each point of the representation beyond the lens bounds onto a plane in a direction aligned with the viewpoint to produce the presentation. 
     
     
       12. The system of  claim 11  and further comprising a module for displaying the presentation on the display screen. 
     
     
       13. The system of  claim 12  wherein the module for translating each point further comprises a module for determining a maximum translation for a point on the lens bounds and for determining a translation for each point within the lens bounds by scaling the maximum translation in accordance with a distance of each point from the lens bounds. 
     
     
       14. The system of  claim 12  wherein the function is a product of the magnification and a difference between a magnitude of a vector defined by an origin of the representation with respect to the base plane and the viewpoint and the respective height. 
     
     
       15. The system of  claim 12  wherein the module for rotating each displaced point further comprises a module for determining an axis of rotation for the rotating from a cross product of a vector defined by an origin of the representation with respect to the base plane and the viewpoint and a vector defined by the origin and the apex. 
     
     
       16. The system of  claim 12  wherein the module for adjusting each rotated point corresponding to the shoulder region further comprises a module for adding to each rotated point a weighted average of first and second difference vectors scaled by the drop-off function, the first and second difference vectors corresponding to a difference between first and seconds points on the lens bound and corresponding first and second displaced points, respectively, the first and second points being on a line drawn through the rotated point. 
     
     
       17. The system of  claim 10  and further comprising a module for approximating the representation with a mesh. 
     
     
       18. The system of  claim 10  and further comprising a module for approximating the respective height using height information from surrounding points. 
     
     
       19. One or more tangible computer-readable media having stored thereon, computer-executable instructions that, if executable by a data processing system, cause the data processing system to perform a method comprising:
 translating each point of a terrain data representation within a lens bounds of a presentation of a region-of-interest, for display on a display screen, to a rotated plane being normal to a vector defined by a position for the region-of-interest with respect to a base plane for the representation and an apex above the base plane, the lens bounds defining a shoulder region at least partially surrounding a focal bounds defining a focal region in which the position is located, each point having a respective height above the base plane; 
 displacing each translated point from the rotated plane by a function of the respective height and a magnification for the focal region, the magnification varying across the shoulder region in accordance with a drop-off function; 
 rotating each displaced point toward a viewpoint for the region-of-interest to maintain visibility of each displaced point; and 
 adjusting each rotated point corresponding to the shoulder region to provide a smooth transition to the data representation beyond the lens bounds. 
 
     
     
       20. The tangible computer-readable media of  claim 19  and further comprising projecting each adjusted point within the shoulder region, each rotated point within the focal region, and each point of the representation beyond the lens bounds onto a plane in a direction aligned with the viewpoint to produce the presentation. 
     
     
       21. The tangible computer-readable media of  claim 20  and further comprising displaying the presentation on the display screen. 
     
     
       22. The tangible computer-readable media of  claim 21  wherein the translating of each point further comprises determining a maximum translation for a point on the lens bounds and determining a translation for each point within the lens bounds by scaling the maximum translation in accordance with a distance of each point from the lens bounds. 
     
     
       23. The tangible computer-readable media of  claim 21  wherein the function is a product of the magnification and a difference between a magnitude of a vector defined by an origin of the representation with respect to the base plane and the viewpoint and the respective height. 
     
     
       24. The tangible computer-readable media of  claim 21  wherein the rotating of each displaced point further comprises determining an axis of rotation for the rotating from a cross product of a vector defined by an origin of the representation with respect to the base plane and the viewpoint and a vector defined by the origin and the apex. 
     
     
       25. The tangible computer-readable media of  claim 21  wherein the adjusting of each rotated point corresponding to the shoulder region further comprises adding to each rotated point a weighted average of first and second difference vectors scaled by the drop-off function, the first and second difference vectors corresponding to a difference between first and seconds points on the lens bound and corresponding first and second displaced points, respectively, the first and second points being on a line drawn through the rotated point. 
     
     
       26. The tangible computer-readable media of  claim 19  and further comprising approximating the representation with a mesh. 
     
     
       27. The tangible computer-readable media of  claim 19  and further comprising approximating the respective height using height information from surrounding points. 
     
     
       28. A method comprising:
 translating with at least one processor, data within a bounds of a lens from a base plane to a rotated plane to form translated data, wherein the bounds of the lens defines a shoulder region at least partially surrounding a focal region; and   displacing the translated data along an axis perpendicular to the rotated plane to form displaced data.    
     
     
       29. The method of claim 28, wherein the axis perpendicular to the rotated plane comprises a vector between:
 a lens position of the lens, and   an apex of a viewing volume including the lens.    
     
     
       30. The method of claim 29, wherein the translated data is displaced to form the displaced data by an amount determined according to:
 a magnification of the focal region of the lens; and   a vector between:
 an origin of the viewing volume, and 
 a view reference point.  
   
     
     
       31. The method of claim 28, further comprising rotating the displaced data to form rotated data.  
     
     
       32. The method of claim 31, wherein the displaced data is rotated towards a view reference point to form the rotated data.  
     
     
       33. The method of claim 32, wherein the displaced data is rotated by a rotation angle to form the rotated data; and
 wherein the rotation angle is proportional to an angle formed by:
 a vector between an apex and an origin of a viewing volume including the lens, and 
 a vector between the view reference point and the origin of the viewing volume.  
   
     
     
       34. The method of claim 31, further comprising adjusting the shoulder region of the rotated data to provide a smooth transition between the data within the bounds of the lens and data beyond the bounds of the lens.  
     
     
       35. A system comprising:
 one or more processors configured to:
 translate data within a bounds of a lens from a base plane to a rotated plane to form translated data, wherein the bounds of the lens defines a shoulder region at least partially surrounding a focal region; and 
 displace the translated data along an axis perpendicular to the rotated plane to form displaced data.  
   
     
     
       36. The system of claim 35, wherein the axis perpendicular to the rotated plane comprises a vector between:
 a lens position of the lens, and   an apex of a viewing volume including the lens.    
     
     
       37. The system of claim 35, wherein the one or more processors are configured to displace the translated data by an amount determined according to:
 a magnification of the focal region of the lens; and   a vector between:
 an origin of a viewing volume including the lens, and 
 a view reference point.  
   
     
     
       38. The system of claim 35, wherein the one or more processors are configured to rotate the displaced data to form rotated data.  
     
     
       39. The system of claim 38, wherein the one or more processors are configured to rotate the displaced data towards a view reference point to form the rotated data.  
     
     
       40. The system of claim 38, wherein the one or more processors are configured to adjust the shoulder region of the rotated data to provide a smooth transition between the data within the bounds of the lens and data beyond the bounds of the lens.  
     
     
       41. At least one non-transitory computer-readable medium including instructions for execution on one or more processors, wherein the instructions comprise:
 translation instructions configured to translate data within a bounds of a lens from a base plane to a rotated plane to form translated data, wherein the bounds of the lens defines a shoulder region at least partially surrounding a focal region; and   displacement instructions configured to displace the translated data along an axis perpendicular to the rotated plane to form displaced data.    
     
     
       42. The at least one non-transitory computer-readable medium of claim 41, wherein the axis perpendicular to the rotated plane comprises a vector between:
 a lens position of the lens, and   an apex of a viewing volume including the lens.    
     
     
       43. The at least one non-transitory computer-readable medium of claim 41, wherein the displacement instructions are configured to displace the translated data by an amount determined according to:
 a magnification of the focal region of the lens; and   a vector between:
 an origin of a viewing volume including the lens, and 
 a view reference point.  
   
     
     
       44. The at least one non-transitory computer-readable medium of claim 41, wherein the instructions comprise rotation instructions configured to rotate the displaced data to form rotated data.  
     
     
       45. The at least one non-transitory computer-readable medium of claim 44, wherein the rotation instructions are configured to rotate the displaced data towards a view reference point to form the rotated data.  
     
     
       46. The at least one non-transitory computer-readable medium of claim 45, wherein the rotation instructions are configured to rotate the displaced data by a rotation angle to form the rotated data; and
 the rotation angle is proportional to an angle formed by:
 a vector between an apex and an origin of a viewing volume including the lens, and 
 a vector between the view reference point and the origin of the viewing volume.  
   
     
     
       47. The at least one non-transitory computer-readable medium of claim 44, wherein the instructions comprise adjustment instructions configured to adjust the shoulder region of the rotated data to provide a smooth transition between the data within the bounds of the lens and data beyond the bounds of the lens.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.