Управление свойствами линейной строки KML

Я рисую LineString. По какой-то причине я не влияю на LineStyle. Мой код выглядит так же, как и во многих примерах, но независимо от того, какой цвет или ширину я помещаю в LineStyle, он всегда выглядит как толстая синяя линия.

<?xml version="1.0" encoding="utf-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
  <Document>
    <name>Qtr Min Grid Maker</name>
    <LookAt>
      <longitude>-121.5</longitude>
      <latitude>38</latitude>
      <altitude>0</altitude>
      <range>740933.8825924395</range>
      <tilt>0</tilt>
      <heading>0</heading>
    </LookAt>
    <Folder>
      <name>Grids</name>
  <Style id="linestyle1">
    <LineStyle>
      <color>7f0000ff</color>
      <width>1</width>
      <gx:labelVisibility>1</gx:labelVisibility>
    </LineStyle>
  </Style>   
      <Placemark>
        <name>QTR</name>
        <visibility>0</visibility>
        <open>1</open>
        <styleUrl>#linestyle1</styleUrl>
        <LineString>
  <coordinates>
-124.75,40,0 
-124.5,40,0 
-124.25,40,0 
-124,40,0 
-123.75,40,0 
-123.5,40,0 
-123.25,40,0 
-123,40,0 
  </coordinates>
  </LineString>
  </Placemark>
  </Folder>
  </Document>
</kml>

kml
person Meta Mussel    schedule 10.05.2016    source источник
comment
Как вы планируете это? Ваш кмл действителен.   -  person Yuchen    schedule 10.05.2016
comment
Я получаю синтаксическая ошибка, но Кажется, KmlLayer может его отобразить.   -  person geocodezip    schedule 11.05.2016


Ответы (1)


У меня работает, если я перемещаю общие стили на верхний уровень (внутри тега <Document>):

пример

Из документации (см. описание <StyleSelector>):

Стиль, определенный в компоненте, называется «встроенным стилем» и применяется только к компоненту, который его содержит. Стиль, определенный как дочерний элемент <Document>, называется "общим стилем". Для общего стиля должен быть определен идентификатор. На этот идентификатор ссылается одна или несколько функций в <Document>.

Ваш не является ни ребенком <Document>, ни членом <Placemark>

<?xml version="1.0" encoding="utf-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
  <Document>
  <Style id="linestyle1">
    <LineStyle>
      <color>7f0000ff</color>
      <width>1</width>
      <gx:labelVisibility>1</gx:labelVisibility>
    </LineStyle>
  </Style>   
    <name>Qtr Min Grid Maker</name>
    <LookAt>
      <longitude>-121.5</longitude>
      <latitude>38</latitude>
      <altitude>0</altitude>
      <range>740933.8825924395</range>
      <tilt>0</tilt>
      <heading>0</heading>
    </LookAt>
    <Folder>
      <name>Grids</name>
      <Placemark>
        <name>QTR</name>
        <visibility>0</visibility>
        <open>1</open>
        <styleUrl>#linestyle1</styleUrl>
        <LineString>
  <coordinates>
-124.75,40,0 
-124.5,40,0 
-124.25,40,0 
-124,40,0 
-123.75,40,0 
-123.5,40,0 
-123.25,40,0 
-123,40,0 
  </coordinates>
  </LineString>
  </Placemark>
  </Folder>
  </Document>
</kml>
person geocodezip    schedule 10.05.2016