Hi Robi,<div><br></div><div>I am not familiar with A* heuristic logic,</div><div>but if you want to build pgRouting Windows binary,</div><div>see following source and docs.</div><div><br></div><div><a href="https://github.com/sanak/pgrouting">https://github.com/sanak/pgrouting</a>
</div><div><div><a href="https://github.com/sanak/pgrouting/blob/mingw/BUILD.mingw">https://github.com/sanak/pgrouting/blob/mingw/BUILD.mingw</a></div><div><a href="https://github.com/sanak/pgrouting/blob/mingw/BUILD.mingw64">https://github.com/sanak/pgrouting/blob/mingw/BUILD.mingw64</a></div>
<div><br></div><div>And if you want to skip building dependency libraries,</div><div>use following build environment.</div><div><br></div><div><a href="http://sdrv.ms/NFCgr2">http://sdrv.ms/NFCgr2</a></div><div> +- Build.zip     ... for 32bit work folder. (extract to "C:\")</div>
<div> +- MinGW.zip ... for 32bit build environment. (extract to "C:\" and run "C:\MinGW\msys\1.0\msys.bat")</div><div> +- Build64.zip ... for 64bit work folder. (extract to "C:\")</div><div> +- ming64.zip ... for 64bit build environment. (based on PostGIS one. extract to "C:\" and run "C:\ming64\msys\msys.bat")</div>
<div><br></div><div>Regards,</div><br><div class="gmail_quote">2012/7/10 Stephen Woodbridge <span dir="ltr"><<a href="mailto:woodbri@swoodbridge.com" target="_blank">woodbri@swoodbridge.com</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div>On 7/9/2012 9:24 PM, Haruhi Suzumiya wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Good morning,<br>
<br>
Dear mr/mrs, :)<br>
<br>
I'm robi, my username is haruhi. I'm newbie in pgrouting.<br>
I want to try use euclidean distance heuristic in A* in pgrouting, may u<br>
give me tutorial how to change the heuristic and recompile it? :)<br>
Fyi, I'm use windows 7, postgre 1.8.4, pgRouting-1.02_pg-8.3.3 :)<br>
</blockquote>
<br></div></div>
Hi Robi,<br>
<br>
The pgRouting package already supports A* and by definition it uses a euclidean distance heuristic. See the function shortest_path_astar(), there also may be some wrapper function with names like astar_sp_*<br>
<br>
The wrapper function are just higher level convenience function.<br>
<br>
There are a couple of tutorials around that probably have good examples of how to use the functions.<br>
<br>
If you want to change the heuristic, then you will need to look at the Boost Graph code that is used to implement it. We don't have any documentation on the implementation, but there are a lot of docs on Boost Graph and you can get help from that list.<br>


<br>
What I would do is write a wrapper for the Boost Graph code and reads a text file to input the graph, sets up the structures to pass the data to algorithm to run it and then prints out the results. You can do all this outside of the database which greatly simplifies debugging your changes. When you have it working the way you want, then it should be a clean drop in replacement for the existing code or you can clone the existing code and rename it for the new algorithm.<br>


<br>
-Steve W<br>
______________________________<u></u>_________________<br>
pgrouting-dev mailing list<br>
<a href="mailto:pgrouting-dev@lists.osgeo.org" target="_blank">pgrouting-dev@lists.osgeo.org</a><br>
<a href="http://lists.osgeo.org/mailman/listinfo/pgrouting-dev" target="_blank">http://lists.osgeo.org/<u></u>mailman/listinfo/pgrouting-dev</a><br>
</blockquote></div><br></div>