[postgis-users] How to identify start node and end node in shortest_path_astar when the user click 2 points on the map?

Anton A. Patrushev anton at orkney.co.jp
Thu Sep 28 01:04:17 PDT 2006


Hi Nguyen

You can use Distance function of PostGIS.
Here is an example:

SELECT Distance(geom_column, GeomFromText('POINT(x y)', 
projection_code)) AS dist
              FROM table_name
              ORDER BY dist LIMIT 1";

where
geom_column - the name of the column which contains geometry;
'x y' - coordinates of your point divided by space;
projection_code - the code of projection you're using;
table_name - the name of the table.

It will search in entire table, so it will be nice to apply a filter to 
the search, but anyway you'll have an idea.

Good luck!

Anton A. Patrushev
Software Engineer
Orkney, Inc.
6F JA-Kyosai Yokohama Building,
1-2 Kaigandori, Naka, Yokohama 231-0002 JAPAN
Tel 81-45-228-3320 Fax 81-45-228-3321
www.orkney.co.jp

> Hi everybody,
>
> I'm  doing a project which needs to find a shortest path between two 
> user's clicked points. I already  installed successfully  pgRouting.
>
> I use this function:
> SELECT * from shortest_path_astar('SELECT gid as id, source, target, 
> length as cost, x1, y1, x2, y2 FROM roads', 3, 7, false, false);
>
> But the problem is that I can't identify exactly the start node and 
> end node to find path (How to identify node 3 and node 7?). I already 
> have the start point and end point of the user. But they don't select 
> correctly the points on my roads. So I can't draw the path correctly 
> on the map (The path begins with their start clicked point and ends 
> with their end clicked point)
>
> Anybody has experiences with this? Please help me!
>
> Thanks so much.
> _______________________________________________
> postgis-users mailing list
> postgis-users at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-users
>




More information about the postgis-users mailing list