USRE44348E1 - Detail-in-context terrain displacement algorithm with optimizations - Google Patents

Detail-in-context terrain displacement algorithm with optimizations Download PDF

Info

Publication number
USRE44348E1
USRE44348E1 US13/216,950 US201113216950A USRE44348E US RE44348 E1 USRE44348 E1 US RE44348E1 US 201113216950 A US201113216950 A US 201113216950A US RE44348 E USRE44348 E US RE44348E
Authority
US
United States
Prior art keywords
point
lens
data
rotated
bounds
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active, expires
Application number
US13/216,950
Inventor
Catherine Montagnese
Mark H. A. Tigges
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ACCESSIFY, LLC
Original Assignee
Noregin Assets NV LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Noregin Assets NV LLC filed Critical Noregin Assets NV LLC
Priority to US13/216,950 priority Critical patent/USRE44348E1/en
Application granted granted Critical
Publication of USRE44348E1 publication Critical patent/USRE44348E1/en
Assigned to CALLAHAN CELLULAR L.L.C. reassignment CALLAHAN CELLULAR L.L.C. MERGER (SEE DOCUMENT FOR DETAILS). Assignors: NOREGIN ASSETS N.V., L.L.C.
Assigned to INTELLECTUAL VENTURES ASSETS 186 LLC reassignment INTELLECTUAL VENTURES ASSETS 186 LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: CALLAHAN CELLULAR L.L.C.
Assigned to INTELLECTUAL VENTURES ASSETS 186 LLC reassignment INTELLECTUAL VENTURES ASSETS 186 LLC SECURITY INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MIND FUSION, LLC
Assigned to MIND FUSION, LLC reassignment MIND FUSION, LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: INTELLECTUAL VENTURES ASSETS 186 LLC
Assigned to ACCESSIFY, LLC reassignment ACCESSIFY, LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MIND FUSION, LLC
Active legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/05Geographic models
    • G06T3/047

Definitions

  • the invention relates to the field of computer graphics processing, and more specifically, to a method and system for generating detail-in-context lens presentations for terrain or elevation data.
  • Display screens are the primary visual display interface for computers.
  • One problem with display screens is that they are limited in size, thus presenting a challenge to user interface design, particularly when large amounts of visual information are to be displayed. This problem is often referred to as the “screen real estate problem”.
  • Known tools for addressing this problem include panning and zooming. While these tools are suitable for a large number of display applications, they become less effective when sections of the visual information are spatially related, for example in layered maps and three-dimensional representations. In this type of visual information display, panning and zooming are not as effective as much of the context of the visual information may be hidden in the panned or zoomed display.
  • Detail-in-context is the magnification of a particular region-of-interest (the “focal region” or “detail”) in a presentation while preserving visibility of the surrounding information (the “context”).
  • This technique has applicability to the display of large surface area media (e.g., digital maps) on display screens of variable size including those of graphics workstations, laptop computers, personal digital assistants (“PDAs”), and cellular telephones.
  • a detail-in-context presentation may be considered as a distorted view (or distortion) of a region-of-interest in an original image or representation where the distortion is the result of the application of a “lens” like distortion function to the original image.
  • the lens distortion is typically characterized by magnification of a region-of-interest (the “focal region”) in an image where detail is desired in combination with compression of a region of the remaining information surrounding the region-of-interest (the “shoulder region”).
  • the area of the image affected by the lens includes the focal region and the shoulder region. These regions define the perimeter of the lens.
  • the shoulder region and the area surrounding the lens provide “context” for the “detail” in the focal region of the lens.
  • a representation is a formal system, or mapping, for specifying raw information or data that is stored in a computer or data processing system.
  • a digital map of a city is a representation of raw data including street names and the relative geographic location of streets and utilities. Such a representation may be displayed on a display screen or printed on paper.
  • a presentation is a spatial organization of a given representation that is appropriate for the task at hand.
  • a presentation of a representation organizes such things as the point of view and the relative emphasis of different parts or regions of the representation. For example, a digital map of a city may be presented with a region magnified to reveal street names.
  • DEM digital elevations model
  • a DEM is a representation of cartographic information in a raster, vector, or other data format.
  • a DEM consists of a sampled array of elevations for a number of ground positions at regularly spaced intervals. The intervals may be, for example, 7.5-minute, 15-minute, 2-arc-second (also known as 30-minute), and 1-degree units.
  • the 7.5- and 15-minute DEMs may be categorized as large-scale
  • 2-arc-second DEMs may be categorized as intermediate-scale
  • 1-degree DEMs may be categorized as small-scale.
  • the distortion of DEM data using existing detail-in-context methods will result in a detail-in-context presentation in which the viewer appears to be “underneath” the data.
  • 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
  • the method may further include 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.
  • the method may further include displaying the presentation on the display screen.
  • the step of translating each point may further include 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.
  • the function may be 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.
  • the step of rotating each displaced point may further include 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.
  • the step of adjusting each rotated point corresponding to the shoulder region may further include 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.
  • the method may further include approximating the representation with a mesh. And, the method may further include approximating the respective height using height information from surrounding points.
  • apparatus such as a data processing system, a method for adapting this system, as well as articles of manufacture such as a computer readable medium having program instructions recorded thereon for practising the method of the invention.
  • FIG. 1 is a graphical representation illustrating the geometry for constructing a three-dimensional perspective viewing frustum, relative to an x, y, z coordinate system, in accordance with elastic presentation space graphics technology and an embodiment of the invention
  • FIG. 2 is a graphical representation illustrating the geometry of a presentation in accordance with elastic presentation space graphics technology and an embodiment of the invention
  • FIG. 3 is a block diagram illustrating a data processing system adapted for implementing an embodiment of the invention
  • FIG. 4 is a graphical representation illustrating the geometry of a terrain dataspace and an apex-aligned vector in accordance with an embodiment of the invention
  • FIG. 5 is a graphical representation illustrating the geometry of a portion of the base plane in which the terrain dataset is defined and which is rotated such that it remains perpendicular to the apex-aligned vector in accordance with an embodiment of the invention
  • FIG. 6 is a graphical representation illustrating the geometry for finding the maximum translation value for a point using similar triangles in accordance with an embodiment of the invention
  • FIG. 7 is a graphical representation illustrating the geometry of a projection for finding the scaling factor that is used in the calculation of the magnitude of translation for a point in accordance with an embodiment of the invention
  • FIG. 8 is a graphical representation illustrating the geometry of the result of the pseudo-rotation and displacement of each point that falls within the lens bounds in accordance with an embodiment of the invention.
  • FIG. 9 is a graphical representation illustrating the geometry of the rotation towards the view reference point of each point that falls within the lens bounds in accordance with an embodiment of the invention.
  • FIG. 10 is a graphical representation illustrating the geometry of a discontinuity occurring between the shoulder region and the context data after the application of the displacement and rotation transformations in accordance with an embodiment of the invention
  • FIG. 11 is a graphical representation illustrating the geometry of the projection of the two dimensional version of a point onto the axis of rotation and the resulting edge points in accordance with an embodiment of the invention
  • FIG. 12 is a graphical representation illustrating the geometry of the final lens resulting from the displacement of terrain data that fell within the lens bounds in accordance with an embodiment of the invention.
  • FIG. 13 is a flow chart illustrating operations of modules within the memory of a data processing system for generating a presentation of a region-of-interest in a terrain data representation for display on a display screen, in accordance with an embodiment of the application.
  • data processing system is used herein to refer to any machine for processing data, including the computer systems and network arrangements described herein.
  • the present invention may be implemented in any computer programming language provided that the operating system of the data processing system provides the facilities that may support the requirements of the present invention. Any limitations presented would be a result of a particular type of operating system or computer programming language and would not be a limitation of the present invention.
  • a detail-in-context presentation may be considered as a distorted view (or distortion) of a portion of the original representation or image where the distortion is the result of the application of a “lens” like distortion function to the original representation.
  • detail-in-context data presentations are characterized by magnification of areas of an image where detail is desired, in combination with compression of a restricted range of areas of the remaining information, the result typically giving the appearance of a lens having been applied to the display surface.
  • points in a representation are displaced in three dimensions and a perspective projection is used to display the points on a two-dimensional presentation display.
  • the resulting presentation appears to be three-dimensional.
  • the lens transformation appears to have stretched the continuous surface in a third dimension.
  • EPS graphics technology a two-dimensional visual representation is placed onto a surface; this surface is placed in three-dimensional space; the surface, containing the representation, is viewed through perspective projection; and the surface is manipulated to effect the reorganization of image details.
  • the presentation transformation is separated into two steps: surface manipulation or distortion and perspective projection.
  • FIG. 1 is a graphical representation illustrating the geometry 100 for constructing a three-dimensional (“3D”) perspective viewing frustum 220 , relative to an x, y, z coordinate system, in accordance with elastic presentation space (EPS) graphics technology and an embodiment of the invention.
  • EPS elastic presentation space
  • detail-in-context views of two-dimensional (“2D”) visual representations are created with sight-line aligned distortions of a 2D information presentation surface within a 3D perspective viewing frustum 220 .
  • magnification of regions of interest and the accompanying compression of the contextual region to accommodate this change in scale are produced by the movement of regions of the surface towards the viewpoint (“VP”) 240 located at the apex of the pyramidal shape containing the frustum 220 .
  • the process of projecting these transformed layouts via a perspective projection results in a new 2D layout which includes the zoomed and compressed regions.
  • the use of the third dimension and perspective distortion to provide magnification in EPS provides a meaningful metaphor for the process of distorting the information presentation surface.
  • the 3D manipulation of the information presentation surface in such a system is an intermediate step in the process of creating a new 2D layout of the information.
  • FIG. 2 is a graphical representation illustrating the geometry 200 of a presentation in accordance with EPS graphics technology and an embodiment of the invention.
  • EPS graphics technology employs viewer-aligned perspective projections to produce detail-in-context presentations in a reference view plane 201 which may be viewed on a display.
  • Undistorted 2D data points are located in a base plane 210 of a 3D perspective viewing volume or frustum 220 which is defined by extreme rays 221 and 222 and the base plane 210 .
  • the VP 240 is generally located above the centre point of the base plane 210 and reference view plane (“RVP”) 201 .
  • Points in the base plane 210 are displaced upward onto a distorted surface or “lens” 230 which is defined by a general 3D distortion function (i.e., a detail-in-context distortion basis function).
  • the direction of the viewer-aligned perspective projection corresponding to the distorted surface or lens 230 is indicated by the line FPo-FP 231 drawn from a point FPo 232 in the base plane 210 through the point FP 233 which corresponds to the focal point, focus, or focal region 233 of the distorted surface or lens 230 .
  • the perspective projection has a uniform direction 231 that is viewer-aligned (i.e., the points FPo 232 , FP 233 , and VP 240 are collinear).
  • EPS is applicable to multidimensional data and is well suited to implementation on a computer for dynamic detail-in-context display on an electronic display surface such as a monitor.
  • EPS is typically characterized by magnification of areas of an image where detail is desired 233 , in combination with compression of a restricted range of areas of the remaining information (i.e., the context) 234 , the end result typically giving the appearance of a lens 230 having been applied to the display surface.
  • the areas of the lens 230 where compression occurs may be referred to as the “shoulder” or shoulder region 234 of the lens 230 .
  • the area of the representation transformed by the lens may be referred to as the “lensed area”.
  • the lensed area thus includes the focal region 233 and the shoulder region 234 .
  • the source image or representation to be viewed is located in the base plane 210 .
  • Magnification 233 and compression 234 are achieved through elevating elements of the source image relative to the base plane 210 , and then projecting the resultant distorted surface onto the reference view plane 201 .
  • EPS performs detail-in-context presentation of n-dimensional data through the use of a procedure wherein the data is mapped into a region in an (n+1) dimensional space, manipulated through perspective projections in the (n+1) dimensional space, and then finally transformed back into n-dimensional space for presentation.
  • EPS has numerous advantages over conventional zoom, pan, and scroll technologies, including the capability of preserving the visibility of information outside 210 , 234 the local region of interest 233 .
  • EPS can be implemented through the projection of an image onto a reference plane 201 in the following manner.
  • the source image or representation is located on a base plane 210 , and those regions of interest 233 of the image for which magnification is desired are elevated so as to move them closer to a reference plane situated between the reference viewpoint 240 and the reference view plane 201 .
  • Magnification of the focal region 233 closest to the RVP 201 varies inversely with distance from the RVP 201 . As shown in FIGS.
  • compression of regions 234 outside the focal region 233 is a function of both distance from the RVP 201 , and the gradient of the function (i.e., the shoulder function or drop-off function) describing the vertical distance from the RVP 201 with respect to horizontal distance from the focal region 233 .
  • the resultant combination of magnification 233 and compression 234 of the image as seen from the reference viewpoint 240 results in a lens-like effect similar to that of a magnifying glass applied to the image.
  • the various functions used to vary the magnification and compression of the source image via vertical displacement from the base plane 210 are described as lenses, lens types, or lens functions. Lens functions that describe basic lens types with point and circular focal regions, as well as certain more complex lenses and advanced capabilities such as folding, have previously been described by Carpendale.
  • FIG. 3 is a block diagram of a data processing system 300 adapted to implement an embodiment of the invention.
  • the data processing system 300 is suitable for implementing EPS technology and for generating detail-in-context presentations of elevation data representations.
  • the data processing system 300 includes an input device 310 , a central processing unit (“CPU”) 320 , memory 330 , and a display 340 .
  • the input device 310 may include a keyboard, mouse, trackball, or similar device.
  • the CPU 320 may include dedicated coprocessors and memory devices.
  • the memory 330 may include RAM, ROM, databases, or disk devices.
  • the display 340 may include a computer screen, terminal device, or a hard-copy producing output device such as a printer or plotter.
  • the data processing system 300 has stored therein data representing sequences of instructions which when executed cause the method described herein to be performed.
  • the data processing system 300 may contain additional software and hardware a description of which is not necessary for understanding the invention.
  • the data processing system 300 includes computer executable programmed instructions for directing the system 300 to implement the embodiments of the present invention.
  • the programmed instructions may be embodied in one or more hardware or software modules 331 resident in the memory 330 of the data processing system 300 .
  • the programmed instructions may be embodied on a computer readable medium (such as a CD disk or floppy disk) which may be used for transporting the programmed instructions to the memory 330 of the data processing system 300 .
  • the programmed instructions may be embedded in a computer-readable, signal or signal-bearing medium that is uploaded to a network by a vendor or supplier of the programmed instructions, and this signal or signal-bearing medium may be downloaded through an interface to the data processing system 300 from the network by end users or potential buyers.
  • detail-in-context presentations of data using techniques such as pliable surfaces, as described by Carpendale, are useful in presenting large amounts of information on display surfaces of variable size.
  • Detail-in-context views allow magnification of a particular region-of-interest (the “focal region”) 233 in a data presentation while preserving visibility of the surrounding information 210 .
  • the present invention provides a method for viewing a region-of-interest (e.g., at 480 ) within terrain data 450 using a detail-in-context lens 1210 .
  • a terrain dataset 450 is assumed to consist of a set of (x, y, z) coordinates, where the (x, y) coordinates denote a position on the earth, and the z coordinate specifies the elevation of the earth at the (x, y) position.
  • the detail-in-context lens 1210 is assumed to have a circular focal region 1220 (although it may have any other shape) and a shoulder region 1230 defined by a finite drop-off function or shoulder function.
  • the method of the present invention allows a user to apply a detail-in-context terrain lens 1210 to a terrain dataset 450 , and view the terrain data from any point above the terrain surface. As the viewpoint vrp moves, the terrain lens 1210 is altered such that the terrain data that is in the focal region 1220 of the lens 1210 is always in view.
  • the method of the present invention includes the steps described below which refer to FIGS. 4-12 .
  • FIG. 4 is a graphical representation illustrating the geometry 400 of a terrain dataspace 470 and an apex-aligned vector 460 in accordance with an embodiment of the invention.
  • FIG. 4 shows the definition of the terrain dataspace 470 and the apex-aligned vector 460 .
  • Step 1 Define the terrain dataspace 470 in which the terrain dataset 450 is viewed.
  • the terrain dataspace 470 consists of a perspective viewing volume 471 that is defined by an apex (or camera position) 440 and a viewing frustum 420 .
  • a user can view the terrain dataset 450 from any point above the terrain surface 410 .
  • the viewpoint is referred to as the view reference point vrp in FIG. 4 .
  • Step 2 Calculate the apex-aligned vector 460 .
  • the apex-aligned vector 460 is a vector from the three-dimensional lens position 480 to the apex 440 of the viewing frustum 420 .
  • the z coordinate of the lens position 480 is found by approximation using the surrounding terrain dataset 450 elevation values. The method of approximation is described in more detail in the optimizations section below.
  • FIG. 4 illustrates the definition of the apex-aligned vector 460 .
  • FIG. 5 is a graphical representation illustrating the geometry 500 of a portion 510 of the base plane 410 in which the terrain dataset 450 is defined and which is rotated such that it remains perpendicular to the apex-aligned vector 460 in accordance with an embodiment of the invention.
  • Step 3 Rotate each point of the dataset 450 that falls within the lens bounds 482 such that a corresponding portion 510 of the base plane 410 in which the terrain dataset 450 is defined remains perpendicular to the apex-aligned vector 460 .
  • the portion 510 of the base plane 410 in which the terrain dataset 450 is defined is rotated such that it remains perpendicular to the apex-aligned vector 460 .
  • Each point of the dataset 450 within the lens bounds 482 is rotated by an appropriate amount such that each point maintains its perpendicular spatial relationship with respect to the apex-aligned vector 460 . Since the displacement algorithm utilizes a perspective viewing volume 471 , and the terrain dataset 450 is assumed to be viewed through the perspective viewing volume 471 , the rotation of each point is specified as a translation instead of using a rotation matrix. This is due to the fact that, when viewed through a perspective viewing volume 471 , objects do not visually maintain their shapes as they are rotated about arbitrary axes.
  • each point within the lens bounds 482 is translated an appropriate distance along the apex-aligned vector 460 . This ensures that the bounds 482 of the lens remain visually constant as the lens is moved around the dataspace 470 .
  • the calculations for determining the amount of translation for each point that falls within the lens bounds 482 are described in the following.
  • FIG. 6 is a graphical representation illustrating the geometry 600 for finding the maximum translation value 610 for a point using similar triangles in accordance with an embodiment of the invention.
  • Step 3a Calculate the maximum translation 610 that can occur.
  • the pseudo-rotation of the points within a lens bounds 482 occurs about an axis of rotation.
  • the maximum translation 610 occurs for the points (when taken with respect to the centre of the lens 480 ) that are on the lens bounds 482 and that are perpendicular to the axis of rotation.
  • the maximum translation 610 that can occur for a point p is found and is used to interpolate the translation values for all points interior to the lens bounds 482 .
  • the maximum translation value 610 is found by taking a point p that is perpendicular to the axis of rotation (as stated above), and projecting it onto the rotated plane (see FIG. 6 ). The distance from the original point p to the projected point p projected is the maximum translation value 610 . As shown in FIG. 6 , similar triangles can be used to find the maximum translation value for a point p.
  • the maximum translation value maxt 610 is as follows: maxt ⁇ (0,0,radius) ⁇ proj ((0,0,radius), a) ⁇ , where a is the apex-aligned vector 460 , radius or r is the radius of the lens bounds 482 , and the function proj(i, j) returns the projection of vector i onto vector j.
  • FIG. 7 is a graphical representation illustrating the geometry 700 of a projection for finding the scaling factor that is used in the calculation of the magnitude of translation for a point p in accordance with an embodiment of the invention.
  • Step 3b Calculate the magnitude of the translation for each point p.
  • the vectors a 2D and p 2D are used to find a scaling factor 25 that will scale the maximum translation value maxt 610 , which will result in the magnitude of translation for the point p.
  • Step 3c Translate each point p with respect to the lens position 480 .
  • Step 4 Displace each point p by the appropriate magnification factor.
  • FIG. 8 is a graphical representation illustrating the geometry 800 of the result of the pseudo-rotation and displacement of each point p that falls within the lens bounds 482 in accordance with an embodiment of the invention.
  • the result of the displacement of all points p within the lens bounds 482 that is, the displaced data or lens 810 , is shown in FIG. 8 .
  • FIG. 9 is a graphical representation illustrating the geometry 900 of the rotation towards the vrp of each point p that falls within the lens bounds 482 in accordance with an embodiment of the invention.
  • the angle and axis of rotation are computed using the ao and vo vectors.
  • FIG. 10 is a graphical representation illustrating the geometry 1000 of a discontinuity 1030 occurring between the shoulder region 1010 and the context data 450 after the application of the displacement and rotation transformations in accordance with an embodiment of the invention.
  • Step 6 Create smooth shoulders 1010 that are connected to the context data 450 .
  • the shoulders 1010 of the lens 810 do not line up correctly with the context data 450 (i.e., points that fall outside of the lens bounds 482 ).
  • FIG. 10 illustrates the resulting discontinuities 1030 .
  • each point p that falls within the shoulder 1010 of the lens 810 will be translated an appropriate amount which will compensate for the discontinuity 1030 .
  • the following steps are used to find the magnitude and direction of translation for a point p that falls within the shoulder 1010 of the lens 810 .
  • Step 6a Find the axis of rotation that a point p was rotated about.
  • Each point p that falls within the shoulder 1010 of the lens 810 has undergone two rotation transformations (i.e., the pseudo-rotation towards the apex and the rotation towards the vrp).
  • the axes of rotation for these two transformations may have been different.
  • the rotation of any given point p is the result of two separate rotations.
  • FIG. 11 is a graphical representation illustrating the geometry 1100 of the projection of p 2D onto the axis of rotation and the resulting edge points in accordance with an embodiment of the invention.
  • Step 6b Project the point p onto the axis of rotation.
  • Step 6c Find two points that are on the edge of the lens bounds 482 that form a line through p projected that is perpendicular to axis 2D .
  • Two edge points pt 1 2D and pt 2 2D are found by using ⁇ t in the line equation.
  • the z elevation coordinates of these two points are found using the approximation method that is described in the optimizations section below, yielding the three-dimensional edge points pt 1 and pt 2 .
  • Step 6d Apply rotation and displacement transformations to each edge point pt 1 , pt 2 and find the difference vectors diff 1 , diff 2 between the original and transformed edge points.
  • Each edge point will undergo the pseudo-rotation, displacement, and final rotation transformations that are specified in Steps 2-5 above in order to obtain the difference between the original edge points (pt 1 and pt 2 ) and the transformed edge points (pt 1 transformed and pt 2 transformed , respectively).
  • This difference specifies the magnitude and direction of translation that the edge points will undergo, which will essentially connect the lens shoulder region 1010 back to the context data 450 .
  • the difference vectors for each edge are used as a weighted average to find the amount of translation that is needed for points p that are interior to the lens bounds 282 (i.e., points that do not fall on the lens bounds 282 but rather fall between the lens bounds 282 and the focal bounds 481 ).
  • FIG. 12 is a graphical representation illustrating the geometry 1200 of the final lens 1210 resulting from the displacement of terrain data 450 that fell within the lens bounds 482 in accordance with an embodiment of the invention.
  • Step 6e Calculate the amount of translation for a point p to obtain smooth shoulders 1010 .
  • the difference vectors diff 1 and diff 2 that were found for each edge point are used as a weighted average to find the amount of translation for a point p.
  • FIG. 12 shows a cross section of the final result 1210 of the displacement of terrain data that fell within the lens bounds 482 . Note that the resulting lens 1210 has shoulders 1230 surrounding the focal region 1220 that smoothly join the surrounding context 450 (i.e., the terrain data 450 beyond the lens bounds 482 ).
  • the terrain datasets 450 that are used in terrain visualization are often very large in size, consisting of thousands of data points. When this is the case, due to processing limitations, it may not be feasible to run each point through the terrain displacement method described above.
  • a terrain lens mesh may be used to visualize the displacement of a terrain lens 1210 .
  • the mesh bounds are defined as the bounds 482 of the lens 1210 .
  • Two-dimensional points are inserted into the mesh and a Delauney triangulation is calculated.
  • the z elevation of each point is approximated using the surrounding terrain dataset elevation values as described below. Once the z elevations for each point within the mesh have been approximated, each three-dimensional mesh point can be run through the terrain displacement method described above.
  • Elevation Approximations Since terrain elevation datasets 450 are discrete and finite, any given coordinate that is within the bounds of the terrain dataset may not have an explicit elevation value associated with it. Therefore, within the terrain displacement method and the terrain lens mesh optimization both described above, an approximation for the z elevation for any given (x, y) coordinate may be used. This approximation uses the surrounding terrain dataset coordinates to compute the estimated elevation for an (x, y) coordinate.
  • the terrain dataset coordinates can be random or ordered, but ordered points (such as a grid structure) will increase efficiency of the approximation algorithm. According to one embodiment, a bilinear approximation may be used given a grid structured terrain dataset.
  • FIG. 13 is a flow chart illustrating operations 1300 of modules 331 within the memory 330 of a data processing system 300 for generating a presentation of a region-of-interest (e.g., at 480 ) in a terrain data representation 450 for display on a display screen 340 , in accordance with an embodiment of the application.
  • a region-of-interest e.g., at 480
  • each point p of the representation 450 within a lens bounds 482 is translated to a rotated plane 510 being normal to a vector 460 defined by a position 480 for the region-of-interest with respect to a base plane 410 for the representation 450 and an apex 440 above the base plane 410 , the lens bounds 482 defining a shoulder region (i.e., between 482 and 481 ) at least partially surrounding a focal bounds 481 defining a focal region (i.e., between 481 and 480 ) in which the position 480 is located, each point p having a respective height pz above the base plane 410 .
  • each translated point p translated is displaced from the rotated plane 510 by a function height p of the respective height p z and a magnification mag for the focal region 481 , 482 , the magnification mag varying across the shoulder region 481 , 482 in accordance with a drop-off function shoulder(p).
  • each displaced point p displaced is rotated toward a viewpoint vrp for the region-of-interest to maintain visibility of each displaced point p displaced and each point p of the data representation 450 beyond the lens bounds 482 when viewed from the viewpoint vrp.
  • each rotated point p rotated corresponding to the shoulder region 481 , 482 is adjusted to provide a smooth transition 1230 to the data representation 450 beyond the lens bounds 482 .
  • the method may further include projecting each adjusted point p rotated +diff p within the shoulder region 1230 , each rotated point p rotated within the focal region 1220 , and each point p of the representation 450 beyond the lens bounds 482 onto a plane 201 in a direction 231 aligned with the viewpoint vrp to produce the presentation.
  • the method may further include displaying the presentation on the display screen 340 .
  • the step of translating 1302 each point p may further include determining a maximum translation maxt 610 for a point p on the lens bounds 482 and determining a translation trans p for each point p within the lens bounds (i.e., between 482 and 480 ) by scaling the maximum translation 610 in accordance with a distance scale p /radius of each point from the lens bounds 482 .
  • the function height p may be a product of the magnification mag and a difference h between a magnitude of a vector ⁇ vo ⁇ defined by an origin 490 of the representation 450 with respect to the base plane 410 and the viewpoint vrp and the respective height p z .
  • the step of rotating 1304 each displaced point p displaced may further include determining an axis of rotation axis for the rotating from a cross product of a vector ao defined by an origin 490 of the representation 450 with respect to the base plane 410 and the viewpoint vrp and a vector vo defined by the origin 290 and the apex apex 440 .
  • the method may further include approximating the representation 450 with a mesh. And, the method may further include approximating the respective height p z using height information from surrounding points.
  • sequences of instructions which when executed cause the method described herein to be performed by the exemplary data processing system 300 of FIG. 3 can be contained in a data carrier product according to one embodiment of the invention.
  • This data carrier product can be loaded into and run by the exemplary data processing system 300 of FIG. 3 .
  • the sequences of instructions which when executed cause the method described herein to be performed by the exemplary data processing system 300 of FIG. 3 can be contained in a computer software product according to one embodiment of the invention.
  • This computer software product can be loaded into and run by the exemplary data processing system 300 of FIG. 3 .
  • the sequences of instructions which when executed cause the method described herein to be performed by the exemplary data processing system 300 of FIG. 3 can be contained in an integrated circuit product (e.g., a hardware module) including a coprocessor or memory according to one embodiment of the invention.
  • This integrated circuit product can be installed in the exemplary data processing system 300 of FIG. 3 .

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.

Description

This application claims priority from U.S. Provisional Patent Application No. 60/670,646, filed Apr. 13, 2005, and incorporated herein by reference.
FIELD OF THE INVENTION
The invention relates to the field of computer graphics processing, and more specifically, to a method and system for generating detail-in-context lens presentations for terrain or elevation data.
BACKGROUND OF THE INVENTION
Display screens are the primary visual display interface for computers. One problem with display screens is that they are limited in size, thus presenting a challenge to user interface design, particularly when large amounts of visual information are to be displayed. This problem is often referred to as the “screen real estate problem”. Known tools for addressing this problem include panning and zooming. While these tools are suitable for a large number of display applications, they become less effective when sections of the visual information are spatially related, for example in layered maps and three-dimensional representations. In this type of visual information display, panning and zooming are not as effective as much of the context of the visual information may be hidden in the panned or zoomed display.
A more recent solution to the screen real estate problem involves the application of “detail-in-context” presentation techniques. Detail-in-context is the magnification of a particular region-of-interest (the “focal region” or “detail”) in a presentation while preserving visibility of the surrounding information (the “context”). This technique has applicability to the display of large surface area media (e.g., digital maps) on display screens of variable size including those of graphics workstations, laptop computers, personal digital assistants (“PDAs”), and cellular telephones.
In general, a detail-in-context presentation may be considered as a distorted view (or distortion) of a region-of-interest in an original image or representation where the distortion is the result of the application of a “lens” like distortion function to the original image. The lens distortion is typically characterized by magnification of a region-of-interest (the “focal region”) in an image where detail is desired in combination with compression of a region of the remaining information surrounding the region-of-interest (the “shoulder region”). The area of the image affected by the lens includes the focal region and the shoulder region. These regions define the perimeter of the lens. The shoulder region and the area surrounding the lens provide “context” for the “detail” in the focal region of the lens. The resulting detail-in-context presentation resembles the application of a lens to the image. A detailed review of various detail-in-context presentation techniques such as “Elastic Presentation Space” (“EPS”) may be found in a publication by Marianne S. T. Carpendale, entitled “A Framework for Elastic Presentation Space” (Carpendale, Marianne S. T., A Framework for Elastic Presentation Space (Burnaby, British Columbia: Simon Fraser University, 1999)), which is incorporated herein by reference.
Note that in the detail-in-context discourse, differentiation is often made between the terms “representation” and “presentation”. A representation is a formal system, or mapping, for specifying raw information or data that is stored in a computer or data processing system. For example, a digital map of a city is a representation of raw data including street names and the relative geographic location of streets and utilities. Such a representation may be displayed on a display screen or printed on paper. On the other hand, a presentation is a spatial organization of a given representation that is appropriate for the task at hand. Thus, a presentation of a representation organizes such things as the point of view and the relative emphasis of different parts or regions of the representation. For example, a digital map of a city may be presented with a region magnified to reveal street names.
One shortcoming of existing detail-in-context presentation methods is their inability to effectively distort terrain or other elevation data including digital elevations model (“DEM”) data. In general, a DEM is a representation of cartographic information in a raster, vector, or other data format. Typically, a DEM consists of a sampled array of elevations for a number of ground positions at regularly spaced intervals. The intervals may be, for example, 7.5-minute, 15-minute, 2-arc-second (also known as 30-minute), and 1-degree units. The 7.5- and 15-minute DEMs may be categorized as large-scale, 2-arc-second DEMs may be categorized as intermediate-scale, and 1-degree DEMs may be categorized as small-scale. Often, for example, the distortion of DEM data using existing detail-in-context methods will result in a detail-in-context presentation in which the viewer appears to be “underneath” the data.
A need therefore exists for an effective method and system for generating detail-in-context presentations for elevation or terrain data. Accordingly, a solution that addresses, at least in part, the above and other shortcomings is desired.
SUMMARY OF THE INVENTION
According to one aspect of the invention, there is provided 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.
The method may further include 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. The method may further include displaying the presentation on the display screen. The step of translating each point may further include 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. The function may be 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. The step of rotating each displaced point may further include 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. The step of adjusting each rotated point corresponding to the shoulder region may further include 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. The method may further include approximating the representation with a mesh. And, the method may further include approximating the respective height using height information from surrounding points.
In accordance with further aspects of the present invention there are provided apparatus such as a data processing system, a method for adapting this system, as well as articles of manufacture such as a computer readable medium having program instructions recorded thereon for practising the method of the invention.
BRIEF DESCRIPTION OF THE DRAWINGS
Further features and advantages of the embodiments of the present invention will become apparent from the following detailed description, taken in combination with the appended drawings, in which:
FIG. 1 is a graphical representation illustrating the geometry for constructing a three-dimensional perspective viewing frustum, relative to an x, y, z coordinate system, in accordance with elastic presentation space graphics technology and an embodiment of the invention;
FIG. 2 is a graphical representation illustrating the geometry of a presentation in accordance with elastic presentation space graphics technology and an embodiment of the invention;
FIG. 3 is a block diagram illustrating a data processing system adapted for implementing an embodiment of the invention;
FIG. 4 is a graphical representation illustrating the geometry of a terrain dataspace and an apex-aligned vector in accordance with an embodiment of the invention;
FIG. 5 is a graphical representation illustrating the geometry of a portion of the base plane in which the terrain dataset is defined and which is rotated such that it remains perpendicular to the apex-aligned vector in accordance with an embodiment of the invention;
FIG. 6 is a graphical representation illustrating the geometry for finding the maximum translation value for a point using similar triangles in accordance with an embodiment of the invention;
FIG. 7 is a graphical representation illustrating the geometry of a projection for finding the scaling factor that is used in the calculation of the magnitude of translation for a point in accordance with an embodiment of the invention;
FIG. 8 is a graphical representation illustrating the geometry of the result of the pseudo-rotation and displacement of each point that falls within the lens bounds in accordance with an embodiment of the invention;
FIG. 9 is a graphical representation illustrating the geometry of the rotation towards the view reference point of each point that falls within the lens bounds in accordance with an embodiment of the invention;
FIG. 10 is a graphical representation illustrating the geometry of a discontinuity occurring between the shoulder region and the context data after the application of the displacement and rotation transformations in accordance with an embodiment of the invention;
FIG. 11 is a graphical representation illustrating the geometry of the projection of the two dimensional version of a point onto the axis of rotation and the resulting edge points in accordance with an embodiment of the invention;
FIG. 12 is a graphical representation illustrating the geometry of the final lens resulting from the displacement of terrain data that fell within the lens bounds in accordance with an embodiment of the invention; and,
FIG. 13 is a flow chart illustrating operations of modules within the memory of a data processing system for generating a presentation of a region-of-interest in a terrain data representation for display on a display screen, in accordance with an embodiment of the application.
It will be noted that throughout the appended drawings, like features are identified by like reference numerals.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
In the following description, details are set forth to provide an understanding of the invention. In some instances, certain software, circuits, structures and methods have not been described or shown in detail in order not to obscure the invention. The term “data processing system” is used herein to refer to any machine for processing data, including the computer systems and network arrangements described herein. The present invention may be implemented in any computer programming language provided that the operating system of the data processing system provides the facilities that may support the requirements of the present invention. Any limitations presented would be a result of a particular type of operating system or computer programming language and would not be a limitation of the present invention.
As mentioned above, a detail-in-context presentation may be considered as a distorted view (or distortion) of a portion of the original representation or image where the distortion is the result of the application of a “lens” like distortion function to the original representation. In general, detail-in-context data presentations are characterized by magnification of areas of an image where detail is desired, in combination with compression of a restricted range of areas of the remaining information, the result typically giving the appearance of a lens having been applied to the display surface. Using the techniques described by Carpendale, points in a representation are displaced in three dimensions and a perspective projection is used to display the points on a two-dimensional presentation display. Thus, when a lens is applied to a two-dimensional continuous surface representation, for example, the resulting presentation appears to be three-dimensional. In other words, the lens transformation appears to have stretched the continuous surface in a third dimension. In EPS graphics technology, a two-dimensional visual representation is placed onto a surface; this surface is placed in three-dimensional space; the surface, containing the representation, is viewed through perspective projection; and the surface is manipulated to effect the reorganization of image details. The presentation transformation is separated into two steps: surface manipulation or distortion and perspective projection.
FIG. 1 is a graphical representation illustrating the geometry 100 for constructing a three-dimensional (“3D”) perspective viewing frustum 220, relative to an x, y, z coordinate system, in accordance with elastic presentation space (EPS) graphics technology and an embodiment of the invention. In EPS technology, detail-in-context views of two-dimensional (“2D”) visual representations are created with sight-line aligned distortions of a 2D information presentation surface within a 3D perspective viewing frustum 220. In EPS, magnification of regions of interest and the accompanying compression of the contextual region to accommodate this change in scale are produced by the movement of regions of the surface towards the viewpoint (“VP”) 240 located at the apex of the pyramidal shape containing the frustum 220. The process of projecting these transformed layouts via a perspective projection results in a new 2D layout which includes the zoomed and compressed regions. The use of the third dimension and perspective distortion to provide magnification in EPS provides a meaningful metaphor for the process of distorting the information presentation surface. The 3D manipulation of the information presentation surface in such a system is an intermediate step in the process of creating a new 2D layout of the information.
FIG. 2 is a graphical representation illustrating the geometry 200 of a presentation in accordance with EPS graphics technology and an embodiment of the invention. EPS graphics technology employs viewer-aligned perspective projections to produce detail-in-context presentations in a reference view plane 201 which may be viewed on a display. Undistorted 2D data points are located in a base plane 210 of a 3D perspective viewing volume or frustum 220 which is defined by extreme rays 221 and 222 and the base plane 210. The VP 240 is generally located above the centre point of the base plane 210 and reference view plane (“RVP”) 201. Points in the base plane 210 are displaced upward onto a distorted surface or “lens” 230 which is defined by a general 3D distortion function (i.e., a detail-in-context distortion basis function). The direction of the viewer-aligned perspective projection corresponding to the distorted surface or lens 230 is indicated by the line FPo-FP 231 drawn from a point FPo 232 in the base plane 210 through the point FP 233 which corresponds to the focal point, focus, or focal region 233 of the distorted surface or lens 230. Typically, the perspective projection has a uniform direction 231 that is viewer-aligned (i.e., the points FPo 232, FP 233, and VP 240 are collinear).
EPS is applicable to multidimensional data and is well suited to implementation on a computer for dynamic detail-in-context display on an electronic display surface such as a monitor. In the case of two dimensional data, EPS is typically characterized by magnification of areas of an image where detail is desired 233, in combination with compression of a restricted range of areas of the remaining information (i.e., the context) 234, the end result typically giving the appearance of a lens 230 having been applied to the display surface. The areas of the lens 230 where compression occurs may be referred to as the “shoulder” or shoulder region 234 of the lens 230. The area of the representation transformed by the lens may be referred to as the “lensed area”. The lensed area thus includes the focal region 233 and the shoulder region 234. To reiterate, the source image or representation to be viewed is located in the base plane 210. Magnification 233 and compression 234 are achieved through elevating elements of the source image relative to the base plane 210, and then projecting the resultant distorted surface onto the reference view plane 201. EPS performs detail-in-context presentation of n-dimensional data through the use of a procedure wherein the data is mapped into a region in an (n+1) dimensional space, manipulated through perspective projections in the (n+1) dimensional space, and then finally transformed back into n-dimensional space for presentation. EPS has numerous advantages over conventional zoom, pan, and scroll technologies, including the capability of preserving the visibility of information outside 210, 234 the local region of interest 233.
For example, and referring to FIGS. 1 and 2, in two dimensions, EPS can be implemented through the projection of an image onto a reference plane 201 in the following manner. The source image or representation is located on a base plane 210, and those regions of interest 233 of the image for which magnification is desired are elevated so as to move them closer to a reference plane situated between the reference viewpoint 240 and the reference view plane 201. Magnification of the focal region 233 closest to the RVP 201 varies inversely with distance from the RVP 201. As shown in FIGS. 1 and 2, compression of regions 234 outside the focal region 233 is a function of both distance from the RVP 201, and the gradient of the function (i.e., the shoulder function or drop-off function) describing the vertical distance from the RVP 201 with respect to horizontal distance from the focal region 233. The resultant combination of magnification 233 and compression 234 of the image as seen from the reference viewpoint 240 results in a lens-like effect similar to that of a magnifying glass applied to the image. Hence, the various functions used to vary the magnification and compression of the source image via vertical displacement from the base plane 210 are described as lenses, lens types, or lens functions. Lens functions that describe basic lens types with point and circular focal regions, as well as certain more complex lenses and advanced capabilities such as folding, have previously been described by Carpendale.
FIG. 3 is a block diagram of a data processing system 300 adapted to implement an embodiment of the invention. The data processing system 300 is suitable for implementing EPS technology and for generating detail-in-context presentations of elevation data representations. The data processing system 300 includes an input device 310, a central processing unit (“CPU”) 320, memory 330, and a display 340. The input device 310 may include a keyboard, mouse, trackball, or similar device. The CPU 320 may include dedicated coprocessors and memory devices. The memory 330 may include RAM, ROM, databases, or disk devices. And, the display 340 may include a computer screen, terminal device, or a hard-copy producing output device such as a printer or plotter. The data processing system 300 has stored therein data representing sequences of instructions which when executed cause the method described herein to be performed. Of course, the data processing system 300 may contain additional software and hardware a description of which is not necessary for understanding the invention.
Thus, the data processing system 300 includes computer executable programmed instructions for directing the system 300 to implement the embodiments of the present invention. The programmed instructions may be embodied in one or more hardware or software modules 331 resident in the memory 330 of the data processing system 300. Alternatively, the programmed instructions may be embodied on a computer readable medium (such as a CD disk or floppy disk) which may be used for transporting the programmed instructions to the memory 330 of the data processing system 300. Alternatively, the programmed instructions may be embedded in a computer-readable, signal or signal-bearing medium that is uploaded to a network by a vendor or supplier of the programmed instructions, and this signal or signal-bearing medium may be downloaded through an interface to the data processing system 300 from the network by end users or potential buyers.
As mentioned, detail-in-context presentations of data using techniques such as pliable surfaces, as described by Carpendale, are useful in presenting large amounts of information on display surfaces of variable size. Detail-in-context views allow magnification of a particular region-of-interest (the “focal region”) 233 in a data presentation while preserving visibility of the surrounding information 210.
Now, referring to FIG. 12, the present invention provides a method for viewing a region-of-interest (e.g., at 480) within terrain data 450 using a detail-in-context lens 1210. A terrain dataset 450 is assumed to consist of a set of (x, y, z) coordinates, where the (x, y) coordinates denote a position on the earth, and the z coordinate specifies the elevation of the earth at the (x, y) position. The detail-in-context lens 1210 is assumed to have a circular focal region 1220 (although it may have any other shape) and a shoulder region 1230 defined by a finite drop-off function or shoulder function. The method of the present invention allows a user to apply a detail-in-context terrain lens 1210 to a terrain dataset 450, and view the terrain data from any point above the terrain surface. As the viewpoint vrp moves, the terrain lens 1210 is altered such that the terrain data that is in the focal region 1220 of the lens 1210 is always in view. The method of the present invention includes the steps described below which refer to FIGS. 4-12.
FIG. 4 is a graphical representation illustrating the geometry 400 of a terrain dataspace 470 and an apex-aligned vector 460 in accordance with an embodiment of the invention. FIG. 4 shows the definition of the terrain dataspace 470 and the apex-aligned vector 460.
Step 1: Define the terrain dataspace 470 in which the terrain dataset 450 is viewed. The terrain dataspace 470 consists of a perspective viewing volume 471 that is defined by an apex (or camera position) 440 and a viewing frustum 420. The terrain dataset 450 is defined with respect to the z=0 base plane 410 (i.e., the x, y plane). A user can view the terrain dataset 450 from any point above the terrain surface 410 . The viewpoint is referred to as the view reference point vrp in FIG. 4.
Step 2: Calculate the apex-aligned vector 460. The apex-aligned vector 460 is a vector from the three-dimensional lens position 480 to the apex 440 of the viewing frustum 420. The x, y coordinates of the three-dimensional lens position 480 are defined by the user in the z=0 plane. The z coordinate of the lens position 480 is found by approximation using the surrounding terrain dataset 450 elevation values. The method of approximation is described in more detail in the optimizations section below. Mathematically, the apex-aligned vector is defined as a=apex−lenspos, where apex is the apex 440 of the viewing frustum 420 and lenspos is the three-dimensional lens position 480. FIG. 4 illustrates the definition of the apex-aligned vector 460.
FIG. 5 is a graphical representation illustrating the geometry 500 of a portion 510 of the base plane 410 in which the terrain dataset 450 is defined and which is rotated such that it remains perpendicular to the apex-aligned vector 460 in accordance with an embodiment of the invention.
Step 3: Rotate each point of the dataset 450 that falls within the lens bounds 482 such that a corresponding portion 510 of the base plane 410 in which the terrain dataset 450 is defined remains perpendicular to the apex-aligned vector 460. As stated above, the terrain dataset 450 is defined with respect to the z=0 plane. As the lens position 480 is moved, the apex-aligned vector 460 will no longer be perpendicular to the z=0 plane (see FIG. 5). In order to maintain the spatial relationship of the points that fall within the lens bounds 482 during the detail-in-context displacement, the portion 510 of the base plane 410 in which the terrain dataset 450 is defined is rotated such that it remains perpendicular to the apex-aligned vector 460.
Each point of the dataset 450 within the lens bounds 482 is rotated by an appropriate amount such that each point maintains its perpendicular spatial relationship with respect to the apex-aligned vector 460. Since the displacement algorithm utilizes a perspective viewing volume 471, and the terrain dataset 450 is assumed to be viewed through the perspective viewing volume 471, the rotation of each point is specified as a translation instead of using a rotation matrix. This is due to the fact that, when viewed through a perspective viewing volume 471, objects do not visually maintain their shapes as they are rotated about arbitrary axes. For example, a circle that is defined in the z=0 plane within a viewing frustum that has an apex defined along the positive z axis will visually become an oval when rotated about the x or y axes. In order to maintain the visual shape of the lens and focal region, each point within the lens bounds 482 is translated an appropriate distance along the apex-aligned vector 460. This ensures that the bounds 482 of the lens remain visually constant as the lens is moved around the dataspace 470. The calculations for determining the amount of translation for each point that falls within the lens bounds 482 are described in the following.
FIG. 6 is a graphical representation illustrating the geometry 600 for finding the maximum translation value 610 for a point using similar triangles in accordance with an embodiment of the invention.
Step 3a: Calculate the maximum translation 610 that can occur. The pseudo-rotation of the points within a lens bounds 482 occurs about an axis of rotation. The axis of rotation can be found by taking the cross-product of the unit vector (0,0,1) with the apex-aligned vector 460 or a, that is, (0,0,1)×a=axis.
The maximum translation 610 occurs for the points (when taken with respect to the centre of the lens 480) that are on the lens bounds 482 and that are perpendicular to the axis of rotation. Mathematically, a point p for which maximum translation occurs is a point for which the following equation holds true: (p−lenspos)·axis=0, when p is on the lens bounds 482. The maximum translation 610 that can occur for a point p is found and is used to interpolate the translation values for all points interior to the lens bounds 482.
The maximum translation value 610 is found by taking a point p that is perpendicular to the axis of rotation (as stated above), and projecting it onto the rotated plane (see FIG. 6). The distance from the original point p to the projected point pprojected is the maximum translation value 610. As shown in FIG. 6, similar triangles can be used to find the maximum translation value for a point p. Mathematically, the maximum translation value maxt 610 is as follows: maxt−∥(0,0,radius)−proj ((0,0,radius), a)∥, where a is the apex-aligned vector 460, radius or r is the radius of the lens bounds 482, and the function proj(i, j) returns the projection of vector i onto vector j.
FIG. 7 is a graphical representation illustrating the geometry 700 of a projection for finding the scaling factor that is used in the calculation of the magnitude of translation for a point p in accordance with an embodiment of the invention.
Step 3b: Calculate the magnitude of the translation for each point p. To find the magnitude of the translation for each point p, the apex-aligned vector a or 460 is projected onto the z=0 plane which results in a two-dimensional vector a2D (i.e., where the z coordinate is 0). This is equivalent to taking the x and y coordinates, and disregarding the z coordinate: a2D=(ax, ay). The a2D vector is then normalized. Each point p within the lens bounds 482 is projected onto the z=0 plane (but no normalization occurs), and is specified as a vector with respect to the centre of the lens lenspos or 480: p2D=(px, py)−(lensposx, lensposy). The vectors a2D and p2D are used to find a scaling factor 25 that will scale the maximum translation value maxt 610, which will result in the magnitude of translation for the point p. The scaling factor scalep is found by projecting p2D onto a2D, and taking the magnitude of the resulting vector (see FIG. 7): scalep=∥proj (p2D, a2D)∥. The magnitude of translation transp of the point p is the maximum translation value 610 scaled by the scaling factor scalep: transp=(−scalep/radius)*maxt, where radius is the radius r of the lens bounds 482.
Step 3c: Translate each point p with respect to the lens position 480. Each point p is translated with respect to the lens position 480 in order to maintain the spatial relationships between points. Therefore, each point p is projected onto the plane that contains the lens position point 480 and that is parallel to the z=0 plane. Once the point has been projected onto this plane, the point is translated along the apex-aligned vector a or 460, by a magnitude of translation transp: ptranslated=(px, py, lensposz)+transp*anormalized, where anormalized is the unit apex-aligned vector. Since the elevation value of the point was eliminated when the point was projected onto the plane that contains the lens position 480, the elevation value must be added back to the point: ptranslated=ptranslated+(pz−lensposz)*anormalized.
Step 4: Displace each point p by the appropriate magnification factor. As shown in FIG. 4, a user can view the terrain dataset 450 from any point vrp above the terrain surface. Since the displacement of each point p should not exceed the vrp, the magnitude of displacement is computed with respect to the vrp. The magnitude of displacement takes into consideration the original elevation height of a point p and is computed using the equation heightp=h−(h/mag), where mag is the desired magnification of the lens, h=∥vo∥−pz, and vo is the vector from the origin of the dataspace 490 in which the terrain data 450 is defined to the vrp. If the point p is within the shoulder region of the lens (i.e., between the focal bounds 481 and the lens bounds 482), then the magnitude of displacement must be scaled by the shoulder drop-off function: heightp=shoulder(p)*(h−(h/mag)).
FIG. 8 is a graphical representation illustrating the geometry 800 of the result of the pseudo-rotation and displacement of each point p that falls within the lens bounds 482 in accordance with an embodiment of the invention. The displacement of a point p is performed using the translated point ptranslated that was found above and adding the height value heightp along the z-normalized apex-aligned vector: pdisplaced=ptranslated+heightp*aznormalized. The result of the displacement of all points p within the lens bounds 482, that is, the displaced data or lens 810, is shown in FIG. 8.
FIG. 9 is a graphical representation illustrating the geometry 900 of the rotation towards the vrp of each point p that falls within the lens bounds 482 in accordance with an embodiment of the invention. In FIG. 9, the angle and axis of rotation are computed using the ao and vo vectors.
Step 5: Rotate the lens 810 towards the view reference point vrp. Since the terrain dataset 450 can be viewed from any point vrp above the terrain surface, it would be useful to be able to see the lens focal region (i.e., the region between the lens position 480 and the focal bounds 481) at all times from the viewpoint. To accomplish this, each point p that falls within the lens bounds 482 is rotated towards the vrp. Given the origin o or 490 of the dataspace 470 in which the terrain data 450 is defined, two vectors ao=(apex−o)normalized and vo=(vrp−o)normalized are defined. The axis of rotation is computed using the cross-product of the two vectors axis=ao×vo, and the angle of rotation is θ=arccos(ao·vo) (see FIG. 9). Quaternions are used to rotate each point pdisplaced of the displaced data 810 by an angle θ about the axis of rotation axis which yields the desired rotated point protated.
FIG. 10 is a graphical representation illustrating the geometry 1000 of a discontinuity 1030 occurring between the shoulder region 1010 and the context data 450 after the application of the displacement and rotation transformations in accordance with an embodiment of the invention.
Step 6: Create smooth shoulders 1010 that are connected to the context data 450. After displacement and rotation, the shoulders 1010 of the lens 810 do not line up correctly with the context data 450 (i.e., points that fall outside of the lens bounds 482). FIG. 10 illustrates the resulting discontinuities 1030. In order to connect the shoulders 1010 to the context 450 (i.e., the terrain data 450 beyond the lens bounds 482), each point p that falls within the shoulder 1010 of the lens 810 will be translated an appropriate amount which will compensate for the discontinuity 1030. The following steps are used to find the magnitude and direction of translation for a point p that falls within the shoulder 1010 of the lens 810.
Step 6a: Find the axis of rotation that a point p was rotated about. Each point p that falls within the shoulder 1010 of the lens 810 has undergone two rotation transformations (i.e., the pseudo-rotation towards the apex and the rotation towards the vrp). The axes of rotation for these two transformations may have been different. In other words, the rotation of any given point p is the result of two separate rotations. These two rotations can be expressed as a single rotation about a vector axis resulting from the cross product of ao and v (i.e., axis=ao×v ). The vector ao is defined above and the vector v=protated−p.
FIG. 11 is a graphical representation illustrating the geometry 1100 of the projection of p2D onto the axis of rotation and the resulting edge points in accordance with an embodiment of the invention.
Step 6b: Project the point p onto the axis of rotation. The two-dimensional version of the point p was defined above as p2D=(px, py)−(lensposx, lensposy). The vector p2D is projected onto the two-dimensional version of the axis of rotation axis2D (see FIG. 11), or, pprojected=proj (p2D, axiS2D).
Step 6c: Find two points that are on the edge of the lens bounds 482 that form a line through pprojected that is perpendicular to axis2D. In order to find two edge points that correspond to this definition, the equation of a line is used pt=pto+td, where pto=pprojected, and the direction vector is defined as d=(p2D−pprojected)/∥(p2D−pprojected)∥. The parameter t can be found using Pythagorean's Theorem: t=√(radius2−∥pprojected2) where radius or r is the radius of the lens bounds 482. Two edge points pt1 2D and pt2 2D are found by using ±t in the line equation. The z elevation coordinates of these two points are found using the approximation method that is described in the optimizations section below, yielding the three-dimensional edge points pt1 and pt2.
Step 6d: Apply rotation and displacement transformations to each edge point pt1, pt2 and find the difference vectors diff1, diff2 between the original and transformed edge points. Each edge point will undergo the pseudo-rotation, displacement, and final rotation transformations that are specified in Steps 2-5 above in order to obtain the difference between the original edge points (pt1 and pt2) and the transformed edge points (pt1 transformed and pt2 transformed, respectively). This difference specifies the magnitude and direction of translation that the edge points will undergo, which will essentially connect the lens shoulder region 1010 back to the context data 450. The difference vectors for each edge are used as a weighted average to find the amount of translation that is needed for points p that are interior to the lens bounds 282 (i.e., points that do not fall on the lens bounds 282 but rather fall between the lens bounds 282 and the focal bounds 481).
FIG. 12 is a graphical representation illustrating the geometry 1200 of the final lens 1210 resulting from the displacement of terrain data 450 that fell within the lens bounds 482 in accordance with an embodiment of the invention.
Step 6e: Calculate the amount of translation for a point p to obtain smooth shoulders 1010. The difference vectors diff1 and diff2 that were found for each edge point are used as a weighted average to find the amount of translation for a point p. The weight w for diff2 is given by w=∥(px, py)=pt2 2D∥/∥Pt1 2D−pt2 2D∥, where pt1 2D and pt2 2D are as defined above. The difference vector diffp for point p is diffp=(1−shoulder (p)) ((1−w) diff1+w diff2), where shoulder(p) is the shoulder drop-off function. Since the weighted average is taken across the entire bounds of the lens, and since the points that fall within the focal region 1040 of the lens 810 should not be translated (i.e., only the shoulders 1010 of the lens 810 are altered), the difference vector must take into consideration the focal region 1040 of the lens 810. For this reason, the factor (1−shoulder (p)) is introduced. The final displacement of a point p is pdisplaced=protated+diffp. FIG. 12 shows a cross section of the final result 1210 of the displacement of terrain data that fell within the lens bounds 482. Note that the resulting lens 1210 has shoulders 1230 surrounding the focal region 1220 that smoothly join the surrounding context 450 (i.e., the terrain data 450 beyond the lens bounds 482).
The optimizations referred to above are described in the following.
Terrain Lens Mesh. The terrain datasets 450 that are used in terrain visualization are often very large in size, consisting of thousands of data points. When this is the case, due to processing limitations, it may not be feasible to run each point through the terrain displacement method described above. To increase efficiency of the method, a terrain lens mesh may be used to visualize the displacement of a terrain lens 1210. The mesh bounds are defined as the bounds 482 of the lens 1210. Two-dimensional points are inserted into the mesh and a Delauney triangulation is calculated. In order to visualize the terrain elevations, the z elevation of each point is approximated using the surrounding terrain dataset elevation values as described below. Once the z elevations for each point within the mesh have been approximated, each three-dimensional mesh point can be run through the terrain displacement method described above.
Elevation Approximations. Since terrain elevation datasets 450 are discrete and finite, any given coordinate that is within the bounds of the terrain dataset may not have an explicit elevation value associated with it. Therefore, within the terrain displacement method and the terrain lens mesh optimization both described above, an approximation for the z elevation for any given (x, y) coordinate may be used. This approximation uses the surrounding terrain dataset coordinates to compute the estimated elevation for an (x, y) coordinate. The terrain dataset coordinates can be random or ordered, but ordered points (such as a grid structure) will increase efficiency of the approximation algorithm. According to one embodiment, a bilinear approximation may be used given a grid structured terrain dataset. That is, given an (x, y) coordinate, its elevation may be approximated by finding the four enclosing grid coordinates that surround the (x, y) coordinate. Then, a bilinear interpolation is computed using the four elevation values associated with the four enclosing grid coordinates.
The above described method may be summarized with the aid of a flowchart. FIG. 13 is a flow chart illustrating operations 1300 of modules 331 within the memory 330 of a data processing system 300 for generating a presentation of a region-of-interest (e.g., at 480) in a terrain data representation 450 for display on a display screen 340, in accordance with an embodiment of the application.
At step 1301, the operations 1300 start.
At step 1302, each point p of the representation 450 within a lens bounds 482 is translated to a rotated plane 510 being normal to a vector 460 defined by a position 480 for the region-of-interest with respect to a base plane 410 for the representation 450 and an apex 440 above the base plane 410, the lens bounds 482 defining a shoulder region (i.e., between 482 and 481) at least partially surrounding a focal bounds 481 defining a focal region (i.e., between 481 and 480) in which the position 480 is located, each point p having a respective height pz above the base plane 410.
At step 1303, each translated point ptranslated is displaced from the rotated plane 510 by a function heightp of the respective height pz and a magnification mag for the focal region 481, 482, the magnification mag varying across the shoulder region 481, 482 in accordance with a drop-off function shoulder(p).
At step 1304, each displaced point pdisplaced is rotated toward a viewpoint vrp for the region-of-interest to maintain visibility of each displaced point pdisplaced and each point p of the data representation 450 beyond the lens bounds 482 when viewed from the viewpoint vrp.
At step 1305, each rotated point protated corresponding to the shoulder region 481, 482 is adjusted to provide a smooth transition 1230 to the data representation 450 beyond the lens bounds 482.
At step 1306, the operations 1300 end.
The method may further include projecting each adjusted point protated+diffp within the shoulder region 1230, each rotated point protated within the focal region 1220, and each point p of the representation 450 beyond the lens bounds 482 onto a plane 201 in a direction 231 aligned with the viewpoint vrp to produce the presentation. The method may further include displaying the presentation on the display screen 340. The step of translating 1302 each point p may further include determining a maximum translation maxt 610 for a point p on the lens bounds 482 and determining a translation transp for each point p within the lens bounds (i.e., between 482 and 480) by scaling the maximum translation 610 in accordance with a distance scalep/radius of each point from the lens bounds 482. The function heightp may be a product of the magnification mag and a difference h between a magnitude of a vector∥vo∥ defined by an origin 490 of the representation 450 with respect to the base plane 410 and the viewpoint vrp and the respective height pz. The step of rotating 1304 each displaced point pdisplaced may further include determining an axis of rotation axis for the rotating from a cross product of a vector ao defined by an origin 490 of the representation 450 with respect to the base plane 410 and the viewpoint vrp and a vector vo defined by the origin 290 and the apex apex 440. The step of the adjusting 1305 each rotated point protated corresponding to the shoulder region 481, 482 may further include adding to each rotated point protated a weighted average diffp=(1−shoulder (p)) ((1−w) diff1+w diff2) of first and second difference vectors diff1, diff2 scaled by the drop-off function, the first and second difference vectors diff1, diff2 corresponding to a difference between first and seconds points pt1, pt2 on the lens bound 482 and corresponding first and second displaced points pt1 transformed, pt2 transformed, respectively, the first and second points pt1, pt2 being on a line pt=pto+td drawn through the rotated point protated. The method may further include approximating the representation 450 with a mesh. And, the method may further include approximating the respective height pz using height information from surrounding points.
While this invention is primarily discussed as a method, a person of ordinary skill in the art will understand that the apparatus discussed above with reference to a data processing system 300, may be programmed to enable the practice of the method of the invention. Moreover, an article of manufacture for use with a data processing system 300, such as a pre-recorded storage device or other similar computer readable medium including program instructions recorded thereon, may direct the data processing system 300 to facilitate the practice of the method of the invention. It is understood that such apparatus and articles of manufacture also come within the scope of the invention.
In particular, the sequences of instructions which when executed cause the method described herein to be performed by the exemplary data processing system 300 of FIG. 3 can be contained in a data carrier product according to one embodiment of the invention. This data carrier product can be loaded into and run by the exemplary data processing system 300 of FIG. 3. In addition, the sequences of instructions which when executed cause the method described herein to be performed by the exemplary data processing system 300 of FIG. 3 can be contained in a computer software product according to one embodiment of the invention. This computer software product can be loaded into and run by the exemplary data processing system 300 of FIG. 3. Moreover, the sequences of instructions which when executed cause the method described herein to be performed by the exemplary data processing system 300 of FIG. 3 can be contained in an integrated circuit product (e.g., a hardware module) including a coprocessor or memory according to one embodiment of the invention. This integrated circuit product can be installed in the exemplary data processing system 300 of FIG. 3.
The embodiments of the invention described above are intended to be exemplary only. Those skilled in the art will understand that various modifications of detail may be made to these embodiments, all of which come within the scope of the invention.

Claims (47)

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.
US13/216,950 2005-04-13 2011-08-24 Detail-in-context terrain displacement algorithm with optimizations Active 2027-08-22 USRE44348E1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US13/216,950 USRE44348E1 (en) 2005-04-13 2011-08-24 Detail-in-context terrain displacement algorithm with optimizations

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US67064605P 2005-04-13 2005-04-13
US11/401,349 US7580036B2 (en) 2005-04-13 2006-04-11 Detail-in-context terrain displacement algorithm with optimizations
US13/216,950 USRE44348E1 (en) 2005-04-13 2011-08-24 Detail-in-context terrain displacement algorithm with optimizations

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US11/401,349 Reissue US7580036B2 (en) 2005-04-13 2006-04-11 Detail-in-context terrain displacement algorithm with optimizations

Publications (1)

Publication Number Publication Date
USRE44348E1 true USRE44348E1 (en) 2013-07-09

Family

ID=37108067

Family Applications (2)

Application Number Title Priority Date Filing Date
US11/401,349 Ceased US7580036B2 (en) 2005-04-13 2006-04-11 Detail-in-context terrain displacement algorithm with optimizations
US13/216,950 Active 2027-08-22 USRE44348E1 (en) 2005-04-13 2011-08-24 Detail-in-context terrain displacement algorithm with optimizations

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US11/401,349 Ceased US7580036B2 (en) 2005-04-13 2006-04-11 Detail-in-context terrain displacement algorithm with optimizations

Country Status (1)

Country Link
US (2) US7580036B2 (en)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2328795A1 (en) 2000-12-19 2002-06-19 Advanced Numerical Methods Ltd. Applications and performance enhancements for detail-in-context viewing technology
CA2345803A1 (en) 2001-05-03 2002-11-03 Idelix Software Inc. User interface elements for pliable display technology implementations
US20060082901A1 (en) * 2004-10-14 2006-04-20 Idelix Software Inc. Interacting with detail-in-context presentations
US8416266B2 (en) 2001-05-03 2013-04-09 Noregin Assetts N.V., L.L.C. Interacting with detail-in-context presentations
US9760235B2 (en) 2001-06-12 2017-09-12 Callahan Cellular L.L.C. Lens-defined adjustment of displays
US7213214B2 (en) 2001-06-12 2007-05-01 Idelix Software Inc. Graphical user interface with zoom for detail-in-context presentations
US7084886B2 (en) * 2002-07-16 2006-08-01 Idelix Software Inc. Using detail-in-context lenses for accurate digital image cropping and measurement
CA2361341A1 (en) 2001-11-07 2003-05-07 Idelix Software Inc. Use of detail-in-context presentation on stereoscopically paired images
CA2370752A1 (en) 2002-02-05 2003-08-05 Idelix Software Inc. Fast rendering of pyramid lens distorted raster images
US8120624B2 (en) 2002-07-16 2012-02-21 Noregin Assets N.V. L.L.C. Detail-in-context lenses for digital image cropping, measurement and online maps
CA2393887A1 (en) 2002-07-17 2004-01-17 Idelix Software Inc. Enhancements to user interface for detail-in-context data presentation
CA2406131A1 (en) 2002-09-30 2004-03-30 Idelix Software Inc. A graphical user interface using detail-in-context folding
CA2449888A1 (en) 2003-11-17 2005-05-17 Idelix Software Inc. Navigating large images using detail-in-context fisheye rendering techniques
US7486302B2 (en) 2004-04-14 2009-02-03 Noregin Assets N.V., L.L.C. Fisheye lens graphical user interfaces
US8106927B2 (en) 2004-05-28 2012-01-31 Noregin Assets N.V., L.L.C. Graphical user interfaces and occlusion prevention for fisheye lenses with line segment foci
US9317945B2 (en) 2004-06-23 2016-04-19 Callahan Cellular L.L.C. Detail-in-context lenses for navigation
US7714859B2 (en) 2004-09-03 2010-05-11 Shoemaker Garth B D Occlusion reduction and magnification for multidimensional data presentations
US7995078B2 (en) 2004-09-29 2011-08-09 Noregin Assets, N.V., L.L.C. Compound lenses for multi-source data presentation
US8031206B2 (en) 2005-10-12 2011-10-04 Noregin Assets N.V., L.L.C. Method and system for generating pyramid fisheye lens detail-in-context presentations
US8250486B2 (en) * 2006-01-19 2012-08-21 International Business Machines Corporation Computer controlled user interactive display interface for accessing graphic tools with a minimum of display pointer movement
US7983473B2 (en) 2006-04-11 2011-07-19 Noregin Assets, N.V., L.L.C. Transparency adjustment of a presentation
US9026938B2 (en) 2007-07-26 2015-05-05 Noregin Assets N.V., L.L.C. Dynamic detail-in-context user interface for application access and content access on electronic displays
US8767072B1 (en) * 2010-03-26 2014-07-01 Lockheed Martin Corporation Geoposition determination by starlight refraction measurement
US9965893B2 (en) * 2013-06-25 2018-05-08 Google Llc. Curvature-driven normal interpolation for shading applications
US10585485B1 (en) * 2014-11-10 2020-03-10 Amazon Technologies, Inc. Controlling content zoom level based on user head movement
US10515458B1 (en) * 2017-09-06 2019-12-24 The United States Of America, As Represented By The Secretary Of The Navy Image-matching navigation method and apparatus for aerial vehicles

Citations (225)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3201546A (en) 1961-07-24 1965-08-17 Hart Mfg Canada Ltd Power controlling device for electrical heating elements
US4581647A (en) 1983-09-19 1986-04-08 Vye Richard A Computerized automatic focusing control system for multiple television cameras
US4630110A (en) 1984-02-15 1986-12-16 Supervision Control Systems, Inc. Surveillance system
US4688181A (en) 1982-12-22 1987-08-18 International Business Machines Corporation Image transformations on an interactive raster scan or matrix display
US4790028A (en) 1986-09-12 1988-12-06 Westinghouse Electric Corp. Method and apparatus for generating variably scaled displays
US4800379A (en) 1986-05-12 1989-01-24 Crosfield Electronics Limited Image display with movable magnification
US4885702A (en) 1985-07-27 1989-12-05 Sony Corporation Method of forming curved surfaces and the apparatus
US4888713A (en) 1986-09-05 1989-12-19 Cdi Technologies, Inc. Surface detail mapping system
US4985849A (en) 1987-06-12 1991-01-15 Canon Kabushiki Kaisha Image processing system for forming a slantwise-mapped or rotated modified image of an original image
US4992866A (en) 1989-06-29 1991-02-12 Morgan Jack B Camera selection and positioning system and method
US5048077A (en) 1988-07-25 1991-09-10 Reflection Technology, Inc. Telephone handset with full-page visual display
US5175808A (en) 1989-09-12 1992-12-29 Pixar Method and apparatus for non-affine image warping
US5185599A (en) 1987-10-26 1993-02-09 Tektronix, Inc. Local display bus architecture and communications method for Raster display
US5185667A (en) 1991-05-13 1993-02-09 Telerobotics International, Inc. Omniview motionless camera orientation system
US5200818A (en) 1991-03-22 1993-04-06 Inbal Neta Video imaging system with interactive windowing capability
US5206721A (en) 1990-03-08 1993-04-27 Fujitsu Limited Television conference system
US5227771A (en) 1991-07-10 1993-07-13 International Business Machines Corporation Method and system for incrementally changing window size on a display
US5250934A (en) 1990-12-31 1993-10-05 Xerox Corporation Method and apparatus for thinning printed images
US5258837A (en) 1991-01-07 1993-11-02 Zandar Research Limited Multiple security video display
US5321807A (en) 1991-11-27 1994-06-14 Mumford Christopher J Accelerated graphics display method
US5329310A (en) 1992-06-30 1994-07-12 The Walt Disney Company Method and apparatus for controlling distortion of a projected image
US5341466A (en) 1991-05-09 1994-08-23 New York University Fractal computer user centerface with zooming capability
US5416900A (en) 1991-04-25 1995-05-16 Lotus Development Corporation Presentation manager
US5432895A (en) 1992-10-01 1995-07-11 University Corporation For Atmospheric Research Virtual reality imaging system
US5451998A (en) 1994-04-04 1995-09-19 Hamrick; Daniel C. Home shopping video catalog
US5459488A (en) 1990-07-21 1995-10-17 Robert Bosch Gmbh Graphical user interface with fisheye adaptation principle
US5473740A (en) 1993-12-29 1995-12-05 International Business Machines Corporation Method and apparatus for interactively indicating image boundaries in digital image cropping
US5521634A (en) 1994-06-17 1996-05-28 Harris Corporation Automatic detection and prioritized image transmission system and method
US5523783A (en) 1992-10-19 1996-06-04 Fuji Photo Optical Co., Ltd. Pan head control system for TV camera
US5528289A (en) 1993-10-20 1996-06-18 Videoconferencing Systems, Inc. Method for automatically adjusting a videoconferencing system camera to center an object
US5539534A (en) 1992-06-03 1996-07-23 Hitachi, Ltd. Method of scaling an image capable of line width preservation
US5581670A (en) 1993-07-21 1996-12-03 Xerox Corporation User interface having movable sheet with click-through tools
US5583977A (en) 1993-10-21 1996-12-10 Taligent, Inc. Object-oriented curve manipulation system
US5588098A (en) 1991-11-22 1996-12-24 Apple Computer, Inc. Method and apparatus for direct manipulation of 3-D objects on computer displays
US5594859A (en) 1992-06-03 1997-01-14 Digital Equipment Corporation Graphical user interface for video teleconferencing
US5596690A (en) 1993-07-21 1997-01-21 Xerox Corporation Method and apparatus for operating on an object-based model data structure to produce a second image in the spatial context of a first image
US5598297A (en) 1993-08-26 1997-01-28 Sharp Kabushiki Kaisha Image display unit
US5610653A (en) 1992-02-07 1997-03-11 Abecassis; Max Method and system for automatically tracking a zoomed video image
US5613032A (en) 1994-09-02 1997-03-18 Bell Communications Research, Inc. System and method for recording, playing back and searching multimedia events wherein video, audio and text can be searched and retrieved
US5638523A (en) 1993-01-26 1997-06-10 Sun Microsystems, Inc. Method and apparatus for browsing information in a computer database
US5644758A (en) 1994-12-13 1997-07-01 Microsoft Corporation Bitmap block transfer image conversion
US5651107A (en) 1992-12-15 1997-07-22 Sun Microsystems, Inc. Method and apparatus for presenting information in a display system using transparent windows
US5652851A (en) 1993-07-21 1997-07-29 Xerox Corporation User interface technique for producing a second image in the spatial context of a first image using a model-based operation
US5657246A (en) 1995-03-07 1997-08-12 Vtel Corporation Method and apparatus for a video conference user interface
US5670984A (en) 1993-10-26 1997-09-23 Xerox Corporation Image lens
US5680524A (en) 1994-04-21 1997-10-21 Sandia Corporation Synthetic environment employing a craft for providing user perspective reference
US5682489A (en) 1991-06-04 1997-10-28 Digital Equipment Corporation, Inc. Method and device for monitoring, manipulating, and viewing system information
US5689628A (en) 1994-04-14 1997-11-18 Xerox Corporation Coupling a display object to a viewpoint in a navigable workspace
US5689287A (en) * 1993-10-27 1997-11-18 Xerox Corporation Context-preserving display system using a perspective sheet
US5721853A (en) 1995-04-28 1998-02-24 Ast Research, Inc. Spot graphic display element with open locking and periodic animation
US5729673A (en) 1995-04-07 1998-03-17 Avid Technology, Inc. Direct manipulation of two-dimensional moving picture streams in three-dimensional space
US5731805A (en) 1996-06-25 1998-03-24 Sun Microsystems, Inc. Method and apparatus for eyetrack-driven text enlargement
US5742272A (en) 1996-04-29 1998-04-21 Ati Technologies Inc. Accelerated full screen video playback
US5745166A (en) 1994-07-26 1998-04-28 Maxpro Systems Pty Ltd Video security system field of the invention
US5751289A (en) 1992-10-01 1998-05-12 University Corporation For Atmospheric Research Virtual reality imaging system with image replay
US5754348A (en) 1996-05-14 1998-05-19 Planetweb, Inc. Method for context-preserving magnification of digital image regions
US5764139A (en) 1995-11-06 1998-06-09 Toyota Jidosha Kabushiki Kaisha Information display apparatus for vehicles
US5786814A (en) 1995-11-03 1998-07-28 Xerox Corporation Computer controlled display system activities using correlated graphical and timeline interfaces for controlling replay of temporal data representing collaborative activities
US5798752A (en) 1993-07-21 1998-08-25 Xerox Corporation User interface having simultaneously movable tools and cursor
US5808670A (en) 1995-02-17 1998-09-15 Nec System Integration & Construction, Ltd. Method and system for camera control with monitoring area view
US5812111A (en) 1994-08-30 1998-09-22 Nec Corporation Bifocal picture display system
US5818455A (en) 1993-07-21 1998-10-06 Xerox Corporation Method and apparatus for operating on the model data structure of an image to produce human perceptible output using a viewing operation region having explicit multiple regions
US5848231A (en) 1996-02-12 1998-12-08 Teitelbaum; Neil System configuration contingent upon secure input
US5852440A (en) 1994-04-13 1998-12-22 International Business Machines Corporation Method and system for facilitating the selection of icons
US5909219A (en) 1996-06-28 1999-06-01 Cirrus Logic, Inc. Embedding a transparency enable bit as part of a resizing bit block transfer operation
US5926209A (en) 1995-07-14 1999-07-20 Sensormatic Electronics Corporation Video camera apparatus with compression system responsive to video camera adjustment
US5949430A (en) * 1997-05-20 1999-09-07 Microsoft Corporation Peripheral lenses for simulating peripheral vision on a display device
US5950216A (en) 1996-11-12 1999-09-07 International Business Machines Corporation Method and system for marking and subsequently retrieving a collection of objects within a multipage compound document utilizing selectable page numbered dialog boxes
US5969706A (en) 1995-10-16 1999-10-19 Sharp Kabushiki Kaisha Information retrieval apparatus and method
US5973694A (en) 1995-06-02 1999-10-26 Chatham Telecommunications, Inc., Method of communication using sized icons, text, and audio
US5991877A (en) 1997-04-03 1999-11-23 Lockheed Martin Corporation Object-oriented trusted application framework
US5999879A (en) 1996-04-26 1999-12-07 Pioneer Electronic Corporation Navigation apparatus with shape change display function
US6005611A (en) 1994-05-27 1999-12-21 Be Here Corporation Wide-angle image dewarping method and apparatus
US6037939A (en) 1995-09-27 2000-03-14 Sharp Kabushiki Kaisha Method for enabling interactive manipulation of data retained in computer system, and a computer system for implementing the method
US6052110A (en) 1998-05-11 2000-04-18 Sony Corporation Dynamic control of zoom operation in computer graphics
US6057844A (en) 1997-04-28 2000-05-02 Adobe Systems Incorporated Drag operation gesture controller
US6064401A (en) 1998-05-28 2000-05-16 Ncr Corporation User interface controls for adjusting the display of multi-dimensional graphical plots
US6067372A (en) 1996-02-22 2000-05-23 University Of Pittsburgh Method and system to enhance robust identification of abnormal regions in radiographs
US6073036A (en) 1997-04-28 2000-06-06 Nokia Mobile Phones Limited Mobile station with touch input having automatic symbol magnification function
US6075531A (en) 1997-12-15 2000-06-13 International Business Machines Corporation Computer system and method of manipulating multiple graphical user interface components on a computer display with a proximity pointer
US6081277A (en) 1995-09-28 2000-06-27 Sony Corporation Apparatus and method for controlling image display
US6084598A (en) 1998-04-23 2000-07-04 Chekerylla; James Apparatus for modifying graphic images
US6091771A (en) 1997-08-01 2000-07-18 Wells Fargo Alarm Services, Inc. Workstation for video security system
US6108005A (en) 1996-08-30 2000-08-22 Space Corporation Method for producing a synthesized stereoscopic image
US6128024A (en) 1997-12-18 2000-10-03 Hewlett-Packard Company Polar controller for defining and generating spiral-like shapes
US6133914A (en) 1998-01-07 2000-10-17 Rogers; David W. Interactive graphical user interface
US6154840A (en) 1998-05-01 2000-11-28 Northern Telecom Limited System and method for transferring encrypted sections of documents across a computer network
US6160553A (en) 1998-09-14 2000-12-12 Microsoft Corporation Methods, apparatus and data structures for providing a user interface, which exploits spatial memory in three-dimensions, to objects and in which object occlusion is avoided
US6184859B1 (en) 1995-04-21 2001-02-06 Sony Corporation Picture display apparatus
US6198484B1 (en) 1996-06-27 2001-03-06 Kabushiki Kaisha Toshiba Stereoscopic display system
US6201548B1 (en) 1998-02-24 2001-03-13 Hewlett-Packard Company Graphical user interface for image editing
US6201546B1 (en) 1998-05-29 2001-03-13 Point Cloud, Inc. Systems and methods for generating three dimensional, textured models
US6204845B1 (en) 1994-12-16 2001-03-20 International Business Machines Corporation Ergonomic viewable object processor
US6204850B1 (en) 1997-05-30 2001-03-20 Daniel R. Green Scaleable camera model for the navigation and display of information structures using nested, bounded 3D coordinate spaces
US6215491B1 (en) 1992-12-14 2001-04-10 Monkeymedia, Inc. Computer user interface with non-salience deemphasis
US6241609B1 (en) 1998-01-09 2001-06-05 U.S. Philips Corporation Virtual environment viewpoint control
US6249281B1 (en) 2000-02-28 2001-06-19 Presenter.Com On-demand presentation graphical user interface
US6256737B1 (en) 1999-03-09 2001-07-03 Bionetrix Systems Corporation System, method and computer program product for allowing access to enterprise resources using biometric devices
US6256115B1 (en) 1997-02-21 2001-07-03 Worldquest Network, Inc. Facsimile network
US6256043B1 (en) 1997-09-26 2001-07-03 Lucent Technologies Inc. Three dimensional virtual reality enhancement techniques
US6266082B1 (en) 1995-12-19 2001-07-24 Canon Kabushiki Kaisha Communication apparatus image processing apparatus communication method and image processing method
US6271854B1 (en) 1997-12-15 2001-08-07 Intel Corporation Method and apparatus for facilitating navigation in three-dimensional graphic scenes
US6278443B1 (en) 1998-04-30 2001-08-21 International Business Machines Corporation Touch screen with random finger placement and rolling on screen to control the movement of information on-screen
US6278450B1 (en) 1998-06-17 2001-08-21 Microsoft Corporation System and method for customizing controls on a toolbar
US6288702B1 (en) 1996-09-30 2001-09-11 Kabushiki Kaisha Toshiba Information device having enlargement display function and enlargement display control method
US6304271B1 (en) 1999-02-05 2001-10-16 Sony Corporation Apparatus and method for cropping an image in a zooming graphical user interface
US6307612B1 (en) 2000-06-08 2001-10-23 Three-Five Systems, Inc. Liquid crystal display element having a precisely controlled cell gap and method of making same
US20010040636A1 (en) 1994-11-17 2001-11-15 Eiji Kato Camera control and display device using graphical user interface
US20010040585A1 (en) 1998-08-18 2001-11-15 Stephen A Hartford Resizing multi-dimensionally rendered graphical images
US6320599B1 (en) 1998-05-11 2001-11-20 Sony Corporation Zooming scale indicator in computer graphics
US20010048447A1 (en) 2000-06-05 2001-12-06 Fuji Photo Film Co., Ltd. Image croppin and synthesizing method, and imaging apparatus
US20010055030A1 (en) 2000-06-22 2001-12-27 Lc Electronics Inc. Apparatus and method for correcting keyston distortion
US6337709B1 (en) 1995-02-13 2002-01-08 Hitachi, Ltd. Image display device
US6346962B1 (en) 1998-02-27 2002-02-12 International Business Machines Corporation Control of video conferencing system with pointing device
US6346938B1 (en) 1999-04-27 2002-02-12 Harris Corporation Computer-resident mechanism for manipulating, navigating through and mensurating displayed image of three-dimensional geometric model
US6359615B1 (en) 1999-05-11 2002-03-19 Ericsson Inc. Movable magnification icons for electronic device display screens
US20020033837A1 (en) 2000-01-10 2002-03-21 Munro James A. Multiple-image viewer
US20020038257A1 (en) 1994-04-28 2002-03-28 Kuriacose Joseph Apparatus for transmitting and receiving executable applications as for a multimedia system
US20020044154A1 (en) 2000-10-18 2002-04-18 Baar David J. P. Elastic presentation space
US6381583B1 (en) 1997-04-15 2002-04-30 John A. Kenney Interactive electronic shopping system and method
US6384849B1 (en) 1997-07-14 2002-05-07 Microsoft Corporation Method for displaying controls in a system using a graphical user interface
US20020062245A1 (en) 2000-03-09 2002-05-23 David Niu System and method for generating real-time promotions on an electronic commerce world wide website to increase the likelihood of purchase
US6396648B1 (en) 1999-03-30 2002-05-28 Nec Corporation Image reader which can shorten focal length in optical system having optical lens while keeping predetermined image reading width
US6396962B1 (en) 1999-01-29 2002-05-28 Sony Corporation System and method for providing zooming video
US6400848B1 (en) 1999-03-30 2002-06-04 Eastman Kodak Company Method for modifying the perspective of a digital image
US6407747B1 (en) 1999-05-07 2002-06-18 Picsurf, Inc. Computer screen image magnification system and method
US20020075280A1 (en) 2000-12-19 2002-06-20 Tigges Mark H. A. Method and system for inversion of detail-in-context presentations
US6411274B2 (en) 1997-06-02 2002-06-25 Sony Corporation Digital map display zooming method, digital map display zooming device, and storage medium for storing digital map display zooming program
US20020087894A1 (en) 2001-01-03 2002-07-04 Foley James M. Method and apparatus for enabling a user to select an authentication method
US6417867B1 (en) 1999-05-27 2002-07-09 Sharp Laboratories Of America, Inc. Image downscaling using peripheral vision area localization
US6416186B1 (en) 1999-08-23 2002-07-09 Nec Corporation Projection display unit
US20020089520A1 (en) * 2000-12-19 2002-07-11 Baar David J.P. Method and system for enhanced detail-in-context viewing
US20020093567A1 (en) 2001-01-12 2002-07-18 International Business Machines Corporation Method and system for generating a digital photographic proof
US20020101396A1 (en) 2000-04-14 2002-08-01 Huston James R. Balanced binary color drive method for graphical displays and system implementing same
US6438576B1 (en) 1999-03-29 2002-08-20 International Business Machines Corporation Method and apparatus of a collaborative proxy system for distributed deployment of object rendering
US20020122038A1 (en) 2000-09-06 2002-09-05 David Cowperthwaite Occlusion reducing transformations for three-dimensional detail-in-context viewing
US20020143826A1 (en) 2001-03-29 2002-10-03 International Business Machines Corporation Method, apparatus, and program for magnifying the text of a link while still retaining browser function in the magnified display
CA2350342A1 (en) 2001-05-03 2002-11-03 Idelix Software Inc. Extension of detail-in-context data presentation with interface to full zoom function
US20020171644A1 (en) 2001-03-31 2002-11-21 Reshetov Alexander V. Spatial patches for graphics rendering
US6487497B2 (en) 1998-03-25 2002-11-26 Navigation Technologies Corporation Method and system for route calculation in a navigation application
US20020180801A1 (en) 2001-05-03 2002-12-05 Michael Doyle Graphical user interface for detail-in-context presentations
US6491585B1 (en) 1996-09-24 2002-12-10 Nintendo Co., Ltd. Three-dimensional image processing apparatus with enhanced automatic and user point of view control
US6504535B1 (en) 1998-06-30 2003-01-07 Lucent Technologies Inc. Display techniques for three-dimensional virtual reality
US20030006995A1 (en) 2001-06-15 2003-01-09 Smith Randall B. Orthogonal magnifier within a computer system display
US20030007006A1 (en) 2001-06-12 2003-01-09 David Baar Graphical user interface with zoom for detail-in-context presentations
US6515678B1 (en) 1999-11-18 2003-02-04 Gateway, Inc. Video magnifier for a display of data
US6522341B1 (en) 1999-06-02 2003-02-18 Matsushita Electric Industrial Co., Ltd. Multi-layer image mixing apparatus
US20030048447A1 (en) 2001-09-07 2003-03-13 Raimo Harju Accurate instrumetation for optical measurement of samples
US20030052896A1 (en) 2000-03-29 2003-03-20 Higgins Darin Wayne System and method for synchronizing map images
US20030061211A1 (en) 2000-06-30 2003-03-27 Shultz Troy L. GIS based search engine
US6542191B1 (en) 1996-04-23 2003-04-01 Canon Kabushiki Kaisha Image display apparatus, camera control apparatus and method
US6552737B1 (en) 1999-02-18 2003-04-22 Fujitsu Limited Control of window size in response to user operation
US6559813B1 (en) 1998-07-01 2003-05-06 Deluca Michael Selective real image obstruction in a virtual reality display apparatus and method
US20030100326A1 (en) 2001-11-27 2003-05-29 Grube Gary W. Group location and route sharing system for communication units in a trunked communication system
US20030105795A1 (en) 2001-11-30 2003-06-05 Anderson Jeff M. Image editing via batch commands
US6577311B1 (en) 1999-12-16 2003-06-10 Picture Iq Corporation Techniques for automatically providing a high-resolution rendering of a low resolution digital image in a distributed network
US6577319B1 (en) 1998-09-18 2003-06-10 Sharp Kabushiki Kaisha Method for controlling data display
US20030112503A1 (en) 2001-11-07 2003-06-19 Maria Lantin Method and system for displaying stereoscopic detail-in-context presentations
US6584237B1 (en) 1999-08-23 2003-06-24 Pentax Corporation Method and apparatus for expanding image data
US20030118223A1 (en) 2001-08-10 2003-06-26 Rahn J. Richard Method and apparatus for three-dimensional imaging in the fourier domain
US6590568B1 (en) 2000-11-20 2003-07-08 Nokia Corporation Touch screen drag and drop input technique
US20030137525A1 (en) 2002-01-24 2003-07-24 Smith Randall B. Method and apparatus for facilitating motion-coupled magnification
US20030151626A1 (en) * 2002-02-05 2003-08-14 Robert Komar Fast rendering of pyramid lens distorted raster images
US20030151625A1 (en) 2002-02-05 2003-08-14 Shoemaker Garth B.D. Fast and accurate rendering of pliable display technology distortions using pre-calculated texel coverages
US6608631B1 (en) 2000-05-02 2003-08-19 Pixar Amination Studios Method, apparatus, and computer program product for geometric warps and deformations
US6612930B2 (en) 1998-11-19 2003-09-02 Nintendo Co., Ltd. Video game apparatus and method with enhanced virtual camera control
US20030174146A1 (en) 2002-02-04 2003-09-18 Michael Kenoyer Apparatus and method for providing electronic image manipulation in video conferencing applications
US20030179219A1 (en) 2002-03-08 2003-09-25 International Business Machines Corporation Image display device, image display method, and image display program
US20030179198A1 (en) 1999-07-08 2003-09-25 Shinji Uchiyama Stereoscopic image processing apparatus and method, stereoscopic vision parameter setting apparatus and method, and computer program storage medium information processing method and apparatus
US20030179237A1 (en) 2002-03-22 2003-09-25 Nelson Lester D. System and method for arranging, manipulating and displaying objects in a graphical user interface
US6631205B1 (en) 1999-01-13 2003-10-07 Canon Kabushiki Kaisha Stereoscopic imaging in a portable document format
US6633305B1 (en) 2000-06-05 2003-10-14 Corel Corporation System and method for magnifying and editing images
US20030196114A1 (en) 2002-04-10 2003-10-16 International Business Machines Persistent access control of protected content
CA2386560A1 (en) 2002-05-15 2003-11-15 Idelix Software Inc. Controlling optical hardware and dynamic data viewing systems with detail-in-context viewing tools
US20030231177A1 (en) * 2002-05-17 2003-12-18 Catherine Montagnese Method and system for inversion of detail-in-context presentations with folding
CA2393708A1 (en) 2002-07-16 2004-01-16 Idelix Software Inc. Applications of multiple lenses in detail-in-context data presentations
CA2394119A1 (en) 2002-07-18 2004-01-18 Idelix Software Inc. Cropping and measuring with a single lens
US6690387B2 (en) 2001-12-28 2004-02-10 Koninklijke Philips Electronics N.V. Touch-screen image scrolling system and method
US20040026521A1 (en) 2002-05-22 2004-02-12 Alex Colas Linear proportional valve
US20040056869A1 (en) 2002-07-16 2004-03-25 Zeenat Jetha Using detail-in-context lenses for accurate digital image cropping and measurement
US20040056898A1 (en) 2002-07-17 2004-03-25 Zeenat Jetha Graphical user interface having an attached toolbar for drag and drop editing in detail-in-context lens presentations
US6720971B1 (en) 1998-05-29 2004-04-13 Canon Kabushiki Kaisha Image processing method and apparatus, and storage medium
US6731315B1 (en) 1999-11-30 2004-05-04 International Business Machines Corporation Method for selecting display parameters of a magnifiable cursor
US6744430B1 (en) 1999-07-21 2004-06-01 Sega Enterprises, Ltd. Image processing method and its apparatus
US6747611B1 (en) 2000-07-27 2004-06-08 International Business Machines Corporation Compact optical system and packaging for head mounted display
US6747610B1 (en) 1997-07-22 2004-06-08 Sanyo Electric Co., Ltd. Stereoscopic image display apparatus capable of selectively displaying desired stereoscopic image
US20040111332A1 (en) 2002-09-30 2004-06-10 David Baar Detail-in-context lenses for interacting with objects in digital image presentations
US20040125138A1 (en) 2002-10-10 2004-07-01 Zeenat Jetha Detail-in-context lenses for multi-layer images
US6760020B1 (en) 1998-06-30 2004-07-06 Canon Kabushiki Kaisha Image processing apparatus for displaying three-dimensional image
US20040150664A1 (en) 2003-02-03 2004-08-05 Microsoft Corporation System and method for accessing remote screen content
US20040240709A1 (en) 2003-04-22 2004-12-02 Garth Shoemaker Method and system for controlling detail-in-context lenses through eye and position tracking
US6833843B2 (en) 2001-12-03 2004-12-21 Tempest Microsystems Panoramic imaging and display system with canonical magnifier
US20040257380A1 (en) 2003-06-20 2004-12-23 Herbert Leslie B. Imaging method and system
US6842175B1 (en) 1999-04-22 2005-01-11 Fraunhofer Usa, Inc. Tools for interacting with virtual environments
US6882755B2 (en) 2001-10-19 2005-04-19 Hewlett-Packard Development Company, L.P. Image transmission for low bandwidth with region of interest
US6906643B2 (en) 2003-04-30 2005-06-14 Hewlett-Packard Development Company, L.P. Systems and methods of viewing, modifying, and interacting with “path-enhanced” multimedia
US20050134610A1 (en) 2003-11-17 2005-06-23 Michael Doyle Navigating digital images using detail-in-context lenses
US6911975B2 (en) 2000-09-11 2005-06-28 Canon Kabushiki Kaisha Stereo image display apparatus and method, and storage medium
US6919921B1 (en) 1997-06-10 2005-07-19 Canon Kabushiki Kaisha Camera control using scroll bar for tilt control and having display of tilting direction and controllable range information
US6924822B2 (en) 2000-12-21 2005-08-02 Xerox Corporation Magnification methods, systems, and computer program products for virtual three-dimensional books
US6938218B1 (en) 2000-04-28 2005-08-30 James Nolen Method and apparatus for three dimensional internet and computer file interface
US6956590B1 (en) 2001-02-28 2005-10-18 Navteq North America, Llc Method of providing visual continuity when panning and zooming with a map display
US6975335B2 (en) 1999-12-28 2005-12-13 International Business Machines Corporation Method of displaying magnified and reduced areas and apparatus thereof
US20050278378A1 (en) 2004-05-19 2005-12-15 Metacarta, Inc. Systems and methods of geographical text indexing
US20050285861A1 (en) 2004-06-23 2005-12-29 Idelix Software, Inc. Detail-in-context lenses for navigation
US6985865B1 (en) 2001-09-26 2006-01-10 Sprint Spectrum L.P. Method and system for enhanced response to voice commands in a voice command platform
US20060026521A1 (en) 2004-07-30 2006-02-02 Apple Computer, Inc. Gestures for touch sensitive input devices
US20060036629A1 (en) 2003-01-28 2006-02-16 Microsoft Corporation System and process for identifying objects and/or points nearby a given object or point
US20060082901A1 (en) 2004-10-14 2006-04-20 Idelix Software Inc. Interacting with detail-in-context presentations
US7038680B2 (en) 2002-01-09 2006-05-02 Xerox Corporation System for graphical display and interactive exploratory analysis of data and data relationships
US20060098028A1 (en) 2004-09-29 2006-05-11 Idelix Software Inc. Compound lenses for multi-source data presentation
US20060139375A1 (en) 2004-03-23 2006-06-29 Rasmussen Jens E Secondary map in digital mapping system
US7071971B2 (en) 1997-08-25 2006-07-04 Elbex Video Ltd. Apparatus for identifying the scene location viewed via remotely operated television camera
US7133054B2 (en) 2004-03-17 2006-11-07 Seadragon Software, Inc. Methods and apparatus for navigating an image
US7134092B2 (en) 2000-11-13 2006-11-07 James Nolen Graphical user interface method and apparatus
US7158878B2 (en) 2004-03-23 2007-01-02 Google Inc. Digital mapping system
US7173636B2 (en) 2004-03-18 2007-02-06 Idelix Software Inc. Method and system for generating detail-in-context lens presentations for elevation data
US20070033543A1 (en) 2005-08-04 2007-02-08 Microsoft Corporation Virtual magnifying glass with intuitive use enhancements
US20070064018A1 (en) 2005-06-24 2007-03-22 Idelix Software Inc. Detail-in-context lenses for online maps
US20070097109A1 (en) 2005-10-18 2007-05-03 Idelix Software Inc. Method and system for generating detail-in-context presentations in client/server systems
US7233942B2 (en) 2000-10-10 2007-06-19 Truelocal Inc. Method and apparatus for providing geographically authenticated electronic documents
US7246109B1 (en) 1999-10-07 2007-07-17 Koninklijke Philips Electronics N.V. Method and apparatus for browsing using position information
US7312806B2 (en) 2004-01-28 2007-12-25 Idelix Software Inc. Dynamic width adjustment for detail-in-context lenses
US7321824B1 (en) 2002-12-30 2008-01-22 Aol Llc Presenting a travel route using more than one presentation style
US7486302B2 (en) 2004-04-14 2009-02-03 Noregin Assets N.V., L.L.C. Fisheye lens graphical user interfaces

Patent Citations (262)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3201546A (en) 1961-07-24 1965-08-17 Hart Mfg Canada Ltd Power controlling device for electrical heating elements
US4688181A (en) 1982-12-22 1987-08-18 International Business Machines Corporation Image transformations on an interactive raster scan or matrix display
US4581647A (en) 1983-09-19 1986-04-08 Vye Richard A Computerized automatic focusing control system for multiple television cameras
US4630110A (en) 1984-02-15 1986-12-16 Supervision Control Systems, Inc. Surveillance system
US4885702A (en) 1985-07-27 1989-12-05 Sony Corporation Method of forming curved surfaces and the apparatus
US4800379A (en) 1986-05-12 1989-01-24 Crosfield Electronics Limited Image display with movable magnification
US4888713A (en) 1986-09-05 1989-12-19 Cdi Technologies, Inc. Surface detail mapping system
US4888713B1 (en) 1986-09-05 1993-10-12 Cdi Technologies, Inc. Surface detail mapping system
US4790028A (en) 1986-09-12 1988-12-06 Westinghouse Electric Corp. Method and apparatus for generating variably scaled displays
US4985849A (en) 1987-06-12 1991-01-15 Canon Kabushiki Kaisha Image processing system for forming a slantwise-mapped or rotated modified image of an original image
US5185599A (en) 1987-10-26 1993-02-09 Tektronix, Inc. Local display bus architecture and communications method for Raster display
US5048077A (en) 1988-07-25 1991-09-10 Reflection Technology, Inc. Telephone handset with full-page visual display
US4992866A (en) 1989-06-29 1991-02-12 Morgan Jack B Camera selection and positioning system and method
US5175808A (en) 1989-09-12 1992-12-29 Pixar Method and apparatus for non-affine image warping
US5206721A (en) 1990-03-08 1993-04-27 Fujitsu Limited Television conference system
US5459488A (en) 1990-07-21 1995-10-17 Robert Bosch Gmbh Graphical user interface with fisheye adaptation principle
US5250934A (en) 1990-12-31 1993-10-05 Xerox Corporation Method and apparatus for thinning printed images
US5258837A (en) 1991-01-07 1993-11-02 Zandar Research Limited Multiple security video display
US5200818A (en) 1991-03-22 1993-04-06 Inbal Neta Video imaging system with interactive windowing capability
US5416900A (en) 1991-04-25 1995-05-16 Lotus Development Corporation Presentation manager
US5341466A (en) 1991-05-09 1994-08-23 New York University Fractal computer user centerface with zooming capability
US5185667A (en) 1991-05-13 1993-02-09 Telerobotics International, Inc. Omniview motionless camera orientation system
US5682489A (en) 1991-06-04 1997-10-28 Digital Equipment Corporation, Inc. Method and device for monitoring, manipulating, and viewing system information
US5227771A (en) 1991-07-10 1993-07-13 International Business Machines Corporation Method and system for incrementally changing window size on a display
US5588098A (en) 1991-11-22 1996-12-24 Apple Computer, Inc. Method and apparatus for direct manipulation of 3-D objects on computer displays
US5321807A (en) 1991-11-27 1994-06-14 Mumford Christopher J Accelerated graphics display method
US5610653A (en) 1992-02-07 1997-03-11 Abecassis; Max Method and system for automatically tracking a zoomed video image
US5539534A (en) 1992-06-03 1996-07-23 Hitachi, Ltd. Method of scaling an image capable of line width preservation
US5594859A (en) 1992-06-03 1997-01-14 Digital Equipment Corporation Graphical user interface for video teleconferencing
US5329310A (en) 1992-06-30 1994-07-12 The Walt Disney Company Method and apparatus for controlling distortion of a projected image
US5432895A (en) 1992-10-01 1995-07-11 University Corporation For Atmospheric Research Virtual reality imaging system
US5751289A (en) 1992-10-01 1998-05-12 University Corporation For Atmospheric Research Virtual reality imaging system with image replay
US5523783A (en) 1992-10-19 1996-06-04 Fuji Photo Optical Co., Ltd. Pan head control system for TV camera
US6215491B1 (en) 1992-12-14 2001-04-10 Monkeymedia, Inc. Computer user interface with non-salience deemphasis
US6219052B1 (en) 1992-12-14 2001-04-17 Monkeymedia, Inc. Computer user interface with non-salience deemphasis
US5651107A (en) 1992-12-15 1997-07-22 Sun Microsystems, Inc. Method and apparatus for presenting information in a display system using transparent windows
US5638523A (en) 1993-01-26 1997-06-10 Sun Microsystems, Inc. Method and apparatus for browsing information in a computer database
US5581670A (en) 1993-07-21 1996-12-03 Xerox Corporation User interface having movable sheet with click-through tools
US5596690A (en) 1993-07-21 1997-01-21 Xerox Corporation Method and apparatus for operating on an object-based model data structure to produce a second image in the spatial context of a first image
US5818455A (en) 1993-07-21 1998-10-06 Xerox Corporation Method and apparatus for operating on the model data structure of an image to produce human perceptible output using a viewing operation region having explicit multiple regions
US5652851A (en) 1993-07-21 1997-07-29 Xerox Corporation User interface technique for producing a second image in the spatial context of a first image using a model-based operation
US5798752A (en) 1993-07-21 1998-08-25 Xerox Corporation User interface having simultaneously movable tools and cursor
EP0635779B1 (en) 1993-07-21 2000-10-18 Xerox Corporation User interface having movable sheet with click-through tools
US5598297A (en) 1993-08-26 1997-01-28 Sharp Kabushiki Kaisha Image display unit
US5528289A (en) 1993-10-20 1996-06-18 Videoconferencing Systems, Inc. Method for automatically adjusting a videoconferencing system camera to center an object
US5583977A (en) 1993-10-21 1996-12-10 Taligent, Inc. Object-oriented curve manipulation system
US5670984A (en) 1993-10-26 1997-09-23 Xerox Corporation Image lens
EP0650144B1 (en) 1993-10-26 2001-10-04 Xerox Corporation Image lens
US5689287A (en) * 1993-10-27 1997-11-18 Xerox Corporation Context-preserving display system using a perspective sheet
US5473740A (en) 1993-12-29 1995-12-05 International Business Machines Corporation Method and apparatus for interactively indicating image boundaries in digital image cropping
US5451998A (en) 1994-04-04 1995-09-19 Hamrick; Daniel C. Home shopping video catalog
US5852440A (en) 1994-04-13 1998-12-22 International Business Machines Corporation Method and system for facilitating the selection of icons
US5689628A (en) 1994-04-14 1997-11-18 Xerox Corporation Coupling a display object to a viewpoint in a navigable workspace
US5680524A (en) 1994-04-21 1997-10-21 Sandia Corporation Synthetic environment employing a craft for providing user perspective reference
US20020038257A1 (en) 1994-04-28 2002-03-28 Kuriacose Joseph Apparatus for transmitting and receiving executable applications as for a multimedia system
US6005611A (en) 1994-05-27 1999-12-21 Be Here Corporation Wide-angle image dewarping method and apparatus
US5521634A (en) 1994-06-17 1996-05-28 Harris Corporation Automatic detection and prioritized image transmission system and method
US5923364A (en) 1994-07-26 1999-07-13 Maxpro Systems Pty Ltd Video security system
US5745166A (en) 1994-07-26 1998-04-28 Maxpro Systems Pty Ltd Video security system field of the invention
US5812111A (en) 1994-08-30 1998-09-22 Nec Corporation Bifocal picture display system
US5613032A (en) 1994-09-02 1997-03-18 Bell Communications Research, Inc. System and method for recording, playing back and searching multimedia events wherein video, audio and text can be searched and retrieved
US20010040636A1 (en) 1994-11-17 2001-11-15 Eiji Kato Camera control and display device using graphical user interface
US5644758A (en) 1994-12-13 1997-07-01 Microsoft Corporation Bitmap block transfer image conversion
US6204845B1 (en) 1994-12-16 2001-03-20 International Business Machines Corporation Ergonomic viewable object processor
US6337709B1 (en) 1995-02-13 2002-01-08 Hitachi, Ltd. Image display device
US5808670A (en) 1995-02-17 1998-09-15 Nec System Integration & Construction, Ltd. Method and system for camera control with monitoring area view
US5657246A (en) 1995-03-07 1997-08-12 Vtel Corporation Method and apparatus for a video conference user interface
US5872922A (en) 1995-03-07 1999-02-16 Vtel Corporation Method and apparatus for a video conference user interface
US5729673A (en) 1995-04-07 1998-03-17 Avid Technology, Inc. Direct manipulation of two-dimensional moving picture streams in three-dimensional space
US6184859B1 (en) 1995-04-21 2001-02-06 Sony Corporation Picture display apparatus
US5721853A (en) 1995-04-28 1998-02-24 Ast Research, Inc. Spot graphic display element with open locking and periodic animation
US5973694A (en) 1995-06-02 1999-10-26 Chatham Telecommunications, Inc., Method of communication using sized icons, text, and audio
US5926209A (en) 1995-07-14 1999-07-20 Sensormatic Electronics Corporation Video camera apparatus with compression system responsive to video camera adjustment
US6037939A (en) 1995-09-27 2000-03-14 Sharp Kabushiki Kaisha Method for enabling interactive manipulation of data retained in computer system, and a computer system for implementing the method
US6081277A (en) 1995-09-28 2000-06-27 Sony Corporation Apparatus and method for controlling image display
US5969706A (en) 1995-10-16 1999-10-19 Sharp Kabushiki Kaisha Information retrieval apparatus and method
US5786814A (en) 1995-11-03 1998-07-28 Xerox Corporation Computer controlled display system activities using correlated graphical and timeline interfaces for controlling replay of temporal data representing collaborative activities
US5764139A (en) 1995-11-06 1998-06-09 Toyota Jidosha Kabushiki Kaisha Information display apparatus for vehicles
US6266082B1 (en) 1995-12-19 2001-07-24 Canon Kabushiki Kaisha Communication apparatus image processing apparatus communication method and image processing method
US5848231A (en) 1996-02-12 1998-12-08 Teitelbaum; Neil System configuration contingent upon secure input
US6067372A (en) 1996-02-22 2000-05-23 University Of Pittsburgh Method and system to enhance robust identification of abnormal regions in radiographs
US6542191B1 (en) 1996-04-23 2003-04-01 Canon Kabushiki Kaisha Image display apparatus, camera control apparatus and method
US5999879A (en) 1996-04-26 1999-12-07 Pioneer Electronic Corporation Navigation apparatus with shape change display function
US5742272A (en) 1996-04-29 1998-04-21 Ati Technologies Inc. Accelerated full screen video playback
US6590583B2 (en) 1996-05-14 2003-07-08 Planetweb, Inc. Method for context-preserving magnification of digital image regions
US5754348A (en) 1996-05-14 1998-05-19 Planetweb, Inc. Method for context-preserving magnification of digital image regions
EP0816983A3 (en) 1996-06-25 1998-06-10 Sun Microsystems, Inc. Method and apparatus for eyetrack-driven text enlargement
US5731805A (en) 1996-06-25 1998-03-24 Sun Microsystems, Inc. Method and apparatus for eyetrack-driven text enlargement
US6198484B1 (en) 1996-06-27 2001-03-06 Kabushiki Kaisha Toshiba Stereoscopic display system
US5909219A (en) 1996-06-28 1999-06-01 Cirrus Logic, Inc. Embedding a transparency enable bit as part of a resizing bit block transfer operation
US6108005A (en) 1996-08-30 2000-08-22 Space Corporation Method for producing a synthesized stereoscopic image
US6491585B1 (en) 1996-09-24 2002-12-10 Nintendo Co., Ltd. Three-dimensional image processing apparatus with enhanced automatic and user point of view control
US6288702B1 (en) 1996-09-30 2001-09-11 Kabushiki Kaisha Toshiba Information device having enlargement display function and enlargement display control method
US5950216A (en) 1996-11-12 1999-09-07 International Business Machines Corporation Method and system for marking and subsequently retrieving a collection of objects within a multipage compound document utilizing selectable page numbered dialog boxes
US6256115B1 (en) 1997-02-21 2001-07-03 Worldquest Network, Inc. Facsimile network
US5991877A (en) 1997-04-03 1999-11-23 Lockheed Martin Corporation Object-oriented trusted application framework
US6381583B1 (en) 1997-04-15 2002-04-30 John A. Kenney Interactive electronic shopping system and method
US6073036A (en) 1997-04-28 2000-06-06 Nokia Mobile Phones Limited Mobile station with touch input having automatic symbol magnification function
US6246411B1 (en) 1997-04-28 2001-06-12 Adobe Systems Incorporated Drag operation gesture controller
US6057844A (en) 1997-04-28 2000-05-02 Adobe Systems Incorporated Drag operation gesture controller
US5949430A (en) * 1997-05-20 1999-09-07 Microsoft Corporation Peripheral lenses for simulating peripheral vision on a display device
US6204850B1 (en) 1997-05-30 2001-03-20 Daniel R. Green Scaleable camera model for the navigation and display of information structures using nested, bounded 3D coordinate spaces
US20020135601A1 (en) 1997-06-02 2002-09-26 Sony Corporation Digital map display zooming method, digital map display zooming device, and storage medium for storing digital map display zooming program
US6411274B2 (en) 1997-06-02 2002-06-25 Sony Corporation Digital map display zooming method, digital map display zooming device, and storage medium for storing digital map display zooming program
US6919921B1 (en) 1997-06-10 2005-07-19 Canon Kabushiki Kaisha Camera control using scroll bar for tilt control and having display of tilting direction and controllable range information
US6384849B1 (en) 1997-07-14 2002-05-07 Microsoft Corporation Method for displaying controls in a system using a graphical user interface
US6747610B1 (en) 1997-07-22 2004-06-08 Sanyo Electric Co., Ltd. Stereoscopic image display apparatus capable of selectively displaying desired stereoscopic image
US6091771A (en) 1997-08-01 2000-07-18 Wells Fargo Alarm Services, Inc. Workstation for video security system
US7071971B2 (en) 1997-08-25 2006-07-04 Elbex Video Ltd. Apparatus for identifying the scene location viewed via remotely operated television camera
US6256043B1 (en) 1997-09-26 2001-07-03 Lucent Technologies Inc. Three dimensional virtual reality enhancement techniques
US6271854B1 (en) 1997-12-15 2001-08-07 Intel Corporation Method and apparatus for facilitating navigation in three-dimensional graphic scenes
US6075531A (en) 1997-12-15 2000-06-13 International Business Machines Corporation Computer system and method of manipulating multiple graphical user interface components on a computer display with a proximity pointer
US6128024A (en) 1997-12-18 2000-10-03 Hewlett-Packard Company Polar controller for defining and generating spiral-like shapes
US6133914A (en) 1998-01-07 2000-10-17 Rogers; David W. Interactive graphical user interface
US6241609B1 (en) 1998-01-09 2001-06-05 U.S. Philips Corporation Virtual environment viewpoint control
US6201548B1 (en) 1998-02-24 2001-03-13 Hewlett-Packard Company Graphical user interface for image editing
US6346962B1 (en) 1998-02-27 2002-02-12 International Business Machines Corporation Control of video conferencing system with pointing device
US6487497B2 (en) 1998-03-25 2002-11-26 Navigation Technologies Corporation Method and system for route calculation in a navigation application
US6084598A (en) 1998-04-23 2000-07-04 Chekerylla; James Apparatus for modifying graphic images
US6278443B1 (en) 1998-04-30 2001-08-21 International Business Machines Corporation Touch screen with random finger placement and rolling on screen to control the movement of information on-screen
US6154840A (en) 1998-05-01 2000-11-28 Northern Telecom Limited System and method for transferring encrypted sections of documents across a computer network
US6052110A (en) 1998-05-11 2000-04-18 Sony Corporation Dynamic control of zoom operation in computer graphics
US6320599B1 (en) 1998-05-11 2001-11-20 Sony Corporation Zooming scale indicator in computer graphics
US6064401A (en) 1998-05-28 2000-05-16 Ncr Corporation User interface controls for adjusting the display of multi-dimensional graphical plots
US6201546B1 (en) 1998-05-29 2001-03-13 Point Cloud, Inc. Systems and methods for generating three dimensional, textured models
US6720971B1 (en) 1998-05-29 2004-04-13 Canon Kabushiki Kaisha Image processing method and apparatus, and storage medium
US6278450B1 (en) 1998-06-17 2001-08-21 Microsoft Corporation System and method for customizing controls on a toolbar
US6504535B1 (en) 1998-06-30 2003-01-07 Lucent Technologies Inc. Display techniques for three-dimensional virtual reality
US6760020B1 (en) 1998-06-30 2004-07-06 Canon Kabushiki Kaisha Image processing apparatus for displaying three-dimensional image
US6559813B1 (en) 1998-07-01 2003-05-06 Deluca Michael Selective real image obstruction in a virtual reality display apparatus and method
US20010040585A1 (en) 1998-08-18 2001-11-15 Stephen A Hartford Resizing multi-dimensionally rendered graphical images
US6160553A (en) 1998-09-14 2000-12-12 Microsoft Corporation Methods, apparatus and data structures for providing a user interface, which exploits spatial memory in three-dimensions, to objects and in which object occlusion is avoided
US6577319B1 (en) 1998-09-18 2003-06-10 Sharp Kabushiki Kaisha Method for controlling data display
US6612930B2 (en) 1998-11-19 2003-09-02 Nintendo Co., Ltd. Video game apparatus and method with enhanced virtual camera control
US6631205B1 (en) 1999-01-13 2003-10-07 Canon Kabushiki Kaisha Stereoscopic imaging in a portable document format
US6396962B1 (en) 1999-01-29 2002-05-28 Sony Corporation System and method for providing zooming video
US6304271B1 (en) 1999-02-05 2001-10-16 Sony Corporation Apparatus and method for cropping an image in a zooming graphical user interface
US6552737B1 (en) 1999-02-18 2003-04-22 Fujitsu Limited Control of window size in response to user operation
US6256737B1 (en) 1999-03-09 2001-07-03 Bionetrix Systems Corporation System, method and computer program product for allowing access to enterprise resources using biometric devices
US6438576B1 (en) 1999-03-29 2002-08-20 International Business Machines Corporation Method and apparatus of a collaborative proxy system for distributed deployment of object rendering
US6396648B1 (en) 1999-03-30 2002-05-28 Nec Corporation Image reader which can shorten focal length in optical system having optical lens while keeping predetermined image reading width
US6400848B1 (en) 1999-03-30 2002-06-04 Eastman Kodak Company Method for modifying the perspective of a digital image
US6842175B1 (en) 1999-04-22 2005-01-11 Fraunhofer Usa, Inc. Tools for interacting with virtual environments
US6346938B1 (en) 1999-04-27 2002-02-12 Harris Corporation Computer-resident mechanism for manipulating, navigating through and mensurating displayed image of three-dimensional geometric model
US6407747B1 (en) 1999-05-07 2002-06-18 Picsurf, Inc. Computer screen image magnification system and method
US6359615B1 (en) 1999-05-11 2002-03-19 Ericsson Inc. Movable magnification icons for electronic device display screens
US6417867B1 (en) 1999-05-27 2002-07-09 Sharp Laboratories Of America, Inc. Image downscaling using peripheral vision area localization
US6522341B1 (en) 1999-06-02 2003-02-18 Matsushita Electric Industrial Co., Ltd. Multi-layer image mixing apparatus
US20030179198A1 (en) 1999-07-08 2003-09-25 Shinji Uchiyama Stereoscopic image processing apparatus and method, stereoscopic vision parameter setting apparatus and method, and computer program storage medium information processing method and apparatus
US6744430B1 (en) 1999-07-21 2004-06-01 Sega Enterprises, Ltd. Image processing method and its apparatus
US6584237B1 (en) 1999-08-23 2003-06-24 Pentax Corporation Method and apparatus for expanding image data
US6416186B1 (en) 1999-08-23 2002-07-09 Nec Corporation Projection display unit
US7246109B1 (en) 1999-10-07 2007-07-17 Koninklijke Philips Electronics N.V. Method and apparatus for browsing using position information
US6515678B1 (en) 1999-11-18 2003-02-04 Gateway, Inc. Video magnifier for a display of data
US6731315B1 (en) 1999-11-30 2004-05-04 International Business Machines Corporation Method for selecting display parameters of a magnifiable cursor
US6577311B1 (en) 1999-12-16 2003-06-10 Picture Iq Corporation Techniques for automatically providing a high-resolution rendering of a low resolution digital image in a distributed network
US6975335B2 (en) 1999-12-28 2005-12-13 International Business Machines Corporation Method of displaying magnified and reduced areas and apparatus thereof
US20020033837A1 (en) 2000-01-10 2002-03-21 Munro James A. Multiple-image viewer
US6249281B1 (en) 2000-02-28 2001-06-19 Presenter.Com On-demand presentation graphical user interface
US20020062245A1 (en) 2000-03-09 2002-05-23 David Niu System and method for generating real-time promotions on an electronic commerce world wide website to increase the likelihood of purchase
US20030052896A1 (en) 2000-03-29 2003-03-20 Higgins Darin Wayne System and method for synchronizing map images
US20020101396A1 (en) 2000-04-14 2002-08-01 Huston James R. Balanced binary color drive method for graphical displays and system implementing same
US6938218B1 (en) 2000-04-28 2005-08-30 James Nolen Method and apparatus for three dimensional internet and computer file interface
US6608631B1 (en) 2000-05-02 2003-08-19 Pixar Amination Studios Method, apparatus, and computer program product for geometric warps and deformations
US20010048447A1 (en) 2000-06-05 2001-12-06 Fuji Photo Film Co., Ltd. Image croppin and synthesizing method, and imaging apparatus
US6633305B1 (en) 2000-06-05 2003-10-14 Corel Corporation System and method for magnifying and editing images
US6307612B1 (en) 2000-06-08 2001-10-23 Three-Five Systems, Inc. Liquid crystal display element having a precisely controlled cell gap and method of making same
US20010055030A1 (en) 2000-06-22 2001-12-27 Lc Electronics Inc. Apparatus and method for correcting keyston distortion
US20030061211A1 (en) 2000-06-30 2003-03-27 Shultz Troy L. GIS based search engine
US6747611B1 (en) 2000-07-27 2004-06-08 International Business Machines Corporation Compact optical system and packaging for head mounted display
US20040257375A1 (en) 2000-09-06 2004-12-23 David Cowperthwaite Occlusion reducing transformations for three-dimensional detail-in-context viewing
US7280105B2 (en) 2000-09-06 2007-10-09 Idelix Software Inc. Occlusion reducing transformations for three-dimensional detail-in-context viewing
US20020122038A1 (en) 2000-09-06 2002-09-05 David Cowperthwaite Occlusion reducing transformations for three-dimensional detail-in-context viewing
US6798412B2 (en) 2000-09-06 2004-09-28 Idelix Software Inc. Occlusion reducing transformations for three-dimensional detail-in-context viewing
US6911975B2 (en) 2000-09-11 2005-06-28 Canon Kabushiki Kaisha Stereo image display apparatus and method, and storage medium
US7233942B2 (en) 2000-10-10 2007-06-19 Truelocal Inc. Method and apparatus for providing geographically authenticated electronic documents
US6768497B2 (en) 2000-10-18 2004-07-27 Idelix Software Inc. Elastic presentation space
US20020044154A1 (en) 2000-10-18 2002-04-18 Baar David J. P. Elastic presentation space
US7256801B2 (en) 2000-10-18 2007-08-14 Idelix Software Inc. Elastic presentation space
US20050041046A1 (en) 2000-10-18 2005-02-24 Baar David J.P. Elastic presentation space
US20040217979A1 (en) 2000-10-18 2004-11-04 Baar David J. P. Elastic presentation space
US7134092B2 (en) 2000-11-13 2006-11-07 James Nolen Graphical user interface method and apparatus
US6590568B1 (en) 2000-11-20 2003-07-08 Nokia Corporation Touch screen drag and drop input technique
US20020075280A1 (en) 2000-12-19 2002-06-20 Tigges Mark H. A. Method and system for inversion of detail-in-context presentations
US7283141B2 (en) 2000-12-19 2007-10-16 Idelix Software Inc. Method and system for enhanced detail-in-context viewing
US20020089520A1 (en) * 2000-12-19 2002-07-11 Baar David J.P. Method and system for enhanced detail-in-context viewing
US6727910B2 (en) 2000-12-19 2004-04-27 Idelix Software Inc. Method and system for inversion of detail-in-context presentations
US7173633B2 (en) 2000-12-19 2007-02-06 Idelix Software Inc. Method and system for inversion of detail-in-context presentations
US20060214951A1 (en) 2000-12-19 2006-09-28 Baar David J Method and system for enhanced detail-in-context viewing
US7106349B2 (en) 2000-12-19 2006-09-12 Idelix Software Inc. Method and system for enhanced detail-in-context viewing
US20060033762A1 (en) 2000-12-21 2006-02-16 Xerox Corporation Magnification methods, systems, and computer program products for virtual three-dimensional books
US6924822B2 (en) 2000-12-21 2005-08-02 Xerox Corporation Magnification methods, systems, and computer program products for virtual three-dimensional books
US20020087894A1 (en) 2001-01-03 2002-07-04 Foley James M. Method and apparatus for enabling a user to select an authentication method
US20020093567A1 (en) 2001-01-12 2002-07-18 International Business Machines Corporation Method and system for generating a digital photographic proof
US6956590B1 (en) 2001-02-28 2005-10-18 Navteq North America, Llc Method of providing visual continuity when panning and zooming with a map display
US20020143826A1 (en) 2001-03-29 2002-10-03 International Business Machines Corporation Method, apparatus, and program for magnifying the text of a link while still retaining browser function in the magnified display
US20020171644A1 (en) 2001-03-31 2002-11-21 Reshetov Alexander V. Spatial patches for graphics rendering
CA2350342A1 (en) 2001-05-03 2002-11-03 Idelix Software Inc. Extension of detail-in-context data presentation with interface to full zoom function
US20020180801A1 (en) 2001-05-03 2002-12-05 Michael Doyle Graphical user interface for detail-in-context presentations
US7197719B2 (en) 2001-05-03 2007-03-27 Idelix Software Inc. Graphical user interface for detail-in-context presentations
US7213214B2 (en) 2001-06-12 2007-05-01 Idelix Software Inc. Graphical user interface with zoom for detail-in-context presentations
US20030007006A1 (en) 2001-06-12 2003-01-09 David Baar Graphical user interface with zoom for detail-in-context presentations
US20030006995A1 (en) 2001-06-15 2003-01-09 Smith Randall B. Orthogonal magnifier within a computer system display
US20030118223A1 (en) 2001-08-10 2003-06-26 Rahn J. Richard Method and apparatus for three-dimensional imaging in the fourier domain
US20030048447A1 (en) 2001-09-07 2003-03-13 Raimo Harju Accurate instrumetation for optical measurement of samples
US6985865B1 (en) 2001-09-26 2006-01-10 Sprint Spectrum L.P. Method and system for enhanced response to voice commands in a voice command platform
US6882755B2 (en) 2001-10-19 2005-04-19 Hewlett-Packard Development Company, L.P. Image transmission for low bandwidth with region of interest
US7088364B2 (en) 2001-11-07 2006-08-08 Idelix Software Inc. Method and system for displaying stereoscopic detail-in-context presentations
US20030112503A1 (en) 2001-11-07 2003-06-19 Maria Lantin Method and system for displaying stereoscopic detail-in-context presentations
US20060192780A1 (en) 2001-11-07 2006-08-31 Maria Lantin Method and system for displaying stereoscopic detail-in-context presentations
US20030100326A1 (en) 2001-11-27 2003-05-29 Grube Gary W. Group location and route sharing system for communication units in a trunked communication system
US20030105795A1 (en) 2001-11-30 2003-06-05 Anderson Jeff M. Image editing via batch commands
US6833843B2 (en) 2001-12-03 2004-12-21 Tempest Microsystems Panoramic imaging and display system with canonical magnifier
US7274381B2 (en) 2001-12-03 2007-09-25 Tempest Microsystems, Inc. Panoramic imaging and display system with canonical magnifier
US6690387B2 (en) 2001-12-28 2004-02-10 Koninklijke Philips Electronics N.V. Touch-screen image scrolling system and method
US7038680B2 (en) 2002-01-09 2006-05-02 Xerox Corporation System for graphical display and interactive exploratory analysis of data and data relationships
US20030137525A1 (en) 2002-01-24 2003-07-24 Smith Randall B. Method and apparatus for facilitating motion-coupled magnification
US20030174146A1 (en) 2002-02-04 2003-09-18 Michael Kenoyer Apparatus and method for providing electronic image manipulation in video conferencing applications
US20030151626A1 (en) * 2002-02-05 2003-08-14 Robert Komar Fast rendering of pyramid lens distorted raster images
US20030151625A1 (en) 2002-02-05 2003-08-14 Shoemaker Garth B.D. Fast and accurate rendering of pliable display technology distortions using pre-calculated texel coverages
US7275219B2 (en) 2002-02-05 2007-09-25 Idelix Software Inc. Fast and accurate rendering of pliable display technology distortions using pre-calculated texel coverages
US20030179219A1 (en) 2002-03-08 2003-09-25 International Business Machines Corporation Image display device, image display method, and image display program
US20030179237A1 (en) 2002-03-22 2003-09-25 Nelson Lester D. System and method for arranging, manipulating and displaying objects in a graphical user interface
US20030196114A1 (en) 2002-04-10 2003-10-16 International Business Machines Persistent access control of protected content
US7411610B2 (en) 2002-05-15 2008-08-12 Idelix Software Inc. Method and system for generating detail-in-context video presentations using a graphical user interface
CA2386560A1 (en) 2002-05-15 2003-11-15 Idelix Software Inc. Controlling optical hardware and dynamic data viewing systems with detail-in-context viewing tools
US20030227556A1 (en) 2002-05-15 2003-12-11 Michael Doyle Method and system for generating detail-in-context video presentations using a graphical user interface
US6961071B2 (en) 2002-05-17 2005-11-01 Idelix Software Inc. Method and system for inversion of detail-in-context presentations with folding
US20030231177A1 (en) * 2002-05-17 2003-12-18 Catherine Montagnese Method and system for inversion of detail-in-context presentations with folding
US20040026521A1 (en) 2002-05-22 2004-02-12 Alex Colas Linear proportional valve
US7084886B2 (en) 2002-07-16 2006-08-01 Idelix Software Inc. Using detail-in-context lenses for accurate digital image cropping and measurement
US20040056869A1 (en) 2002-07-16 2004-03-25 Zeenat Jetha Using detail-in-context lenses for accurate digital image cropping and measurement
US7489321B2 (en) 2002-07-16 2009-02-10 Noregin Assets N.V., L.L.C. Using detail-in-context lenses for accurate digital image cropping and measurement
CA2393708A1 (en) 2002-07-16 2004-01-16 Idelix Software Inc. Applications of multiple lenses in detail-in-context data presentations
US20040056898A1 (en) 2002-07-17 2004-03-25 Zeenat Jetha Graphical user interface having an attached toolbar for drag and drop editing in detail-in-context lens presentations
US7472354B2 (en) 2002-07-17 2008-12-30 Noregin Assets N.V., L.L.C. Graphical user interface having an attached toolbar for drag and drop editing in detail-in-context lens presentations
CA2394119A1 (en) 2002-07-18 2004-01-18 Idelix Software Inc. Cropping and measuring with a single lens
US20040111332A1 (en) 2002-09-30 2004-06-10 David Baar Detail-in-context lenses for interacting with objects in digital image presentations
US7310619B2 (en) 2002-09-30 2007-12-18 Idelix Software Inc. Detail-in-context lenses for interacting with objects in digital image presentations
US20040125138A1 (en) 2002-10-10 2004-07-01 Zeenat Jetha Detail-in-context lenses for multi-layer images
US7321824B1 (en) 2002-12-30 2008-01-22 Aol Llc Presenting a travel route using more than one presentation style
US20060036629A1 (en) 2003-01-28 2006-02-16 Microsoft Corporation System and process for identifying objects and/or points nearby a given object or point
US20040150664A1 (en) 2003-02-03 2004-08-05 Microsoft Corporation System and method for accessing remote screen content
US20040240709A1 (en) 2003-04-22 2004-12-02 Garth Shoemaker Method and system for controlling detail-in-context lenses through eye and position tracking
US6906643B2 (en) 2003-04-30 2005-06-14 Hewlett-Packard Development Company, L.P. Systems and methods of viewing, modifying, and interacting with “path-enhanced” multimedia
US20040257380A1 (en) 2003-06-20 2004-12-23 Herbert Leslie B. Imaging method and system
US20050134610A1 (en) 2003-11-17 2005-06-23 Michael Doyle Navigating digital images using detail-in-context lenses
US7495678B2 (en) 2003-11-17 2009-02-24 Noregin Assets N.V., L.L.C. Navigating digital images using detail-in-context lenses
US7312806B2 (en) 2004-01-28 2007-12-25 Idelix Software Inc. Dynamic width adjustment for detail-in-context lenses
US7133054B2 (en) 2004-03-17 2006-11-07 Seadragon Software, Inc. Methods and apparatus for navigating an image
US7173636B2 (en) 2004-03-18 2007-02-06 Idelix Software Inc. Method and system for generating detail-in-context lens presentations for elevation data
US20060139375A1 (en) 2004-03-23 2006-06-29 Rasmussen Jens E Secondary map in digital mapping system
US7158878B2 (en) 2004-03-23 2007-01-02 Google Inc. Digital mapping system
US7486302B2 (en) 2004-04-14 2009-02-03 Noregin Assets N.V., L.L.C. Fisheye lens graphical user interfaces
US20050278378A1 (en) 2004-05-19 2005-12-15 Metacarta, Inc. Systems and methods of geographical text indexing
US20050285861A1 (en) 2004-06-23 2005-12-29 Idelix Software, Inc. Detail-in-context lenses for navigation
US20060026521A1 (en) 2004-07-30 2006-02-02 Apple Computer, Inc. Gestures for touch sensitive input devices
US20060098028A1 (en) 2004-09-29 2006-05-11 Idelix Software Inc. Compound lenses for multi-source data presentation
US20060082901A1 (en) 2004-10-14 2006-04-20 Idelix Software Inc. Interacting with detail-in-context presentations
US20070064018A1 (en) 2005-06-24 2007-03-22 Idelix Software Inc. Detail-in-context lenses for online maps
US20070033543A1 (en) 2005-08-04 2007-02-08 Microsoft Corporation Virtual magnifying glass with intuitive use enhancements
US20070097109A1 (en) 2005-10-18 2007-05-03 Idelix Software Inc. Method and system for generating detail-in-context presentations in client/server systems

Non-Patent Citations (58)

* Cited by examiner, † Cited by third party
Title
"Electronic Magnifying Glasses", IBM Technical Disclosure Bulletin, IBM Corp., New York, US, vol. 37, No. 3; XP000441501, ISSN: 0018-8689 the whole document; (Mar. 1, 1994), pp. 353-354.
"Foreign Office Action", Application Ser. No. 2002-536993, (Mar. 11, 2009), 2 pages.
"Non Final Office Action", U.S. Appl. No. 10/358,394, (Mar. 13, 2009).
"Non Final Office Action", U.S. Appl. No. 10/705,199, (May 12, 2009), 46 pages.
"Non Final Office Action", U.S. Appl. No. 11/541,778, (Jun. 19, 2009), 36 pages.
"Non Final Office Action", U.S. Appl. No. 11/542,120, (Jan. 22, 2009), 20 pages.
"Non Final Office Action", U.S. Appl. No. 11/935,222, (Feb. 20, 2009), 12 pages.
"Non-Final Office Action", U.S. Appl. No. 11/410,024, (Mar. 11, 2009), 35 pages.
"Presentation for CGDI Workshop", Retrieved from: http://www.geoconnections.org/developersCorner/devCorner13 devNetwork/meetings/2002.05.30/IDELIX-CGDI-20020530-dist.pdf, (May 2002).
"Presentation for CGDI Workshop", Retrieved from: http://www.geoconnections.org/developersCorner/devCorner13 devNetwork/meetings/2002.05.30/IDELIX—CGDI—20020530—dist.pdf, (May 2002).
Baudisch, P. et al., "Drag-And-Pop: Techniques for Accessing Remote Screen Content on Touch-And-Pen-Operated Systems", Interact '03, (2003).
Baudisch, P. et al., "Halo: a Technique For Visualizing Off-Screen Locations", CHI; (Apr. 5-10, 2003).
Boots, B. N., "Delauney Triangles: An Alternative Approach to Point Pattern Analysis" Proc. Assoc. Am. Geogr. 6, (1974), p. 26-29.
Bossen, F. J., "Anisotropic Mesh Generation With Particles", Technical Report CMU-CS-96-134, CS Dept, Carnegie Mellon University; (May 1996).
Bossen, F. J., et al., "A Pliant Method for Anisotropic Mesh Generation", 5th Intl. Meshing Roundtable; (Oct. 1996), pp. 63-74.
Bouju, A. et al., "Client Server Architecture for Accessing Multimedia and Geographic Databases within Embedded Systems", Database and Expert Systems Applications, 1999 Proceedings Tenth International Workshop on Florence, Italy Sep. 1-3, 1999, Los Alamitos, CA, USA, IEEE Comput. Soc, US, XP010352370, ISBN:0-7895-0281-4, abstract, figure 2,(Sep. 1-3, 1999). pp. 750-764.
Carpendale et al., "Distortion Viewing Techniques for 3-Dimensional Data", Information Visualization '96, Proceedings IEEE Symposium on San Francisco, CA, USA, Los Alamitos, CA, USA, IEEE Comput. Soc, US Oct. 28, 1996; XP010201944; ISBN: 0-8186-7668-X,(Oct. 28-29, 1996), pp. 46-53, 119.
Carpendale, et al., "Graph Folding. Extending Detail and Context Viewing into a Tool for Subgraph Comparisons", In Proceedings of Graph Drawing 1995, Passau, Germany., (1995), pp. 127-139.
Carpendale, M S T et al., "Extending distortion viewing from 2D to 3D", IEEE Computer Graphics and Applications, IEEE Inc. New York, US, vol. 17, No. 4. XP000927815 ISSN: 0272-1716. (Jul. 1997), pp. 42-51.
Carpendale, M. S. T. et al., "Making Distortions Comprehensible", Visual Languages, Proceedings, 1997 IEEE Symposium On Isle of Capri, Italy, Sep. 23-26, 1997, Los Alamitos, CA, USA, IEEE Comput. Soc., US, Sep. 23, 1997; XP010250566, ISBN: 0-8186-8144-6,(Sep. 23-26, 1997), pp. 36-45.
Carpendale, M. S. T., Montagnese, C., A framework for unifying presentation space, Nov. 2001, ACM Press, Proceedings of the 14th annual ACM symposium on User interface software and technology, vol. 3, Issue 2, pp. 61-70. *
Carpendale, M. Sheelagh T., et al., "3-Dimensional Pliable Surfaces: For the Effective Presentation of Visual Information", UIST '95, 8th Annual Symposium on User Interface Software and Technology, Proceedings of The ACM Symposium on User Interface Software and Technology, Pittsburgh, PA, ACM Symposium on User Interface Software and Technology, New York, Nov. 14, 1995 (1995-, (Nov. 14-17, 1995), pp. 217-226.
Carpendale, M.S.T et al., "Exploring Distinct Aspects of the Distortion Viewing Paradigm", Technical Report TR 97-08; School of Computer Science, Simon Fraser University, Burnaby, British Columbia, Canada; (Sep. 1997).
Carpendale, M.S.T. "A Framework for Elastic Presentation Space", http://pades.cpsc.ucaldary.ca/-sheelagh/personal/thesis/, (Nov. 19, 1999).
Carpendale, M.S.T. "A Framework for Elastic Presentation Space", PhD thesis, Simon Fraser University; (1999),pp. 69, 72, 78-83,98-100, 240 and 241.
Carpendale, M.S.T. "A Framework for Elastic Presentation Space", Thesis Simon Fraser University; XP001051168; cited in the application, Chapter 3-5, appendix A,B; (Mar. 1999), pp. 1-271.
Carpendale, Marianne S.T., "A Framework for Elastic Presentation Space" (Burnaby, British Columbia: Simon Fraser University, 1999).
Cowperthwaite, David J., "Occlusion Resolution Operators for Three-Dimensional Detail-In-Context", Burnaby, British Columbia: Simon Fraser University, (2000).
Cowperthwaite, David J., et al., "Visual Access for 3D Data", in Proceedings of ACM CHI 96 Conference on Human Factors in Computer Systems, vol. 2 of Short Papers: Alternative Methods of Interaction; (1996),pp. 175-176.
Deng, K. et al., "Texture Mapping with a Jacobian-Based Spatially-Variant Filter", Proceedings 10th Pacific Conference on Computer Graphics and Applications, Beijing, China, 2002 Los Alamitos, CA, USA, IEEE Comput. Soc, USA, XP00224932, ISBN, 0-7695-1784-6 the whole document, (Oct. 9-11, 2002), pp. 460-461.
Dursteler, Juan C., "The digital magazine of InfoVis.net", Retrieved from: http://www.infovis.net/printMag.php?num=85&lang=2; (Apr. 22, 2002).
Fitzmaurice, G. et al., "Tracking Menus", UIST; (2003), pp, 71-79.
Ikedo, T. "A Realtime Video-Image Mapping User Polygon Rendering Techniques". IEEE Intl. conf on Ottawa, ONT, Canada Jun. 3-6, 1997, Los Alamitos, CA, USA; IEEE Comput. Soc, US, XP010239181, ISBN: 0-8186-7819-4 Sections 2, 4.4; Multimedia Computing and Systems '97 Proceedings, (Jun. 3, 1997), pp. 127-134.
Ito, Minoru et al., "A Three-Level Checkerboard Pattern (TCP) Projection Method for Curved Surface Measurement", Pattern Recognition, Pergamon Press Inc., Elmsford, N.Y., US vol. 28, No. 1; XP004014030, ISSN 0031-3203,(1995), pp. 27-40.
Keahey T. A., "Getting Along: Composition of Visualization Paradigms", Visual Insights, Inc.; (2001).
Keahey, T A., et al., "Nonlinear Magnification Fields", Information Visualization, 1997, Proceedings, IEEE Symposium on Phoenix, AZ, USA, Los Alamitos, CA, USA, IEEE Comput. Soc., US; XP010257169; ISBN: 0-8186-8189-6,(Oct. 20-21, 1997), pp. 51-58 and 121.
Keahey, T. A., "Nonlinear Magnification", (Indiana University Computer Science), (1997).
Keahey, T. A., "The Generalized Detail-In-Context Problem" Information Visualization 1998, Proceedings; IEEE Symposium On Research Triangle, CA, USA; Los Alamitos, CA, USA, IEEE Comput, Soc, US; XP010313304; ISBN: 0-8186-9093.(Oct. 19-20, 1998), pp. 44-51, 152.
Keahey, T. A., "Visualization of High-Dimensional Clusters Using NonLinear Magnification", Technical Report LA-UR-98-2776, Los Alamos National Laboratory, (1998).
Keahey, T. A., et al., ""Techniques For Non-Linear Magnification Transformations"", Information Visualization '96, Proceedings IEEE Symposium on, San Francisco, CA, Los Alamitos, CA, USA, IEEE Comput. Soc, US: XP010201943; ISBN: 0-8186-7668-X the whole document,(Oct. 28, 1996),pp. 38-45.
Kuederle, Oliver "Presentation of Image Sequences: A Detail-In-Context Approach", Thesis, Simon Fraser University; (Aug. 2000), pp. 1-3, 5-10, 29-31.
Lamar, et al., "A Magnification Lens for Interactive Volume Visualization", ACM; pp. 1-10, Oct. 2001.
Leung, Y. K., et al., -A Review and Taxonomy of Distortion-Oriented Presentation Techniques, ACM Transactions on Computer-Human Interaction, 'Online! vol. 1, No. 2, XP002252314; Retrieved from the Internet: ' retrieved on Aug. 21, 2003 the whole document, (Jun. 1994), pp. 126-160.
Leung, Y. K., et al., —A Review and Taxonomy of Distortion-Oriented Presentation Techniques, ACM Transactions on Computer-Human Interaction, 'Online! vol. 1, No. 2, XP002252314; Retrieved from the Internet: <URL:http://citeseernj.nec.com/ leung94review.html> ' retrieved on Aug. 21, 2003 the whole document, (Jun. 1994), pp. 126-160.
Microsoft Corp., "Microsoft Paint", Microsoft Corp.,(1981-1998), Paint 1-14.
Rauschenbach, U., "The Rectangular Fish Eye View as an Efficient Method for the Transmission and Display of Large Images", Image Processing, ICIP 99, Proceedings, 1999 International Conference On, Kobe, Japan, Oct. 24-28, 1999, Piscataway, NJ, USA, IEEE, US, XP010368852, ISBN 0-7803-5467-2 p. 115, left-hand column-p. 116, paragraph 3, p. 118, paragraph 7.1; (1999), pp. 115-119.
Robertson, et al., ""The Document Lens"", (1993),pp. 101-108.
Robertson, G et al., "The Document Lens", UIST. Proceedings of the Annual ACM Symposium on User Interface Software and Technology, abstract figures 3, 4,(Nov. 3, 1993), pp. 101-108.
Sakamoto, Chikara et al., "Design and Implementation of a Parallel Pthread Library (PPL) with Parallelism and Portability", Systems and Computers in Japan, New York, US, vol. 29, No. 2; XP000752780, ISSN:0882-1666 abstract,(Feb. 1, 1998), pp. 28-35.
Sarkar, et al., "Stretching the Rubber Sheet: A Metaphor for Viewing Large Layouts on Small Screens", Proc. of the 6th annual ACM symp. on User interface software an technology, Atlanta, GA, (Dec. 1993), p. 81-91.
Schmalstieg, Dieter et al., "Using transparent props for interaction with the virtual table", Application Ser. No. 11/410,024, Proceedings of the 1999 symposium on Interactive 3D graphics, (Apr. 26, 1999), 8 pages.
Stone, et al., "The movable filter as a user interface tool", Proceedings of CHI ACM; (1992), pp. 306-312.
Tigges, M. et al., "Generalized Distance Metrics For Implicit Surface Modeling", Proceedings of the Tenth Western Computer Graphics Symposium; (Mar. 1999).
Tominski, Christian et al., "Fisheye Tree Views and Lenses for Graph Visualization", Jul. 2006, pp. 1-8.
Viega, J et al., "3D magic lenses, Proceedings of the 9th annual ACM symposium on User interface software and technology"; Pub 1996 ACM Press New York, NY, USA, (1996), pp. 51-58.
Watt, et al., "Advanced Animation and Rendering Techniques", (Addison-Wesley Publishing), (1992),p. 106-108.
Welsh, Michelle "Futurewave Software", Business Wire; (Nov. 15, 1993).
Wilson, et al., "Direct Volume Rendering Via 3D Textures", Technical Report UCSC-CRL-94-19, University of California, Santa Cruz, Jack Baskin School of Engineering; (Jun. 1994).

Also Published As

Publication number Publication date
US7580036B2 (en) 2009-08-25
US20060232585A1 (en) 2006-10-19

Similar Documents

Publication Publication Date Title
USRE44348E1 (en) Detail-in-context terrain displacement algorithm with optimizations
US7173636B2 (en) Method and system for generating detail-in-context lens presentations for elevation data
US7667699B2 (en) Fast rendering of pyramid lens distorted raster images
US8106927B2 (en) Graphical user interfaces and occlusion prevention for fisheye lenses with line segment foci
US8194972B2 (en) Method and system for transparency adjustment and occlusion resolution for urban landscape visualization
US8031206B2 (en) Method and system for generating pyramid fisheye lens detail-in-context presentations
US6961071B2 (en) Method and system for inversion of detail-in-context presentations with folding
US7995078B2 (en) Compound lenses for multi-source data presentation
US7275219B2 (en) Fast and accurate rendering of pliable display technology distortions using pre-calculated texel coverages
US7312806B2 (en) Dynamic width adjustment for detail-in-context lenses
US7486302B2 (en) Fisheye lens graphical user interfaces
US20070097109A1 (en) Method and system for generating detail-in-context presentations in client/server systems
US6727910B2 (en) Method and system for inversion of detail-in-context presentations
US20060050091A1 (en) Occlusion reduction and magnification for multidimensional data presentations
US20080144968A1 (en) Dynamic viewing of wide angle images
US20110069086A1 (en) Detail-in-Context Presentations in Client/Server Systems
US6351262B1 (en) Display techniques for three-dimensional virtual reality
JPH0433069A (en) Deforming device for two-dimensional picture

Legal Events

Date Code Title Description
AS Assignment

Owner name: CALLAHAN CELLULAR L.L.C., DELAWARE

Free format text: MERGER;ASSIGNOR:NOREGIN ASSETS N.V., L.L.C.;REEL/FRAME:037220/0255

Effective date: 20150827

FPAY Fee payment

Year of fee payment: 8

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 12TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1553); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 12

AS Assignment

Owner name: INTELLECTUAL VENTURES ASSETS 186 LLC, DELAWARE

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:CALLAHAN CELLULAR L.L.C.;REEL/FRAME:062708/0463

Effective date: 20221222

AS Assignment

Owner name: INTELLECTUAL VENTURES ASSETS 186 LLC, DELAWARE

Free format text: SECURITY INTEREST;ASSIGNOR:MIND FUSION, LLC;REEL/FRAME:063155/0300

Effective date: 20230214

AS Assignment

Owner name: MIND FUSION, LLC, WASHINGTON

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:INTELLECTUAL VENTURES ASSETS 186 LLC;REEL/FRAME:064271/0001

Effective date: 20230214

AS Assignment

Owner name: ACCESSIFY, LLC, TEXAS

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MIND FUSION, LLC;REEL/FRAME:064357/0642

Effective date: 20230623