[prev in list] [next in list] [prev in thread] [next in thread]
List: r-sig-geo
Subject: Re: [R-sig-Geo] gBuffer solution to invalid objects problem fails
From: Kenny Bell <kmb56 () berkeley ! edu>
Date: 2016-05-19 19:55:45
Message-ID: CALOjXYRxGvAzsgCw7+i+0N-7q1i3CQpbjh82eKY-v_iJNOqg5g () mail ! gmail ! com
[Download RAW message or body]
Great, this works:
new_poly <- sp::spTransform(new_poly, "+proj=tmerc +lat_0=0 +lon_0=173
+k=0.9996 +x_0=1600000 +y_0=10000000 +ellps=GRS80 +units=m +no_defs")
grid_poly <- sp::spTransform(grid_poly, "+proj=tmerc +lat_0=0 +lon_0=173
+k=0.9996 +x_0=1600000 +y_0=10000000 +ellps=GRS80 +units=m +no_defs")
new_poly1 <- gBuffer(new_poly, width = 0)
plot(new_poly1)
# Works
gIntersection(grid_poly, new_poly1,
byid = c(TRUE, FALSE),
id = as.character(grid_poly@data[,1]),
# if there are coinciding lines, gIntersection
# returns a cross.
drop_lower_td = TRUE,
checkValidity = TRUE)
Thanks so much Roger!
On Thu, May 19, 2016 at 12:02 PM, Roger Bivand <Roger.Bivand@nhh.no> wrote:
> There is an example in the message, but Kenny is ignoring the message from
> gBuffer:
>
> Warning message:
> In gBuffer(new_poly, width = 0) :
> Spatial object is not projected; GEOS expects planar coordinates
>
> and the differences in geographical coordinates are small. The warning is
> given for a reason. Intersection is projection-agnostic, but buffer is not.
> I don't know whether this is the reason.
>
> Roger
>
>
>
> On Thu, 19 May 2016, Roman Luštrik wrote:
>
> Hi Kenny,
> >
> > can you provide a small, reproducible example which replicates this
> > behavior?
> >
> > Cheers,
> > Roman
> >
> > On Wed, May 18, 2016 at 7:08 PM, Kenny Bell <kmb56@berkeley.edu> wrote:
> >
> > Hi all,
> > >
> > > I have been getting the below error a few times. I have seen in several
> > > places that a zero-width gBuffer call will fix the topology problem.
> > > However, in this case, I find that the call to gBuffer generates a 4
> > > point
> > > horizontal line, not solving the problem. Is there another solution?
> > > Thanks
> > > for any help!
> > >
> > > My code:
> > >
> > > library(sp)
> > > library(rgeos)
> > > load("r-sig-geo.RData")
> > >
> > > gIntersection(grid_poly, new_poly,
> > > byid = c(TRUE, FALSE),
> > > id = as.character(grid_poly@data[,1]),
> > > # if there are coinciding lines, gIntersection
> > > # returns a cross.
> > > drop_lower_td = TRUE,
> > > checkValidity = TRUE)
> > > # new_poly is invalid
> > > # Error in rgeos::gIntersection(grid_poly, new_poly, byid = c(TRUE,
> > > FALSE),
> > > >
> > > # Invalid objects found
> > > # In addition: Warning message:
> > > # In RGEOSUnaryPredFunc(spgeom, byid,
> > > "rgeos_isvalid") :
> > > # Self-intersection at or near point
> > > 172.23206269997971 -42.13157792003453
> > >
> > > # Try using gBuffer as suggested here:
> > > #
> > >
> > >
> > > http://gis.stackexchange.com/questions/163445/r-solution-for-topologyexception-input-geom-1-is-invalid-self-intersection-er
> > >
> > > new_poly1 <- gBuffer(new_poly, width = 0)
> > > plot(new_poly1)
> > > # Generates a line (i.e. kills the polygon)
> > >
> > > r-sig-geo.RData
> > > <https://www.dropbox.com/s/9ivpcmboodpu6zd/r-sig-geo.RData?dl=0>
> > >
> > >
> > > [[alternative HTML version deleted]]
> > >
> > > _______________________________________________
> > > R-sig-Geo mailing list
> > > R-sig-Geo@r-project.org
> > > https://stat.ethz.ch/mailman/listinfo/r-sig-geo
> > >
> >
> >
> >
> >
> > --
> > In God we trust, all others bring data.
> >
> > [[alternative HTML version deleted]]
> >
> > _______________________________________________
> > R-sig-Geo mailing list
> > R-sig-Geo@r-project.org
> > https://stat.ethz.ch/mailman/listinfo/r-sig-geo
> >
>
> --
> Roger Bivand
> Department of Economics, Norwegian School of Economics,
> Helleveien 30, N-5045 Bergen, Norway.
> voice: +47 55 95 93 55; fax +47 55 95 91 00
> e-mail: Roger.Bivand@nhh.no
> http://orcid.org/0000-0003-2392-6140
> https://scholar.google.no/citations?user=AWeghB0AAAAJ&hl=en
> http://depsy.org/person/434412
--
Kendon Bell
Email: kmb56@berkeley.edu
Phone: (510) 612-3375
Ph.D. Candidate
Department of Agricultural & Resource Economics
University of California, Berkeley
[[alternative HTML version deleted]]
_______________________________________________
R-sig-Geo mailing list
R-sig-Geo@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-sig-geo
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic