阻止 Google Earth 在加载 KML 时生成 MultiGeometry
Prevent Google Earth from generating MultiGeometry when loading KML
我有一个程序可以自动生成用于 Google 地球的 KML 文件。我最近的输出粘贴在下面:
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://earth.google.com/kml/2.0">
<Document>
<Placemark>
<name>Active Location</name>
<address>60 NORTH WILLOW STREET, MONTCLAIR, ESSEX County, New Jersey</address>
</Placemark>
</Document>
</kml>
打开此文件时,会在地标周围生成一个矩形多边形,如下所示:
将地标另存为另一个文档会提供以下内容:
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2" xmlns:gx="http://www.google.com/kml/ext/2.2" xmlns:kml="http://www.opengis.net/kml/2.2" xmlns:atom="http://www.w3.org/2005/Atom">
<Document>
<name>QueryOutput.KML</name>
<Placemark>
<name>Active Location</name>
<address>60 NORTH WILLOW STREET, MONTCLAIR, ESSEX County, New Jersey</address>
<MultiGeometry>
<Point>
<coordinates>-74.2122552,40.8157007,0</coordinates>
</Point>
<LinearRing>
<coordinates>
-74.21556655758907,40.81321718180819,0 -74.21556655758907,40.81818421819181,0 -74.20894384241093,40.81818421819181,0 -74.20894384241093,40.81321718180819,0 -74.21556655758907,40.81321718180819,0
</coordinates>
</LinearRing>
</MultiGeometry>
</Placemark>
</Document>
</kml>
用户必须能够收集 Point
的 latitude/longitude 数据,然后将其复制到另一个表格中。由于地标被定义为 MultiGeometry,因此他们无法轻松访问此数据。需要对初始 KML 文件进行哪些更改才能防止地标生成 MultiGeometry?我试过将 name
和 address
标签放在 Point
中,但这会导致在加载文件时将坐标设置为 0,0,0。
当 KML 文件只有一个地址时,Google地球会自动进行地址查找,以获取带有点和错误边界的大致位置。在 Google 地球中打开后保存 KML 会自动将位置作为 MultiGeometry 添加到地图项中。
防止 Google Earth 自动将 MultiGeometry 添加到 KML 的唯一方法是首先将几何图形(点、线等)添加到 KML。另一种方法是在文本编辑器中编辑生成的 KML,或者在 Google 地球中手动查找地址,然后在找到的位置创建一个新地标。
正在 Google 地球中搜索地址
https://support.google.com/earth/answer/148081?hl=en
我有一个程序可以自动生成用于 Google 地球的 KML 文件。我最近的输出粘贴在下面:
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://earth.google.com/kml/2.0">
<Document>
<Placemark>
<name>Active Location</name>
<address>60 NORTH WILLOW STREET, MONTCLAIR, ESSEX County, New Jersey</address>
</Placemark>
</Document>
</kml>
打开此文件时,会在地标周围生成一个矩形多边形,如下所示:
将地标另存为另一个文档会提供以下内容:
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2" xmlns:gx="http://www.google.com/kml/ext/2.2" xmlns:kml="http://www.opengis.net/kml/2.2" xmlns:atom="http://www.w3.org/2005/Atom">
<Document>
<name>QueryOutput.KML</name>
<Placemark>
<name>Active Location</name>
<address>60 NORTH WILLOW STREET, MONTCLAIR, ESSEX County, New Jersey</address>
<MultiGeometry>
<Point>
<coordinates>-74.2122552,40.8157007,0</coordinates>
</Point>
<LinearRing>
<coordinates>
-74.21556655758907,40.81321718180819,0 -74.21556655758907,40.81818421819181,0 -74.20894384241093,40.81818421819181,0 -74.20894384241093,40.81321718180819,0 -74.21556655758907,40.81321718180819,0
</coordinates>
</LinearRing>
</MultiGeometry>
</Placemark>
</Document>
</kml>
用户必须能够收集 Point
的 latitude/longitude 数据,然后将其复制到另一个表格中。由于地标被定义为 MultiGeometry,因此他们无法轻松访问此数据。需要对初始 KML 文件进行哪些更改才能防止地标生成 MultiGeometry?我试过将 name
和 address
标签放在 Point
中,但这会导致在加载文件时将坐标设置为 0,0,0。
当 KML 文件只有一个地址时,Google地球会自动进行地址查找,以获取带有点和错误边界的大致位置。在 Google 地球中打开后保存 KML 会自动将位置作为 MultiGeometry 添加到地图项中。
防止 Google Earth 自动将 MultiGeometry 添加到 KML 的唯一方法是首先将几何图形(点、线等)添加到 KML。另一种方法是在文本编辑器中编辑生成的 KML,或者在 Google 地球中手动查找地址,然后在找到的位置创建一个新地标。
正在 Google 地球中搜索地址
https://support.google.com/earth/answer/148081?hl=en