On 05/12/08 12:27, Peter Löwe wrote:
[...]
is there an easy way to derive the centre of a cloud of points ?

I am aware that the set of vector points ("cloud of points") could be
used to stake out a polygon/boundary and use v.centroid etc etc to
derive in turn its' centroid, but I am hoping for an easier solution
.. ?

This issue stems from working with v.to.db: currently it is not
possible to upload xy coordinates for "multiploygons" into a
database, i.e: Within a vector layer, there might be several
boundaries which all share the same category value. If the
"gravitational centre/ super-centroid" for these boundaries could be
(conveniently) calculated, the v.to.db issue could be taken care of.

Why not use v.dissolve on these polygons and then get the centroids of the result ?

This option fails if the polygons don't have common borders. An example for this would be multiple polygons describing spatial exclaves of a territory/county/soil type, etc.
Another (very wild) guess: what about the mean of the coordinates of the individual polygons' centroids ?

That would be great if it could be automated.

Using a "real" DB-backend, it should be as easy as (assuming that when you say boundaries, you mean areas, each of which has a centroid):

- v.to.db type=centroid option=coor
- SELECT cat, avg(X), avg(Y) from TABLE group by cat


If you have boundaries with categories, but no centroids, I imagine that v.centroids + v.distance with upload=cat should do the trick to transfer boundary cats to their centroids.

Moritz
_______________________________________________
grass-user mailing list
grass-user@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-user

Reply via email to