<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Ik ben blij dat er iemand is die het wel echt weet; na het posten van dit bericht begon ik te twijfelen aan mijn formulering en ben sindsdien aan het graven in geheugen en bronnen, maar mijn intellectuele vermogens lijken een bermudadriehoek te hebben waar het gaat om projecties en coördinaatsystemen...<div>Sorry voor de verwarring! </div><div><br class="webkit-block-placeholder"></div><div>Martijn</div><div><br><div><div>Op 22-okt-2007, om 22:03 heeft Milo van der Linden het volgende geschreven:</div><br class="Apple-interchange-newline"><blockquote type="cite"> Martijn van Exel schreef: <blockquote cite="mid:883BCBCC-68EC-4E16-8303-39EDEC87D8F7@gmail.com" type="cite"> <pre wrap="">Voor afstandberekening in het RD-stelsel kun je volgens mij inderdaad
veilig pythagoras gebruiken, omdat het een km2-grid is met vaste
afstand tussen de gridlijnen en rechte hoeken. Maar als je
cartesische coördinaten hebt (zoals Gert heeft) zou je die eerst
moeten omrekenen naar RD en dan krijg je ook met dergelijke
trigonometrie te maken.
</pre> </blockquote> Dit is niet helemaal juist, cartesisch betekent namelijk "plat". Gert zijn coordinaten kunnen dus ook gebruik maken van dezelfde stelling van pythagoras. <br> <br> Feitelijk zijn er 2 soorten coordinaatstelsels op GIS gebied: <br> <br> 1) Geografische coordinaat systemen <br> en <br> 2) "geprojecteerde" coordinaat systemen. <br> <br> In een coordinaat systeem uit 1) geldt dat trigonometrie of "great circle" berekeningen dienen te worden toegepast.<br> Bij 2) kun je altijd volstaan met de stelling van pythagoras, maar afhankelijk van de projectie zullen er afwijkingen optreden in afstand of in oppervlakte. Er zijn namelijk zogenaamde "Equal Area" (Oppervlakte getrouw) en "Equidistant" (Afstands getrouw) projecties en mengvormen van deze twee. Vliegroute kaarten zijn b.v. equidistant omdat afstand hier belangrijker is dan oppervlakte. Thematische vlakken kaarten zijn vaak oppervlakte getrouw. <br> <br> Tevens is het gebied waarvoor de projectie specifiek is ingericht essentieel. In Nederland snijdt de projectie bijvoorbeeld door de aarde in een specifieke straal rondom Amersfoort. Dit betekent dat je vlak bij Amersfoort een negatieve afwijking hebt, (in Zeeland en Groningen een positieve) van enkele centimeters. Op de snijring is de afwijking het kleinste.<br> <br> Indien de afstandsberekening bedoeld is voor b.v. routeplanning zou ik daarom adviseren om de extra moeite te nemen om de "great circle" berekening door te voeren. Deze is dan automatische bij benadering gelijk aan de GPS afstand.<br> <br> (Pfff, 't zat diep weg in de uithoeken van mijn RAM, maar als HTS Geo-Informaticus/Geodeet moest ik hier even op reageren)<br> <br> <blockquote cite="mid:883BCBCC-68EC-4E16-8303-39EDEC87D8F7@gmail.com" type="cite"> <pre wrap="">Martijn
Op 22-okt-2007, om 20:40 heeft Just van den Broecke het volgende
geschreven:
</pre> <blockquote type="cite"> <pre wrap="">Volgens mij heet de formule "great circle distance" (zoals c#
voorbeeld). Zie <a class="moz-txt-link-freetext" href="http://en.wikipedia.org/wiki/Great-circle_distance">http://en.wikipedia.org/wiki/Great-circle_distance</a>
Pythagoras kan m.i. alleen met zgn "equidistante projectie" (bijv.
pixels evenredig aan meters in x en y richting) zoals RD op bijv.
topokaarten in NL.
Ik heb wel een aantal implementaties bijv. in Java of JavaScript.
Just
Martijn van Exel wrote:
</pre> <blockquote type="cite"> <pre wrap="">Dat maakt het een stuk complexer. Je moet je afvragen of je dat
ervoor
over hebt, maar enfin, ik vind de volgende uitwerking:
<a class="moz-txt-link-freetext" href="http://www.codeproject.com/csharp/distancebetweenlocations.asp">http://www.codeproject.com/csharp/distancebetweenlocations.asp</a>
Succes ermee;
Martijn
Op 22-okt-2007, om 13:29 heeft Gert Gremmen het volgende geschreven:
</pre> <blockquote type="cite"> <pre wrap="">Dank je Martijn,
maar nu in lengte en breedte graden....
en over de aardbol, hoewel dat
binnen Nederland wel ongeveer hetzelfde
is als op een plat vlak.
Regards,
Je bedoelt de hemelsbrede afstand?
Dat is de implementatie van Pythagoras:
(in c#)
public double Distance(Point pt1, Point pt2)
{
return Math.Sqrt(Math.Pow(pt2.X.ToDouble() - pt1.X.ToDouble(),
2) +
Math.Pow(pt2.Y.ToDouble() - pt1.Y.ToDouble(), 2));
}
Voor afstand over de weg kun je een webservice aanroepen, er zijn
verschillende partijen die dat aanbieden (Locatienet, Geodan, ...)
Martijn
Op 22-okt-2007, om 13:04 heeft Gert Gremmen het volgende geschreven:
</pre> <blockquote type="cite"> <pre wrap="">Voor het schrijven van een eenvoudige applicatie
zoek ik een algorithme om de afstand tussen
twee coordinaten ( uit OSM natuurlijk)
te berekenen. (in Nederland)
Het hoeft niet sub-meter nauwkeurig....
Wie heeft een voorbeeld in universele code?
Regards,
Gert Gremmen
_______________________________________________
Talk-nl mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Talk-nl@openstreetmap.org">Talk-nl@openstreetmap.org</a> <a class="moz-txt-link-rfc2396E" href="mailto:Talk-nl@openstreetmap.org"><mailto:Talk-nl@openstreetmap.org></a>
<a class="moz-txt-link-freetext" href="http://lists.openstreetmap.org/cgi-bin/mailman/listinfo/talk-nl">http://lists.openstreetmap.org/cgi-bin/mailman/listinfo/talk-nl</a>
</pre> </blockquote> <pre wrap="">_______________________________________________
Talk-nl mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Talk-nl@openstreetmap.org">Talk-nl@openstreetmap.org</a> <a class="moz-txt-link-rfc2396E" href="mailto:Talk-nl@openstreetmap.org"><mailto:Talk-nl@openstreetmap.org></a>
<a class="moz-txt-link-freetext" href="http://lists.openstreetmap.org/cgi-bin/mailman/listinfo/talk-nl">http://lists.openstreetmap.org/cgi-bin/mailman/listinfo/talk-nl</a>
_______________________________________________
Talk-nl mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Talk-nl@openstreetmap.org">Talk-nl@openstreetmap.org</a> <a class="moz-txt-link-rfc2396E" href="mailto:Talk-nl@openstreetmap.org"><mailto:Talk-nl@openstreetmap.org></a>
<a class="moz-txt-link-freetext" href="http://lists.openstreetmap.org/cgi-bin/mailman/listinfo/talk-nl">http://lists.openstreetmap.org/cgi-bin/mailman/listinfo/talk-nl</a>
</pre> </blockquote> <pre wrap="">---------------------------------------------------------------------
---
_______________________________________________
Talk-nl mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Talk-nl@openstreetmap.org">Talk-nl@openstreetmap.org</a>
<a class="moz-txt-link-freetext" href="http://lists.openstreetmap.org/cgi-bin/mailman/listinfo/talk-nl">http://lists.openstreetmap.org/cgi-bin/mailman/listinfo/talk-nl</a>
</pre> </blockquote> <pre wrap="">--
--Just
Just van den Broecke <a class="moz-txt-link-abbreviated" href="mailto:just@justobjects.nl">just@justobjects.nl</a>
Just Objects B.V. tel +31 65 4268627 Skype: justb4
The Netherlands <a class="moz-txt-link-freetext" href="http://www.justobjects.nl">http://www.justobjects.nl</a>
_______________________________________________
Talk-nl mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Talk-nl@openstreetmap.org">Talk-nl@openstreetmap.org</a>
<a class="moz-txt-link-freetext" href="http://lists.openstreetmap.org/cgi-bin/mailman/listinfo/talk-nl">http://lists.openstreetmap.org/cgi-bin/mailman/listinfo/talk-nl</a>
</pre> </blockquote> <pre wrap=""><!---->_______________________________________________
Talk-nl mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Talk-nl@openstreetmap.org">Talk-nl@openstreetmap.org</a>
<a class="moz-txt-link-freetext" href="http://lists.openstreetmap.org/cgi-bin/mailman/listinfo/talk-nl">http://lists.openstreetmap.org/cgi-bin/mailman/listinfo/talk-nl</a>
</pre> </blockquote> <br> <br> <div class="moz-signature">-- <br> <br> <table border="0" cellpadding="0" cellspacing="0" width="400"> <tbody><tr><td rowspan="3" align="left" height="0" valign="bottom" width="15"><br> </td><td colspan="2" align="left" height="78" valign="top" width="0"><p class="style4">Milo van der Linden <br> <a href="skype:milovanderlinden?add">skype: milovanderlinden</a><br> <a href="mailto:mlinden@zeelandnet.nl">mlinden@zeelandnet.nl</a><br> <a href="mailto:milovanderlinden@gmail.com">milovanderlinden@gmail.com</a><br> <a href="mailto:milo@3dsite.nl">milo@3dsite.nl</a><br> <a href="http://www.3dsite.nl">http://www.3dsite.nl</a><br> </p> </td><td rowspan="3" align="left" height="0" valign="top" width="15"> </td><td valign="top" width="300"><p class="style5"><span lang="NL">De informatie in dit bericht reflecteert mijn persoonlijke mening en niet die van een bedrijf of instantie. Aan de informatie kunnen geen rechten worden ontleend. Indien dit bericht onderdeel is van een forum, mailing-list of community dan gelden automatisch de bij het betreffende medium behorende voorwaarden.</span> <span lang="EN">The information in this message reflects my personal opinion and not that of a company or public body. All rights reserved.If this message is contained in a mailing-list or community, the rights on the medium are automatically adapted.</span></p> </td></tr></tbody> </table> </div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">_______________________________________________</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Talk-nl mailing list</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><a href="mailto:Talk-nl@openstreetmap.org">Talk-nl@openstreetmap.org</a></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><a href="http://lists.openstreetmap.org/cgi-bin/mailman/listinfo/talk-nl">http://lists.openstreetmap.org/cgi-bin/mailman/listinfo/talk-nl</a></div> </blockquote></div><br></div></body></html>