Simon, you could do this as a PostGIS query. To take the polygon case, if you loaded the data into a table in PostGIS called parcel (say), you could run a query something like the following (not guaranteeing this is exactly correct but something along these lines):
select a.id, b.id, ST_distance(a.geom, b.geom), ST_distance(ST_centroid(a.geom), ST_centroid(b.geom)), ST_azimuth(ST_centroid(a.geom), ST_centroid(b.geom)) from parcel a, parcel b This would give you ids, shortest distance, distance between centroids and angle between centroids. There are no doubt others here who can correct my SQL syntax :) ! There is a simple utility to load a shape file into PostGIS. Cheers, Peter. On Thu, Dec 3, 2009 at 3:49 PM, Simon Cropper (Botanicus Australia Pty Ltd) <scrop...@botanicusaustralia.com.au> wrote: > Hi Everyone, > > My name is Simon and I am an environmental consultant. I use a variety of > open source GIS systems and tools almost every day to analyse flora, fauna > and vegetation data. I am interested in OSGeo both from the standpoint (or > my underlying belief) that software and data should be free (you know how > the mantra goes) and my desire to contribute to a broader community effort > to develop appropriate software for users. I have been actively using > OpenJUMP, Kosmo, OpenEV, EveryDWG and Sextante. I have tinkered with Ilwis, > GRASS, Quantum (various versions) and a few others I have lost track of. I > am currently using GVSIG+Sextante, which I find very useful and easy to use. > I am an old user of ArcView 3.1+(numerous scripts/extensions). > > I have a common GIS problem but can not find any OSGeo project that has > provided a set of tools to combat it. I need to establish the distance+angle > between various geometries (points, lines, polygons) in same layer and in > different layers. A specific problem I currently have is finding the minimum > distance and angle between 200 odd polygons in the same layer. Each polygon > has a unique id and I want to get a table with UID_A, UID_B, > MINIMUM_DISTANCE, ANGLE. I know that ArcGIS and ArcView have this > functionality, and script exist for old versions of ArcView, but I am > looking for an Open Source alternative. > > Ideally such a tool would create the following data for each geometry > type... > > POINTS -- UID_A, UID_B, DISTANCE, ANGLE > LINES -- UID_A, UID_B, DISTANCE_AT_CLOSEST _POINT > POLYGON -- UID_A, UID_B, MIN_DISTANCE, MAX_DISTANCE, HAUSDORFF_DISTANCE, > CENTROID_DISTANCE, ANGLE_BETWEEN_CENTROIDS > > What I have found already... > > - I have noted that Sextante can create a matrix of distances between > points within the same layer. With rows and column representing the > complete > set of points being compared. > - I have also found QGIS has a fTools Plugin that allows you to > "Measure distances between two point layers, and output results as a) > Square > distance matrix, b) Linear distance matrix, or c) Summary of distances." > QGIS 2009. > - I suspect that GRASS would provide this functionality but can't get > that package to work on my system (even WinGRASS), so if you point me here > please also point me to a tutorial on getting the thing to work (this > system > is not intuitive; My problem has been in establishing a repository and > getting data into it for viewing, let alone analysis; it failed the age old > test that if you can't even get the thing running in half an hour, the > learning curve is going to be way too high to use in in normal business > activities; I have tried - yes following their instructions - several > times, > and spent several days reading manuals, wiki's,etc to no avail). > > BUT I can't find any tool that allows me to calculate the minimum distance > between polygons and indicate the direction of the polygon. > > Anyone out there know of such a tool? > > Note: I am using Windows XP Pro SP3 and store all my GIS data as > shapefiles. > -- > > Cheers Simon > > Simon Cropper > Botanicus Australia Pty Ltd > PO Box 160, Sunshine, Victoria 3020. > P: 9311 5822. M: 041 830 3437. > mailto: scrop...@botanicusaustralia.com.au<scrop...@botanicusaustralia.com.au> > web: www.botanicusaustralia.com.au <http://www.botanicusaustralia.com.au> > > _______________________________________________ > Discuss mailing list > Discuss@lists.osgeo.org > http://lists.osgeo.org/mailman/listinfo/discuss > > -- Peter Batty - President, Spatial Networking W: +1 303 339 0957 M: +1 720 346 3954 Blog: http://geothought.blogspot.com
_______________________________________________ Discuss mailing list Discuss@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/discuss