Hi Even,<br><br>  Thanks for the clarification. I&#39;ll try to file a ticket about the issue, have to learn how to do that anyway :-) It is not a serious issue of course, the most &quot;annoying&quot; thing about it, from my experience, is that when you use Qgis (which uses ogr) to &quot;zoom to layer extent&quot; on a modified layer you might end up with a view, where your data is a tiny (or invisible) blob in one of the corners.<br>
<br>  Best regards,<br>  Simon<br><br><br><div class="gmail_quote">On Fri, Apr 8, 2011 at 11:40 AM, Even Rouault <span dir="ltr">&lt;<a href="mailto:even.rouault@mines-paris.org">even.rouault@mines-paris.org</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">Selon Simon Lyngby Kokkendorff &lt;<a href="mailto:silyko@gmail.com">silyko@gmail.com</a>&gt;:<br>

<br>
Yes indeed, you&#39;ve precisely described the behaviour of the code of the OGR<br>
shapefile driver. The shapefile format stores the extent of the shapes stored in<br>
the shapefile.<br>
When you append a new shape in a shapefile, the shapefile driver will extend the<br>
layer extent with the shape bounding box. This works well and efficiently when<br>
creating a shapefile from scratch.<br>
The same algorithm is also used when updating an existing shapefile, and it&#39;s in<br>
that case you can get the weird behaviour you see if you move a shape that was<br>
touching the layer extent. In that case the shapefile driver should invalidate<br>
the layer extent and recompute it entirely by iterating over all the shapes,<br>
which could be costly if the shapefile is big. But the current situation is not<br>
very satisfactory. And a an optimization, the invalidation could be only done if<br>
the bounding box of the old shape touches the layer extent.<br>
The deletion of a feature could also lead to the same behaviour.<br>
<br>
Could you file a ticket about this in GDAL trac ?<br>
<div><div></div><div class="h5"><br>
&gt; Hi List,<br>
&gt;<br>
&gt;   I have observed a puzzling behaviour of the reported extent of an ogr<br>
&gt; layer after geometries of features have been modified, with the file opened<br>
&gt; in update mode. I use gdal 1.7 via the pyhton bindings, open a dataset with<br>
&gt; ogr.Open(fname,update=True), then loop through layers and features and<br>
&gt; modify geometries like:<br>
&gt; geom=feature.GetGeometryRef(), new_geom=some_modification(geom),<br>
&gt; feature.SetGeometry(new_geom), layer.SetFeature(feature). However, ogr (and<br>
&gt; Qgis, which uses ogr for that I suppose) reports the new layer extent as,<br>
&gt; the &quot;minimal bounding box&quot; of the new and old extents. So somehow, the<br>
&gt; extent before geometry modification is still stored somewhere in the<br>
&gt; dataset. The same observations also hold for a dataset which is modified by<br>
&gt; hand using the editing tools in Qgis! Consider the following ogrinfo output<br>
&gt; from a file with one layer, containing one point:<br>
&gt; INFO: Open of `qgis_test.shp&#39;<br>
&gt;       using driver `ESRI Shapefile&#39; successful.<br>
&gt;<br>
&gt; Layer name: qgis_test<br>
&gt; Geometry: Point<br>
&gt; Feature Count: 1<br>
&gt; Extent: (0.077586, 0.577586) - (10.670690, 31.805172)<br>
&gt; Layer SRS WKT:<br>
&gt; GEOGCS[&quot;GCS_WGS_1984&quot;,<br>
&gt;     DATUM[&quot;WGS_1984&quot;,<br>
&gt;         SPHEROID[&quot;WGS_1984&quot;,6378137,298.257223563]],<br>
&gt;     PRIMEM[&quot;Greenwich&quot;,0],<br>
&gt;     UNIT[&quot;Degree&quot;,0.017453292519943295]]<br>
&gt; test: String (80.0)<br>
&gt; OGRFeature(qgis_test):0<br>
&gt;   test (String) = nothing<br>
&gt;   POINT <a href="tel:%2810.6706896551" value="+16706896551">(10.6706896551</a>72414 31.805172413793112)<br>
&gt;<br>
&gt; Even though the point clearly lies at (10.67,31.80) the previous position is<br>
&gt; still included in the extent. Is this a bug or is there some reasoning<br>
&gt; behind this behaviour?<br>
&gt;<br>
&gt; Best Regards,<br>
&gt; Simon. National Survey and Cadastre of Denmark<br>
&gt;<br>
<br>
<br>
</div></div></blockquote></div><br>