[FWTools] ogr2ogr shp --> kml conversion failing on some complicated polygons

Bryan Keith bryan at geomega.com
Sun Apr 8 19:33:37 EDT 2007


Lennox Antoine wrote:
> Hi Brian,
> 
> It appears it's either a tesselation issue on Google's side, or your input
> data is bad. I don't which application you're using to view your vector
> files, but out of the three I used, 2 of them displayed one way, and 1 was
> corrupt (see inner_real2.png).

Lennox,

That's interesting.  I'm looking at the shapefile in MapWindow GIS which 
displays it like OpenEV and TatukGIS do.  Maybe I need to figure out why 
QGIS doesn't like the shapefile, fix it, and google will like it as 
well.  Maybe a simplification algorithm would help.

> 
> Based on these results, I have to assume FWTools and TatukGIS are the
> correct ways of viewing the vector file. The problem with the KML file in
> this case though, is that it only has 3 inner polygons. 

No, the kml file I sent you is the simplest kml file I was able to 
create that doesn't display correctly.  It's not direct output from the 
kml generator.  Sorry for the confusion.

> Look closely at the
> screenshot comparison. There are many little innerpolyons. You can't
> represent all those holes with only 3 innerpolygons. I removed the last
> innerpolygon (which was the biggest), and it appears that two little holes
> show up in GE (inner.png).

I generated lots of kml files with different innerpolygons.  If you 
remove any single innerpolygon from the file that has 3 (and doesn't 
work), then the file with 2 innerpolygons displays correctly.  I also 
made a file that had 35 of the 38 innerpolygons and that file displayed 
correctly as well.

> 
> What this concludes, is that GE is probably renderring correctly, and so is
> FWTools and TatukGIS. The problem probably lies in the KML generator, not
> outputting the correct inner polygons.

No, see above.

Unfortunately I still don't understand the problem well enough to be 
able to avoid it and generate good kml files.

Bryan

> 
> -Lennox
> 
> 
> On 4/8/07, Bryan Keith <bryan at geomega.com> wrote:
>> Lennox,
>>
>> Here's (attached) the simplest kml that I've been able to make that
>> doesn't work.  Any ideas?
>>
>> Bryan
>>
>> Bryan Keith wrote:
>>> Lennox,
>>>
>>> I'm attaching the polygon as a shapefile.  I'm not ccing the list since
>>> the list doesn't like the attachment.  I can also send you the kml, but
>>> it's larger than the shapefile.
>>>
>>> The polygon does have holes, but I also have other large complicated
>>> polygons with holes that do display correctly.
>>>
>>> Bryan
>>>
>>> Lennox Antoine wrote:
>>>> Can you supply one of the problematic polygon coordlist? I haven't run
>> into
>>>> any problems with complex polygons (without holes), so I don't know
>> what
>>>> could be the problem off hand without trying it.
>>>>
>>>> -Lennox
>>>>
>>>> On 4/8/07, Bryan Keith <bryan at geomega.com> wrote:
>>>>> Lennox,
>>>>>
>>>>> I got your suggestion to work for polygons that weren't giving me
>>>>> problems, but it did not change anything for the problematic polygons.
>>>>>
>>>>> Bryan
>>>>>
>>>>> Lennox Antoine wrote:
>>>>>> You are probably experiencing a tesselation problem. Here is a
>> polygon
>>>>>> template I normally use for filling complex polygons in GE. Note the
>>>>>> tesselation attribute, and how to use it.
>>>>>>
>>>>>> <Polygon>
>>>>>>   <extrude>0</extrude>
>>>>>>   <altitudeMode>clampToGround</altitudeMode>
>>>>>>   <tessellate>1</tessellate>
>>>>>>   <outerBoundaryIs>
>>>>>>      <LinearRing><coordinates></coordinates></LinearRing>
>>>>>>   </outerBoundaryIs>
>>>>>> </Polygon>
>>>>>>
>>>>>> <Style>
>>>>>>   <LineStyle>
>>>>>>     <color></color>
>>>>>>     <width></width>
>>>>>>   </LineStyle>
>>>>>>   <PolyStyle>
>>>>>>     <fill>1</fill>
>>>>>>     <color></color>
>>>>>>   </PolyStyle>
>>>>>> </Style>
>>>>>>
>>>>>> -Lennox
>>>>>>
>>>>>> On 4/8/07, Bryan Keith <bryan at geomega.com> wrote:
>>>>>>> Hello,
>>>>>>>
>>>>>>> I have a shapefile with a single record, a polygon shape.  I tried
>>>>>>> attaching the shapefile to this e-mail, but the server didn't like
>> it.
>>>>>>> I'll gladly e-mail the shapefile to anyone who's willing to look
>> into
>>>>>>> this.  It's ~722KB.  I can convert the shapefile to kml like this:
>>>>>>>
>>>>>>> ogr2ogr -f kml testblm_py.kml testblm_py.shp
>>>>>>>
>>>>>>> When I look at the kml in Google Earth, it looks fine.  The outline
>> of
>>>>>>> the shapefile shows up as a red line which, I guess, is the default
>> for
>>>>>>> ogr2ogr kml output.  However, I want to see filled polygons so I
>>>>> replace
>>>>>>> part of the "style" line in the kml like this:
>>>>>>>
>>>>>>> cat testblm_py.kml | sed
>> "s/<fill>0<\/fill>/<color>ff37d9f0<\/color>/"
>>>>>>> testblmfill_py.kml
>>>>>>>
>>>>>>> The shaded area does not show up correctly in Google Earth.  It
>> shows
>>>>> up
>>>>>>> as lots of vertical striped areas within the polygon.
>>>>>>>
>>>>>>> My actual workflow is a fair bit different from what I've described
>>>>>>> here, but I've tried to boil the problem down to a simple
>> example.  I
>>>>>>> realize, however, that this polygon is not simple.  I'm processing
>> over
>>>>>>> 10000 land ownership polygons in Utah, and I'm only having a problem
>>>>>>> with a few of the big, complicated polygons.
>>>>>>>
>>>>>>> I'm wondering if it might be a problem with the line length in the
>> kml,
>>>>>>> but I'm not sure.  I'm still doing some testing.  Any ideas are
>>>>>>> appreciated.
>>>>>>>
>>>>>>> Bryan
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> FWTools mailing list
>>>>>>> FWTools at lists.maptools.org
>>>>>>> http://lists.maptools.org/mailman/listinfo/fwtools
>>>>>>> http://fwtools.maptools.org/
>>>>>>>
>>
> 


More information about the FWTools mailing list