emreozdemir / kml-samples

Automatically exported from code.google.com/p/kml-samples
0 stars 0 forks source link

<MultiGeometry> does not display correctly when updated using <NetworkLinkControl> #392

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
Which products are affected?
Google Earth 5 and Google Earth 6

What steps will reproduce the problem?
1.Create a KML that contains a <Placemark> with a <MultiGeometry id="ID"> that 
contains one or more <Geometry> objects.
2.Using <NetworkLinkControl> create any new <Geometry> object inside of 
<MultiGeometry id="ID">

What is the expected output or behavior? What do you see instead?
Expected: GE will display the new <Geometry> object
Actual:   GE does not display the new <Geometry> object

What application versions (if any) are you using?
GE 6.0.3.2197

Which operating systems (and/or relevant web browsers) are affected?
Microsoft Windows (5.1.2600.3)

Please provide any additional information (code snippets/links) below.
Saving and Loading the updated file to and from the Local Disk displays the 
document correctly.

Double clicking on the updated <Placemark> in the Places panel will adjust the 
view to encompass the update, however it is still not displayed.

I have disabled the terrain feature in GE to ensure that the <Placemark> was 
not being drawn beneath the surface of the earth.

Original file loaded from <NetworkLink>:
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
<Document>
   <name>Tester</name>
   <Placemark id="1000">
      <name>1000</name>
      <visibility>1</visibility>
      <open>1</open>
      <Style id="route_style">
         <LineStyle>
            <color>7f0000ff</color>
            <width>5</width>
         </LineStyle>
      </Style>
      <styleUrl>#route_style</styleUrl>
      <MultiGeometry id="MG1000">
         <LineString id="LS1000">
            <coordinates>
               -106.6,31.8,0 -106.7,31.9,0 -106.8,31.8,0
            </coordinates>
         </LineString>
      </MultiGeometry>
   </Placemark>
</Document>
</kml>

File that updates the Original:
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
<NetworkLinkControl>
   <Update>
      <targetHref>http://localhost:8080/kml/Original.kml</targetHref>
      <Create>
         <MultiGeometry targetId="MG1000">
            <LineString id="newLS">
               <coordinates>
                  -106.8,31.8,0 -106.9,31.9,0
               </coordinates>
            </LineString>
         </MultiGeometry>
      </Create>
   </Update>
</NetworkLinkControl>
</kml>

The Original file after being updated:
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
<Document>
   <name>Tester</name>
   <Placemark id="1000">
      <name>1000</name>
      <visibility>1</visibility>
      <open>1</open>
      <Style id="route_style">
         <LineStyle>
            <color>7f0000ff</color>
            <width>5</width>
         </LineStyle>
      </Style>
      <styleUrl>#route_style</styleUrl>
      <MultiGeometry id="MG1000">
         <LineString id="LS1000">
            <coordinates>
               -106.6,31.8,0 -106.7,31.9,0 -106.8,31.8,0
            </coordinates>
         </LineString>
         <LineString id="newLS">
            <coordinates>
               -106.8,31.8,0 -106.9,31.9,0
            </coordinates>
         </LineString>
      </MultiGeometry>
   </Placemark>
</Document>
</kml>

When the Original file is loaded, <LineString id="LS1000"> is displayed. After 
the update, LS1000 is still displayed, but <LineString id="newLS"> is not 
displayed even though the code for it is in the file.

Original issue reported on code.google.com by aaronxav...@gmail.com on 22 Jun 2011 at 1:45