Skip to content
Back to formatted view

Raw Message

Message-ID: <AA4890F1E87BE6489BFAEA0FA5792913094180F2@MBX11.d.ethz.ch>
Date: 2012-11-11T10:13:23Z
From: Hofer  Christoph Jean-Charles
Subject: method intersect for non-overlapping polygons

Dear List

The following simple example works fine

require( sp )
require( gpclib )

t.c1 <- matrix( c(1,5,5,1,1,1,1,5,5,1), ncol = 2)
t.c2 <- t.c1
t.c2[,1] <- t.c1[,1] + 10
t.c2[,2] <- t.c1[,2] +  10
t.p1 <- Polygon( t.c1 )
t.p2 <- Polygon( t.c2 )
t.p1 <- Polygons( srl = list( t.p1 ) , ID = "A")
t.p2 <- Polygons( srl = list( t.p2 ) , ID = "B")

t.sp1 <- SpatialPolygons( list( t.p1 ) )
t.sp2 <- SpatialPolygons( list( t.p2 ) )

plot( SpatialPolygons(list(t.p1,t.p2)) )


g1 <- as( t.sp1 at polygons[[1]]@Polygons[[1]]@coords, "gpc.poly")
g2 <- as(  t.sp2 at polygons[[1]]@Polygons[[1]]@coords, "gpc.poly")

intersect( g1, g2 )

The result is 0.

However, if I use "rgeos" instead of "gpclib" I get the following error message:

Error in as(spres, "gpc.poly") :
 no method or default for coercing "NULL" to "gpc.poly"

If the polygons t.p1 and t.p2  overlap both packages provide the same and right result.


Is this behavior of the intersect method in rgeos a bug or a desired property?


regeos version 0.2-6
gpclib versoin 1.5-1

sessionInfo()

R version 2.15.2 (2012-10-26)
Platform: i386-apple-darwin9.8.0/i386 (32-bit)

locale:
[1] C

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base

other attached packages:
[1] gpclib_1.5-1 rgeos_0.2-6  plyr_1.7.1   stringr_0.6  sp_0.9-99

loaded via a namespace (and not attached):
[1] compiler_2.15.2 grid_2.15.2     lattice_0.20-6  tools_2.15.2



Best regards


Christoph


..............................................................................................................
Dr. Christoph Hofer
Projektleiter F&E
Institut f?r Datenanalyse und Prozessdesign (IDP)
ZHAW Z?rcher Hochschule f?r Angewandte Wissenschaften
Rosenstrasse 3, Postfach
CH-8401 Winterthur
T: +41 (0)58 934 69 40
F: +41 (0)58 935 69 40
E: christoph.hofer at zhaw.ch
W: http://www.idp.zhaw.ch
..............................................................................................................