Opened 12 years ago

Closed 11 years ago

#2089 closed bug (invalid)

Buffer produces incorrect results with multipart vectors

Reported by: jaanvajakas Owned by: cfarmer
Priority: major: does not work as expected Milestone: Version 1.6.0
Component: Python plugins and bindings Version: Trunk
Keywords: Cc:
Must Fix for Release: No Platform: All
Platform Version: Awaiting user input: no

Description

To reproduce:

  1. create a new project in QGIS,
  2. add layer kirdem2.epg4326.shp using Layers -> Add vector layer...,
  3. Tools -> Geoprocessing tools -> Buffer(s), set buffer distance to -0.0003, choose output file, click OK

Expected result: an inner buffer of the polygons in platte carree distance (not real distance, as interpreting degrees as meters would be ambiguous)

Actual result: certainly not a buffer neither in platte carree distance nor in real geodetic distance nor any other projection. In some places, the buffer exceeds the original polygon border (see qgis_buffer_bug1.png); in some places, the buffer has "pixel artifacts" (qgis_buffer_bug1.png); some islands are missing altogether (qgis_buffer_bug2.png).

The input data kirdem2.epg4326.shp is part of the publicly available dataset '01.09.2009a. asustusüksus SHP' (zip - 13,65 MB, 6.11.2009 ) on http://www.maaamet.ee/index.php?lang_id=1&page_id=272&menu_id=0 (I cut a small part out and converted to EPSG:4326 using QGIS).

Attachments (3)

kirdem2.epsg4326.zip (151.8 KB) - added by jaanvajakas 12 years ago.
the input dataset
qgis_buffer_bug1.png (112.9 KB) - added by jaanvajakas 12 years ago.
qgis_buffer_bug2.png (119.6 KB) - added by jaanvajakas 12 years ago.

Download all attachments as: .zip

Change History (7)

Changed 12 years ago by jaanvajakas

Attachment: kirdem2.epsg4326.zip added

the input dataset

Changed 12 years ago by jaanvajakas

Attachment: qgis_buffer_bug1.png added

Changed 12 years ago by jaanvajakas

Attachment: qgis_buffer_bug2.png added

comment:1 Changed 12 years ago by borysiasty

Owner: changed from borysiasty to cfarmer

comment:2 Changed 12 years ago by lutra

Milestone: Version 1.4.0
Platform: WindowsAll
Priority: critical: causes crash or data corruptionmajor: does not work as expected
Summary: Buffer produces incorrect resultsBuffer produces incorrect results with multipart vectors
Version: 1.3.0HEAD

If you transform your vector from multipart to singleparts the buffer results ok.

This may be a simple workaround or it may be simply necessary, I'm not sure how buffer tools is supposed to work with multipart vectors.

Carson?

comment:3 Changed 11 years ago by lutra

Milestone: Version 1.5.0Version 1.6.0

awaiting Carson reply, I'll push this to 1.6 as in any case there is a workaround

comment:4 Changed 11 years ago by cfarmer

Resolution: invalid
Status: newclosed

Tested using r14367.

I am unable to reproduce this error. Looking at the areas described in this ticket, results appear to be as expected. I suspect this was a GEOS error, but appears to now have been fixed (GEOS version?). Please test and confirm if this now works.

I am going to close this as "invalid" because this is now a relatively old ticket, and appears to now be invalid, however, if it is still a problem, please reopen this ticket.

Carson

Note: See TracTickets for help on using tickets.