# US 8,274,506 B1 · System and methods for creating a three-dimensional view of a two-dimensional map

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,274,506 B1
- Document ID: US8274506B1
- Status: Granted
- Kind: B1
- Application number: 12/111,031
- Filed: 2008-04-28
- Granted: 2012-09-25
- Earliest claimed: 2008-04-28
- Assignees: Adobe Systems Incorporated
- Inventors: David B T Rees
- Web page: https://patentgrep.com/patent/US8274506B1

## CPC

- G06T 15/04: Texture mapping
- G06T 17/05: Geographic models
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL

## Abstract

Systems, methods, and computer-readable storage media for generating 3D views of 2D images are disclosed. Image data representing a 2D map may be included in an input document in a portable document format, along with embedded geospatial information related to the map. A document-based 3D translator may extract image data and other information from the input document and may translate the image into a map projected on a 3D model of the Earth's surface, using embedded location and/or extent information. Additional information may be projected on the map image or displayed as a height, texture, or color, or as separate, anchored, or floating text. Image data representing the 3D view may be output to the same or a different document file. The methods may be implemented in a system comprising a CPU and/or a GPU, and/or as program instructions, stored on computer-readable media, executable by the CPU and/or GPU.

## Claims

### Claim 1

A computer-implemented method, comprising:
receiving input data comprising two-dimensional image data that represents one or more two-dimensional image elements;
determining whether the image data that represents the one or more two-dimensional image elements is associated with geospatial data; and
in response to determining that the image data that represents the one or more two-dimensional image elements is associated with geospatial data:
obtaining the geospatial data that is associated with the one or more two-dimensional image elements;
rendering a three-dimensional view comprising the one or more two-dimensional image elements, wherein said rendering is dependent, at least in part, on the geospatial data that is associated with the one or more two-dimensional image elements, and wherein said rendering comprises:
determining, based at least in part on the geospatial data, a three-dimensional surface on which to project the one or more two-dimensional image elements, wherein a shape of or a location on the three-dimensional surface on which to project the one or more two-dimensional image elements is determined based at least in part on the geospatial data; and
projecting the one or more two-dimensional image elements on the determined three-dimensional surface; and
generating an output document comprising data representing the three-dimensional view.

### Claim 2 (depends on 1)

The method of claim 1, wherein the input data comprises image data representing a map.

### Claim 3 (depends on 1)

The method of claim 1, wherein said rendering a three-dimensional view comprises translating the two-dimensional image data to three-dimensional data.

### Claim 4 (depends on 1)

The method of claim 1, wherein at least one of the received input data or the associated geospatial data is provided in an input document.

### Claim 5 (depends on 1)

The method of claim 1, wherein said rendering a three-dimensional view comprises projecting the one or more two-dimensional image elements as a texture on the determined three-dimensional surface.

### Claim 6 (depends on 1)

The method of claim 1, further comprising, operating on the three-dimensional view using one or more functions of a document authoring application.

### Claim 7 (depends on 6)

The method of claim 6, wherein said operating on the three-dimensional view comprises one or more of: operating on the three-dimensional view using a measurement function of the document authoring application, modifying a viewpoint of the three-dimensional view, modifying an appearance of one of the one or more two-dimensional image elements, or modifying visibility of one of the one or more two-dimensional image elements.

### Claim 8 (depends on 1)

The method of claim 1, wherein the input data further comprises three-dimensional image data.

### Claim 9 (depends on 1)

The method of claim 1, wherein the output document comprises a document in a portable document format.

### Claim 10 (depends on 1)

The method of claim 1, wherein at least one of the input data or the data representing the three-dimensional view comprises data formatted according to one or more standard image formats.

### Claim 11 (depends on 1)

The method of claim 1, wherein the geospatial data comprises one or more of: location information relative to a celestial body, extent information relative to a celestial body, or projection information.

### Claim 12 (depends on 1)

The method of claim 1, wherein said rendering a three-dimensional view comprises depicting the geospatial information in the three-dimensional view using one or more of: color, texture, text, or deformation of an appearance of the determined three-dimensional surface.

### Claim 13 (depends on 1)

The method of claim 1, further comprising:
determining if any non-geospatial information is associated with the input data; and
in response to determining that non-geospatial information is associated with the input data, modifying the three-dimensional view to include the non-geospatial information.

### Claim 14 (depends on 13)

The method of claim 13, wherein said modifying the three-dimensional view to include the non-geospatial information comprises one or more of: projecting the non-geospatial information on the determined three-dimensional surface, displaying the non-geospatial information as text, modifying a color of the three-dimensional view, modifying a texture of the three-dimensional view, modifying height information associated with the three-dimensional view, or adding a markup language statement to the data representing the three-dimensional view.

### Claim 15 (depends on 13)

The method of claim 13, wherein the non-geospatial information comprises one or more of: height information, text, numerical information, statistical information, color, texture, or a markup language statement.

### Claim 16 (depends on 1)

The method of claim 1, further comprising:
receiving the output document as an input document;
rendering the three-dimensional view represented by the data in the output document;
modifying the rendered three-dimensional view, wherein said modifying the rendered three-dimensional view comprises one or more of: adding geospatial information to the rendered three-dimensional view, adding non-geospatial information to the rendered three-dimensional view, or adding a markup language statement to the rendered three-dimensional view; and
generating a second output document comprising data representing the modified rendered three-dimensional view.

### Claim 17 (depends on 1)

The method of claim 1, further comprising:
receiving the output document as an input document; and
rendering a two-dimensional image comprising the one or more two-dimensional image elements using the data in the output document representing the three-dimensional view.

### Claim 18 (depends on 1)

The method of claim 1, further comprising simulating a fly-by or fly-through of the three-dimensional view using an operation invoked within a document authoring application.

### Claim 19 (depends on 18)

The method of claim 18,
wherein said simulating comprises applying one or more constraints to the fly-by or fly-through;
wherein the one or more constraints are selected for application to the fly-by or fly-through dependent, at least in part, on the input data; and
wherein the one or more constraints define a limitation on motion or an enhanced freedom of movement for the fly-by or fly-through simulation.

### Claim 20 (depends on 1)

The method of claim 1, wherein the output document comprises a replacement for an input document from which the input data was received.

### Claim 21 (depends on 1)

The method of claim 1, wherein the geospatial data is obtained from a library, from a database, from a data store, from an input file other than an input file comprising the input data, or from user input.

### Claim 22 (depends on 1)

The method of claim 1,
wherein the input data represents one or more two-dimensional image elements within an input document; and
wherein said generating an output document comprises locating the three-dimensional view within the output document at a location corresponding to a location of at least one of the one or more two-dimensional image elements within the input document.

### Claim 23 (depends on 1)

The method of claim 1, further comprising:
determining a visual priority of the three-dimensional view dependent, at least in part, on object data derived from a subset of the input data, the subset of the input data representing a subset of the one or more two-dimensional image elements;
wherein said rendering the three-dimensional view is dependent, at least in part, on the determined visual priority.

### Claim 24

A non-transitory computer-readable storage medium, storing program instructions, wherein the program instructions are computer-executable to implement a three-dimensional translator configured to:
receive an input document comprising two-dimensional image data representing a two-dimensional map;
determine whether the input document contains geospatial data that is associated with the two-dimensional map; and
in response to determining that the input document contains geospatial data that is associated with the two-dimensional map:
extract the geospatial data that is associated with the two-dimensional map from the input document;
render a three-dimensional image comprising the two-dimensional map, wherein said rendering is dependent, at least in part, on the extracted geospatial data that is associated with the two-dimensional map, and wherein said rendering comprises:
determining, based at least in part on the geospatial data, a three-dimensional surface on which to project the two-dimensional map, wherein a shape of or a location on the three-dimensional surface on which to project the two-dimensional map is determined based at least in part on the geospatial data; and
projecting the two-dimensional map on the determined three-dimensional surface; and
generate an output document comprising image data representing the three-dimensional image.

### Claim 25 (depends on 24)

The storage medium of claim 24, wherein said rendering a three-dimensional image comprises translating the two-dimensional image data to three-dimensional image data.

### Claim 26 (depends on 24)

The storage medium of claim 24, wherein said rendering a three-dimensional image comprises projecting the image data as a texture on the determined three-dimensional surface.

### Claim 27 (depends on 24)

The storage medium of claim 24, wherein the three-dimensional translator is further configured to operate on the three-dimensional image using one or more functions of a document authoring application.

### Claim 28 (depends on 24)

The storage medium of claim 24, wherein the output document comprises a document in a portable document format.

### Claim 29 (depends on 24)

The storage medium of claim 24, wherein the geospatial data comprises one or more of: location information relative to a celestial body, extent information relative to a celestial body, or projection information.

### Claim 30 (depends on 24)

The storage medium of claim 24, wherein said rendering a three-dimensional image comprises depicting the geospatial information in the three-dimensional image using one or more of: color, texture, text, or deformation of an appearance of the determined three-dimensional surface.

### Claim 31 (depends on 24)

The storage medium of claim 24, wherein the three-dimensional translator is further configured to:
determine if any non-geospatial information is associated with the image data; and
in response to determining that non-geospatial information is associated with the image data, modify the three-dimensional image to include the non-geospatial information;
wherein said modifying the three-dimensional image to include the non-geospatial information comprises one or more of: projecting the non-geospatial information on the determined three-dimensional surface, displaying the non-geospatial information as text, modifying a color of the three-dimensional image, modifying a texture of the three-dimensional image, modifying height information associated with the three-dimensional image, or adding a markup language statement to the image data representing the three-dimensional image.

### Claim 32 (depends on 31)

The storage medium of claim 31, wherein the non-geospatial information comprises one or more of: height information, text, numerical information, statistical information, color, texture, or a markup language statement.

### Claim 33

A system, comprising:
one or more processors; and
a memory coupled to the one or more processors;
wherein the memory is configured to store program instructions executable by the one or more processors to implement a three-dimensional translator configured to:
receive an input document comprising two-dimensional image data representing a two-dimensional map;
determine whether the input document contains geospatial data that is associated with the two-dimensional map; and
in response to determining that the input document contains geospatial data that is associated with the two-dimensional map:
extract the geospatial data that is associated with the two-dimensional map from the input document;
render a three-dimensional image comprising the two-dimensional map, wherein said rendering is dependent, at least in part, on the extracted geospatial data that is associated with the two-dimensional map, and wherein said rendering comprises:
determining, based at least in part on the geospatial data, a three-dimensional surface on which to project the two-dimensional map, wherein a shape of or a location on the three-dimensional surface on which to project the two-dimensional map is determined based at least in part on the geospatial data; and
projecting the two-dimensional map on the determined three-dimensional surface; and
generate an output document comprising image data representing the three-dimensional image.

### Claim 34 (depends on 33)

The system of claim 33, wherein said rendering a three-dimensional image comprises translating the two-dimensional image data to three-dimensional image data.

### Claim 35 (depends on 33)

The system of claim 33, wherein said rendering a three-dimensional image comprises projecting the image data as a texture on the determined three-dimensional surface.

### Claim 36 (depends on 33)

The system of claim 33, wherein the three-dimensional translator is further configured to operate on the three-dimensional image using one or more functions of a document authoring application.

### Claim 37 (depends on 33)

The system of claim 33, wherein the output document comprises a document in a portable document format.

### Claim 38 (depends on 33)

The system of claim 33, wherein the geospatial data comprises one or more of: location information relative to a celestial body, extent information relative to a celestial body, or projection information.

### Claim 39 (depends on 33)

The system of claim 33, wherein said rendering a three-dimensional image comprises depicting the geospatial information in the three-dimensional image using one or more of color, texture, text, or deformation of an appearance of the determined three-dimensional surface.

### Claim 40 (depends on 33)

The system of claim 33, wherein the three-dimensional translator is further configured to:
determine if any non-geospatial information is associated with the image data; and
in response to determining that non-geospatial information is associated with the image data, modify the three-dimensional image to include the non-geospatial information;
wherein the non-geospatial information comprises one or more of: height information, text, numerical information, statistical information, color, texture, or a markup language statement.

### Claim 41 (depends on 40)

The system of claim 40, wherein said modifying the three-dimensional image to include the non-geospatial information comprises one or more of: projecting the non-geospatial information on the determined three-dimensional surface, displaying the non-geospatial information as text, modifying a color of the three-dimensional image, modifying a texture of the three-dimensional image, modifying height information associated with the three-dimensional image, or adding a markup language statement to the image data representing the three-dimensional image.

### Claim 42 (depends on 33)

The system of claim 33, wherein in response to determining that the input document does not contain geospatial data, the three-dimensional translator is configured to:
render a three-dimensional image comprising the two-dimensional map projected on a three-dimensional surface, wherein said rendering is dependent, at least in part, on geospatial data provided through a user interface of the three-dimensional translator or on default geospatial data; and
generate an output document comprising image data representing the three-dimensional image.

### Claim 43 (depends on 33)

The system of claim 33, wherein the one or more processors comprise one or more of a graphics processing unit or a general purpose central processing unit.
