Hi all, I cannot follow the explanation of David regarding the endpoints but the following was my approach.
I didin't find a GRASS-only-way extracting the endpoints of a network graph (or part of it), but with PostGIS it worked. I thought of a geometry of a network graph, that is only made of edges and nodes. When you intersect all of these points with each other and take only those whose intersection count is 1 you have the endpoints of a network graph. The GRASS part: 1. check for double *line* geometries resulting from v.net.iso and clean them ("v.clean tool=rmdupl") 2. extract the nodes of the network graph with "v.to.points -n" (do not clean double geometries here!) 3. export nodes with v.out.ogr to PostGIS PostGIS: ---- SQL CREATE TABLE endpoints_of_network_graph AS (SELECT count(*), st_collect(a.wkb_geometry) FROM nodes a, nodes b WHERE st_intersects(a.wkb_geometry, b.wkb_geometry) GROUP BY a.wkb_geometry HAVING count(*) = 1); --- end of SQL Is it possible to translate the PostGIS-part into "GRASSish"? I haven't found any function that counts intersections in GRASS. regards, Johannes David Mahoney schrieb: > On Sat, 2010-04-10 at 08:16 +1000, Richard Chirgwin wrote: > >> David, >> >> I'd just like to confirm the process ... >> >> 1. Obtain points you wish to use as the service area edge nodes (I will >> call this vector "Limit"). >> 2. Run v.delaunay to create a vector that includes the outline >> (map=Delaunay). >> 3. Run v.net to connect Limit to Delaunay (map=Network) >> 4. Run v.net.salesman on Network to create the final service area map. >> >> This seemed to work fine for me in Spearfish. >> >> One question - I created the "point set" manually. But if have a network >> of lines, what's the best way to create a point vector from the line ends? >> >> > > As I recall, I parsed the output of v.build using the dump option, and > passed that into v.extract. > > There are probably a bunch of edge cases where this approach fails > though. The one that comes to mind is the case where there is a section > of a service area that is strongly convex that protrudes into another > service area. > > David > > _______________________________________________ grass-user mailing list grass-user@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/grass-user