KML文件中的多个样式/ PolyStyle标记

时间:2015-12-02 17:02:18

标签: xml google-maps polygon kml

堆垛..

我目前似乎在将样式应用于我创建的KML文件中的多边形时遇到了一些麻烦。

目前,我只试图设计两种状态,两种不同颜色(北达科他州和南达科他州)。

当我将它上传到KML验证器(例如feedvalidator dot org)时,它告诉我文件有效且没有错误。

当我将文件/代码上传到将在地图上显示输出的网站时,我会看到我的期望。 (下图1)

问题是当文件上传到GoogleMaps时,它似乎只是尊重第一种风格! (下图2)

以下是我的代码的简化版本。

<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
<Document>
    <name><![CDATA[Landgrab]]></name>
    <open>1</open>
    <Style id="mowhawk">
        <IconStyle>
            <scale>1</scale>
            <Icon>
                <href>http://www.thefairtradepractice.co.uk/sites/default/files/mowhawk-logo-gmap-pin.png</href>
            </Icon>
        </IconStyle>
        <LabelStyle>
            <color>8072000B</color>
            <scale>1</scale>
        </LabelStyle>
        <LineStyle>
            <color>8072000B</color>
            <width>2</width>
        </LineStyle>
        <PolyStyle>
            <color>8072000B</color>
            <fill>1</fill>
            <outline>1</outline>
        </PolyStyle>
    </Style>

    <Style id="sioux">
        <IconStyle>
            <scale>1</scale>
            <Icon>
                <href>http://www.thefairtradepractice.co.uk/sites/default/files/sioux-logo-gmap-pin.png</href>
            </Icon>
        </IconStyle>
        <LabelStyle>
            <color>8000FFFF</color>
            <scale>1</scale>
        </LabelStyle>
        <LineStyle>
            <color>8000FFFF</color>
            <width>2</width>
        </LineStyle>
        <PolyStyle>
            <color>8000FFFF</color>
            <fill>1</fill>
            <outline>1</outline>
        </PolyStyle>
    </Style>

<!--
#############################
    NORTH DAKOTA STATE
#############################
--> 

<Placemark id="pm255">
    <name><![CDATA[North Dakota]]></name>
    <Snippet maxLines="0">empty</Snippet>
    <description><![CDATA[]]></description>
    <styleUrl>#mowhawk</styleUrl>
    <MultiGeometry>
        <Point id="g883">
            <altitudeMode>clampToGround</altitudeMode>
            <coordinates>
                *****LIST OF CO-ORDINATES*****
            </coordinates>
        </Point>
        <Polygon id="g884">
            <altitudeMode>clampToGround</altitudeMode>
            <outerBoundaryIs>
                <LinearRing>
                    <coordinates>
                        *****LIST OF CO-ORDINATES*****
                    </coordinates>
                </LinearRing>
            </outerBoundaryIs>
        </Polygon>
    </MultiGeometry>
</Placemark>

<!--
#############################
    SOUTH DAKOTA STATE
#############################
--> 

<Placemark id="pm256">
    <name><![CDATA[South Dakota]]></name>
    <Snippet maxLines="0">empty</Snippet>
    <description><![CDATA[]]></description>
    <styleUrl>#sioux</styleUrl>
    <MultiGeometry>
        <Point id="g885">
            <altitudeMode>clampToGround</altitudeMode>
            <coordinates>
                *****LIST OF CO-ORDINATES*****
            </coordinates>
        </Point>
        <Polygon id="g886">
            <altitudeMode>clampToGround</altitudeMode>
            <outerBoundaryIs>
                <LinearRing>
                    <coordinates>
                        *****LIST OF CO-ORDINATES*****
                    </coordinates>
                </LinearRing>
            </outerBoundaryIs>
        </Polygon>
    </MultiGeometry>
</Placemark>

</Document>
</kml>

Expected Results

Actual Results

从上面的屏幕截图中可以看出,当我将KML放入GoogleMaps时,除了第一个样式之外,它似乎没有任何样式。

用于检查输出的网站;

  • display-kml.appspot.com /
  • elsevier-apps.sciverse.com/GoogleMaps/verification

提前感谢您的帮助!

0 个答案:

没有答案