Methods and Apparatus for Rendering Labels Based on Occlusion Testing for Label Visibility
First Claim
1. A method, comprising:
- performing, by one or more computing devices;
generating a representation of a map region divided into a plurality of sections;
receiving height information corresponding to the map region,wherein the height information includes height values corresponding to one or more locations in the map region;
extruding each respective section of the plurality of sections according to a corresponding respective height value of the height values,wherein said extruding is based on a correspondence of the respective section to a respective location in the map region, andwherein the respective height value corresponds to the respective location;
generating a three-dimensional representation of the map region based on said extruding each respective section of the plurality of sections;
determining, based on the three-dimensional representation of the map region, that a label in a map view of the map region is occluded below a threshold amount; and
rendering at least a portion of the label in the map view based on said determining that the label in the map view of the map region is occluded below the threshold amount.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods and apparatus for a map tool displaying a three-dimensional view of a map region, where the map tool determines whether or not partially occluded labels within the map region are to be drawn or are to not be drawn. The map tool determines whether or not to draw a label in a map view dependent upon mapping information and upon construction of a three-dimensional model based on one or more two- or three-dimensional data sets. The map tool further determines whether or not to draw a label in the map view dependent upon a measure of occlusion of a label in the map view. In order to determine a measure of occlusion, the map tool may calculate whether a line of sight projection from virtual camera viewpoint for the mobile device intersects, once or more than once, with any objects or landmarks within the three-dimensional model.
-
Citations
25 Claims
-
1. A method, comprising:
performing, by one or more computing devices; generating a representation of a map region divided into a plurality of sections; receiving height information corresponding to the map region, wherein the height information includes height values corresponding to one or more locations in the map region; extruding each respective section of the plurality of sections according to a corresponding respective height value of the height values, wherein said extruding is based on a correspondence of the respective section to a respective location in the map region, and wherein the respective height value corresponds to the respective location; generating a three-dimensional representation of the map region based on said extruding each respective section of the plurality of sections; determining, based on the three-dimensional representation of the map region, that a label in a map view of the map region is occluded below a threshold amount; and rendering at least a portion of the label in the map view based on said determining that the label in the map view of the map region is occluded below the threshold amount. - View Dependent Claims (2, 3, 4, 5)
-
6. A system, comprising:
-
at least one processor; and a memory comprising program instructions, wherein the program instructions are executable by the at least one processor to; receive mapping information corresponding to a map region, wherein the mapping information includes height values for the map region; determine, based on the height values, a three-dimensional model of the map region; determine, based on the three-dimensional model of the map region and based on coordinates for label in the map view of the map region, a measure of occlusion for a label in the map view, wherein the coordinates for the label in the map view correspond to coordinates for the label in the three-dimensional model; and render the label in the map view in response to the measure of occlusion satisfying a threshold to be included in the map view. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A computer-readable storage medium storing program instructions, wherein the program instructions are computer-executable to implement:
-
receiving a set of mapping information for a map region; receiving an other set of mapping information for the map region; correlating the set of mapping information with the other set of mapping information; generating a three-dimensional model based on said correlating the set of mapping information with the other set of mapping information; calculating, based on a virtual camera viewpoint, one or more measures of occlusion of a label in a map view of the map region, wherein said calculating is based on a correlation between the three-dimensional model and the map view of the map region; and rendering, based on the one or more measures of occlusion of the label in the map view of the map region, the label in the map view of the map region. - View Dependent Claims (12, 13, 14, 15)
-
-
16. A method, comprising:
performing, by one or more computing devices; receiving mapping information for a map region; approximating, based on the mapping information for the map region, a three-dimensional model of the map region; determining a measure of occlusion for a label in a map view of the map region, wherein said determining is based on the three-dimensional model of the map region and based on a correlation between the three-dimensional model of the map region and the map view of the map region; and rendering, based on the measure of occlusion for the label in the map view of the map region being less than a threshold value, the label in the map view. - View Dependent Claims (17, 18, 19, 20)
-
21. A computer-readable storage medium storing program instructions, wherein the program instructions are computer-executable to implement:
-
receive mapping information for a map region; generate a three-dimensional model based on the mapping information for the map region; identify a label to be rendered in a map view of the map region; determining, for the label to be rendered in the map view of the map region, label coordinates within the three-dimensional model; determining that one or more points in the label coordinates within the three-dimensional model are unobstructed from a virtual camera viewpoint; and rendering, in response to the one or more points in the label coordinates within the three-dimensional model being unobstructed from the virtual camera viewpoint satisfying a threshold value, at least a portion of the label in the map view; - View Dependent Claims (22, 23, 24, 25)
-
Specification