在Google地图上添加自定义图案叠加层

时间:2011-08-30 01:07:46

标签: google-maps map overlay bing-maps

我目前正在使用Google Maps API,我可以试用其他免费地图API来完成我的任务。

在我正在开展的其中一个项目中,我需要能够将多个形状叠加层叠加在一起。我最初的想法是让第一个覆盖层使用不同色调的纯色。对于后续的覆盖层,我计划使用不同的颜色编码图案...例如:第二个覆盖层使用颜色编码的条纹图案,另一个覆盖层使用颜色编码的检查框图案。这样,我可以堆叠这些叠加层来表示多个事物。对于第一个覆盖层,我能够使用Polygon个对象创建不规则的形状边界,并且我可以根据相关的值在多边形上设置不同的填充颜色。

在挖掘之后,Google Maps API中的Polygon对象似乎只接受填充和描边颜色,而我似乎无法在Polygon对象上设置自定义图案。我希望它至少会采用PNG模式文件,但事实并非如此。我可以使用的最接近的东西是GroundOverlay对象,但这对我不起作用,因为它只接受2个坐标(我相信左上角和右下角),而我需要在不规则形状上创建自定义图案叠加。 / p>

我可以使用Google Maps API或任何其他地图API(必应,雅虎等)来实现这一目标吗?是否有任何第三方API允许我在Google地图上集成自定义模式叠加层?

2 个答案:

答案 0 :(得分:1)

如果您只能使用笔触图案,而不是填充图案,则最新版本的Bing贴图sdk允许您在创建多边形时设置strokeDashArray。也许这足以识别您必须在地图上叠加的不同形状。

希望有帮助...

答案 1 :(得分:1)

我不相信你提到的任何API都支持图案矢量形状图层。我能想到的两个选择是:

  • 使用半透明的填充颜色。假设您有一个具有半透明红色多边形的图层,而顶部有另一个具有半透明蓝色多边形的图层 - 它们之间的重叠区域将填充组合颜色(在这种情况下为紫色)。 Bing Maps肯定支持多边形填充的alpha通道,我怀疑Google Maps也是如此。
  • 使用您想要的任何填充图案,而不是使用矢量形状图层,将数据渲染为栅格图层。将这些图层切割成256px x 256px图块,根据四键图块编号系统编号,并将它们作为自定义图块层放置在地图上。 (即显示内置道路地图和航空地砖的方式)。如果将切片渲染为PNG,则可以将多个图层堆叠在一起,并具有透明(或半透明)区域,以显示下面图层中的数据。根据数据来源的不同,您可能会发现Mapnik或Geoserver等工具可用于创建切片图层。