#2492: v.generalize: incorrect handling of wrap at 180 meridian
--------------------------+-------------------------------------------------
Reporter: jkaplan | Owner: grass-dev@…
Type: defect | Status: new
Priority: normal | Milestone:
Component: Vector | Version: svn-trunk
Keywords: v.generalize | Platform: All
Cpu: OSX/Intel |
--------------------------+-------------------------------------------------
I am running GRASS 7.1.svn on Mac OS X.
{{{
GRASS 7.1.svn (global_lonlat):~ > g.version -g
version=7.1.svn
date=2014
revision=62762
build_date=2014-11-17
build_platform=x86_64-apple-darwin10.8.0
}}}
I am having a problem with the behavior of v.generalize when attempting to
generalize a vector feature - lines or polygons it does not seem to matter
- that crosses the 180 meridian, using a location that is EPSG:4326 with
global extents.
The problem is probably best illustrated with a picture, which I have
attached to this ticket, but can also be viewed here:
http://arve.unil.ch/pub/GRASS_wrap_problem.png
In the picture two line vector features are displayed. The black-lined
feature is the original vector line feature (test1). The red-lined feature
is produced from test1 using the following command:
{{{
v.generalize input=test1 output=test2 method=sliding_averaging
look_ahead=5 slide=1 threshold=1
}}}
It appears that v.generalize, when smoothing between vertices that are
very close to the 180 meridian, results in the incorrect identification of
the “next" point, hence the long horizontal lines connecting points “the
wrong way around” the earth. The behavior is the same when using any of
the generalization or smoothing tools.
I have tested this with a simpler vector containing points farther away
from the 180 meridian and it doesn’t appear to show the same behavior.
I would very much appreciate any help anyone could give me to solve this
problem.
Thank you in advance!
Best regards,
Jed Kaplan
--
If you would like to download the original lines file and try my procedure
yourself, I have also attached a test vector file to this ticket. It can
also be downloaded here:
http://arve.unil.ch/pub/GRASS_wrap_problem_samplevector.gmt
Assuming you have OGR support for GMT in your version of GRASS, you can
import the vector using this command:
{{{
v.in.ogr dsn=GRASS_wrap_problem_samplevector.gmt output=test1
}}}
--
Ticket URL: <http://trac.osgeo.org/grass/ticket/2492>
GRASS GIS <http://grass.osgeo.org>