« HaversineBox (rtl) » : différence entre les versions

De Wiki1000
(Page créée avec « {{latest}} <source lang='delphi'>procedure haversineBox(lat,long,distance:Double; var latmin,latmax,longmin,longmax:double);</source> Cette fonction calcule la boite engl... »)
 
m (Remplacement du texte — « category:Latest » par « Category:Version700 »)
 
(3 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
{{latest}}
{{Version700}}
<source lang='delphi'>procedure haversineBox(lat,long,distance:Double; var latmin,latmax,longmin,longmax:double);</source>
<source lang='delphi'>procedure haversineBox(lat,long,distance:Double; var latmin,latmax,longmin,longmax:double);</source>


Ligne 28 : Ligne 28 :
   longmax := long+dd;
   longmax := long+dd;
end;
end;
</source>


<source lang='delphi'>
var latmin,latmax,longmin,longmax:double;
begin
  haversineBox(38.897147,-77.043934,0.5,latmin,latmax,longmin,longmax);
  showMessage(Format('latmin:%0.4f latmax:%0.4f longmin:%0.4f longmax:%0.4f',[latmin,latmax,longmin,longmax]));
end;
</source>
</source>


Ligne 37 : Ligne 44 :
{{Footer|Développement DSM}}
{{Footer|Développement DSM}}
[[category:RTL Conversion]]
[[category:RTL Conversion]]
[[category:Latest]]
[[Category:Version700]]

Dernière version du 13 janvier 2015 à 10:15

{{#images:version700-32x32.png|stock}} <source lang='delphi'>procedure haversineBox(lat,long,distance:Double; var latmin,latmax,longmin,longmax:double);</source>

Cette fonction calcule la boite englobante d'une position de taille exprimée en kilomètre.

lat,long Le jeu de coordonné au centre de la boite
latmin,latmax,longmin,longmax Les coordonnées min et max de la boite.

Pseudo code :

<source lang='delphi'> const cEarthRadiusKM = 6371.0009;

procedure haversineBox(lat,long,distance:Double; var latmin,latmax,longmin,longmax:Double; E:double=cEarthRadiusKM); var dd:Double; begin

 dd  := RadToDeg(distance/E);
 latmin := lat-dd;
 latmax := lat+dd;
 dd  := RadToDeg(distance/E/cos(degTorad(lat)));
 longmin := long-dd;
 longmax := long+dd;

end; </source>

<source lang='delphi'> var latmin,latmax,longmin,longmax:double; begin

 haversineBox(38.897147,-77.043934,0.5,latmin,latmax,longmin,longmax);
 showMessage(Format('latmin:%0.4f latmax:%0.4f longmin:%0.4f longmax:%0.4f',[latmin,latmax,longmin,longmax]));

end; </source>

Voir aussi:

{{#if:Développement DSM|

{{#if:Développement DSM|— Développement DSM |}} — Développement DSM

|

{{#if:|— [[{{{1}}}]] |}} — Développement DSM

}}