<html>
<head>
<style>
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
</style>
</head>
<body class='hmmessage'>
<br>I think you are looking for the Vincenty distance formula.<br>It's included in the examples as well.<br><br><hr id="stopSpelling">To: users@openlayers.org<br>From: Steve.Toutant@inspq.qc.ca<br>Date: Mon, 3 Aug 2009 10:44:10 -0400<br>Subject: [OpenLayers-Users] Measure control problem<br><br>
<br><font face="sans-serif" size="2">Hello,</font>
<br><font face="sans-serif" size="2">I created a measure control based on
the measure.js example</font>
<br><font face="sans-serif" size="2">My measure control doesn't display the
good distance. The distance is longer than expected.</font>
<br><font face="sans-serif" size="2">I tried with these coordinates</font>
<br><font face="sans-serif" size="2"># : lat, long</font>
<br><font face="sans-serif" size="2">Point 1 : 46.81509864093307, -71.22436522446064</font>
<br><font face="sans-serif" size="2">Point 2 : &nbsp;45.54483148742626, -73.63037108350094</font>
<br><font face="sans-serif" size="2">The control gives 336.824 km</font>
<br><font face="sans-serif" size="2">It should be around 233 km</font>
<br>
<br><font face="sans-serif" size="2">Do you have an idea on what could be
the cause of this error?</font>
<br>
<br><font face="sans-serif" size="2">Here is my code</font>
<br><font face="sans-serif" size="2">//the mapOptions of OL are</font>
<br><font face="sans-serif" size="2">projection: "EPSG:900913",</font>
<br><font face="sans-serif" size="2">displayProjection: new OpenLayers.Projection("EPSG:4326"),
//Pour afficher les coord lat long</font>
<br><font face="sans-serif" size="2">units: "m",</font>
<br>
<br><font face="sans-serif" size="2">var mesureControl = new OpenLayers.Control.Measure(</font>
<br><font face="sans-serif" size="2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;OpenLayers.Handler.Path,
</font>
<br><font face="sans-serif" size="2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {</font>
<br><font face="sans-serif" size="2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;persist:
true,</font>
<br><font face="sans-serif" size="2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; geodesic: false,</font>
<br><font face="sans-serif" size="2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;handlerOptions:
</font>
<br><font face="sans-serif" size="2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; {</font>
<br><font face="sans-serif" size="2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; // &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; layerOptions: {styleMap: styleMap}</font>
<br><font face="sans-serif" size="2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}</font>
<br><font face="sans-serif" size="2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}</font>
<br><font face="sans-serif" size="2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp;);</font>
<br><font face="sans-serif" size="2">mesureControl.events.on</font>
<br><font face="sans-serif" size="2">({</font>
<br><font face="sans-serif" size="2">&nbsp; &nbsp; "measure": handleMeasurements,</font>
<br><font face="sans-serif" size="2">&nbsp; &nbsp; &nbsp; &nbsp; "measurepartial":
handleMeasurements</font>
<br><font face="sans-serif" size="2">});</font>
<br><font face="sans-serif" size="2">map.addControl(mesureControl);</font>
<br><font face="sans-serif" size="2">&nbsp; &nbsp; &nbsp; &nbsp; </font>
<br><font face="sans-serif" size="2">function handleMeasurements(event) </font>
<br><font face="sans-serif" size="2">{</font>
<br><font face="sans-serif" size="2">&nbsp; &nbsp; &nbsp; &nbsp; var
geometry = event.geometry;</font>
<br><font face="sans-serif" size="2">&nbsp; &nbsp; &nbsp; &nbsp; var
units = event.units;</font>
<br><font face="sans-serif" size="2">&nbsp; &nbsp; &nbsp; &nbsp; var
measure = event.measure;</font>
<br><font face="sans-serif" size="2">&nbsp; &nbsp; &nbsp; &nbsp; </font>
<br><font face="sans-serif" size="2">&nbsp; &nbsp; &nbsp; &nbsp; alert(
measure.toFixed(3) + " " + units, "" );</font>
<br><font face="sans-serif" size="2">}</font>
<br>
<br><font face="sans-serif" size="2">//geoExt toolbar</font>
<br><font face="sans-serif" size="2">action = new GeoExt.Action({</font>
<br><font face="sans-serif" size="2">&nbsp; &nbsp; &nbsp; &nbsp; control:
mesureControl,</font>
<br><font face="sans-serif" size="2">&nbsp; &nbsp; map: map,</font>
<br><font face="sans-serif" size="2">&nbsp; &nbsp; toggleGroup: "map",</font>
<br><font face="sans-serif" size="2">&nbsp; &nbsp; &nbsp; &nbsp; iconCls:
'measure',</font>
<br><font face="sans-serif" size="2">&nbsp; &nbsp; &nbsp; &nbsp; tooltip:
'Mesure linéaire'</font>
<br><font face="sans-serif" size="2">&nbsp; &nbsp; });</font>
<br><font face="sans-serif" size="2">&nbsp; &nbsp; toolbar.push(action);
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</font>
<br>
<br><font face="sans-serif" size="2">Thanks for your help,</font>
<br><font face="sans-serif" size="2">Steve</font>
<br><font face="sans-serif" size="2"><br>
</font><font size="3" color="#0066ff"><i>Steve Toutant, M. Sc.</i></font><font size="3"><br>
Analyste en géomatique<br>
Secteur environnement<br>
Direction des risques biologiques, environnementaux et occupationnels<br>
Institut national de santé publique du Québec<br>
945, avenue Wolfe<br>
Québec, Qc G1V 5B3 </font>
<font size="3">Tél.: (418) 650-5115 #5281<br>
Fax.: (418) 654-3144</font><font size="3" color="blue"><u><br>
</u></font><a href="mailto:steve.toutant@inspq.qc.ca"><font size="3" color="blue"><u>steve.toutant@inspq.qc.ca</u></font></a><font size="3" color="blue"><u><br>
</u></font><a href="http://www.inspq.qc.ca/"><font size="3" color="blue"><u>http://www.inspq.qc.ca</u></font></a>
<BR><font size="3">&nbsp; </font>
<BR><BR></body>
</html>