Thanks very much, Regina, Paul, and Ben for the responses. I don't think my hacking skills are quite up to following Paul's suggestion, but I can try to find an equal area projection for the Pacific Ocean. It seems like that would work. I also rather like the idea of translating the points--if I did that, would it then be easy to just translate the entire hull back into position?
Thanks, Sarah _________________________________ Sarah K Berke Postdoctoral Scholar Department of the Geophysical Sciences University of Chicago 5734 S. Ellis Ave Chicago, IL 60637 > ------------------------------ > > Message: 2 > Date: Wed, 7 Sep 2011 01:18:51 -0400 > From: "Paragon Corporation" <[email protected]> > Subject: Re: [postgis-users] Problem with convex hulls that cross the > dateline > To: "'PostGIS Users Discussion'" > <[email protected]> > Message-ID: <F8675FD4BB254CD09D2359CF11685DEA@D> > Content-Type: text/plain; charset="us-ascii" > > Sarah, > > I'm having trouble making convex hulls that cross the international > dateline. Imagine 4 points making a square with the international dateline > running down the middle--I would like the convex hull to be that square, > but > instead I get a giant rectangle that goes across the entire planet. I've > done some reading, and it sounds like GEOS generally has a hard time > dealing > with the dateline--is that accurate? > Yes GEOS only deals with planar coordinates. Geography is the only > geodetic aware type and there is no ConvexHull function for it. > > > Does anyone know of a way to get around this? I was thinking that it > might work if I use an SRID that is just like 4326 but with a central > meridian of 180, does that sound like a good plan? > No. You should use a planar projection of some sort. 4326 squashed on a > map is no good. Paul Ramsey might have some thoughts on the matter. > > > I'm pretty new to postGIS and I'm not sure how to either find such an > SRID or how to define it--I've been trying to find an explanation of SRID > syntax and so far coming up empty. If anyone has advice for solving this > problem, or for places where I can learn more about defining custom SRIDs, > I'd be really grateful! > > You might want to check out http://spatialreference.org > > > Here's an example--if you make this table and then look at it in QGIS > (or whatever) along with a world map, you'll see a big rectangle spanning > the entire map. On a map with > > central meridian of zero, I'd want to see half the polygon on the left > side of the map and the other half on the right side. > > > CREATE TABLE example AS > > SELECT ST_ConvexHull( > > ST_Collect(ST_GeomFromText('MULTIPOINT(175 5, 175 30, -175 5, -175 > 30)') ))::geography(Polygon, 4326) ; > > My guess is you'll have to cut your area into pieces. Still then its not > that pretty when you try to rejoin. > > Sorry couldn't be more help, > Regina > http://www.postgis.us > > -------------- next part -------------- > An HTML attachment was scrubbed... > URL: < > http://postgis.refractions.net/pipermail/postgis-users/attachments/20110907/dca69b0a/attachment-0001.html > > > > ------------------------------ > > Message: 3 > Date: Tue, 6 Sep 2011 22:21:48 -0700 > From: Paul Ramsey <[email protected]> > Subject: Re: [postgis-users] Problem with convex hulls that cross the > dateline > To: PostGIS Users Discussion <[email protected]> > Message-ID: > <CACowWR0YVqT5_wasbLoscmCnqNFAqVT2ioA=yjq6uv_yx9c...@mail.gmail.com > > > Content-Type: text/plain; charset=ISO-8859-1 > > On Tue, Sep 6, 2011 at 10:18 PM, Paragon Corporation <[email protected]> wrote: > > ?Sarah, > > ?> ?I'm having trouble making convex hulls that cross the international > > dateline. Imagine 4 points making a square with the international > dateline > > running down the middle--I would like the convex hull to be that square, > but > > instead I get a giant rectangle that goes across the entire planet. I've > > done some reading, and it sounds like GEOS generally has a hard time > dealing > > with the dateline--is that accurate? > > Yes GEOS? only deals with planar coordinates.? Geography is the only > > geodetic aware type and there is no ConvexHull function for it. > > Although you could hack one up easily enough by copying the ideas in > ST_Buffer(geography) > > P > > > ------------------------------ > > Message: 4 > Date: Wed, 7 Sep 2011 13:43:52 +0800 > From: Ben Madin <[email protected]> > Subject: Re: [postgis-users] Problem with convex hulls that cross the > dateline > To: PostGIS Users Discussion <[email protected]> > Message-ID: > <[email protected]> > Content-Type: text/plain; charset=us-ascii > > Sarah, > > I'm sure that there are good reasons not to do this, but could you > translate your points left or right, create your convex hull then translate > the polygon back...? > > Otherwise you could project it onto a custom projection that covers your > area of interest? As an example look for an equal area proj string (I know > there is one for Australia GDA94 Albers - > http://www.spatialreference.org/ref/epsg/3577) and shift the lat and lon > parameters... > > cheers > > Ben > > > On 07/09/2011, at 1:13 AM, Sarah Berke wrote: > > > Hello, > > > > I'm having trouble making convex hulls that cross the international > dateline. Imagine 4 points making a square with the international dateline > running down the middle--I would like the convex hull to be that square, but > instead I get a giant rectangle that goes across the entire planet. I've > done some reading, and it sounds like GEOS generally has a hard time dealing > with the dateline--is that accurate? Does anyone know of a way to get around > this? I was thinking that it might work if I use an SRID that is just like > 4326 but with a central meridian of 180, does that sound like a good plan? > I'm pretty new to postGIS and I'm not sure how to either find such an SRID > or how to define it--I've been trying to find an explanation of SRID syntax > and so far coming up empty. If anyone has advice for solving this problem, > or for places where I can learn more about defining custom SRIDs, I'd be > really grateful! > > > > Here's an example--if you make this table and then look at it in QGIS (or > whatever) along with a world map, you'll see a big rectangle spanning the > entire map. On a map with central meridian of zero, I'd want to see half the > polygon on the left side of the map and the other half on the right side. > > > > CREATE TABLE example AS > > SELECT ST_ConvexHull( > > ST_Collect(ST_GeomFromText('MULTIPOINT(175 5, 175 30, -175 5, -175 > 30)') ))::geography(Polygon, 4326) ; > > > > > > Thanks very much, > > Sarah > > > > _________________________________ > > Sarah K Berke > > Postdoctoral Scholar > > Department of the Geophysical Sciences > > University of Chicago > > 5734 S. Ellis Ave > > Chicago, IL 60637 > > _______________________________________________ > > postgis-users mailing list > > [email protected] > > http://postgis.refractions.net/mailman/listinfo/postgis-users > > > > ------------------------------ > >
_______________________________________________ postgis-users mailing list [email protected] http://postgis.refractions.net/mailman/listinfo/postgis-users
