Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

2 या 3 रेडियल स्थान का मध्य बिंदु कैसे प्राप्त करें (अक्षांश, देशांतर)

मैंने इस उदाहरण की जाँच की:http://geomidpoint.com/example.html

और PHP में एक फंक्शन लिखा, आशा है कि यह मददगार होगा...

[संपादित करें] मैं गणनाओं के लिए रेडियन में बदलना भूल गया था, इसलिए इसने एक अलग आउटपुट दिया, इसलिए अब इसे ठीक काम करना चाहिए ...

   <?php

function middlepoint($lat1,$lon1,$lat2,$lon2,$lat3,$lon3){
    $w1=1095.75;$w2=730.5;$w3=365.25;$tw=$w1+$w2+$w3;   //weighting factors

    $x1=cos(floatval(deg2rad($lat1)))*cos(floatval(deg2rad($lon1)));$y1=cos(floatval(deg2rad($lat1)))*sin(floatval(deg2rad($lon1)));$z1=sin(floatval(deg2rad($lat1)));$x2=cos(floatval(deg2rad($lat2)))*cos(floatval(deg2rad($lon2)));$y2=cos(floatval(deg2rad($lat2)))*sin(floatval(deg2rad($lon2)));$z2=sin(floatval(deg2rad($lat2)));$x3=cos(floatval(deg2rad($lat3)))*cos(floatval(deg2rad($lon3)));$y3=cos(floatval(deg2rad($lat3)))*sin(floatval(deg2rad($lon3)));$z3=sin(floatval(deg2rad($lat3)));  //convert lat/long to cartesian (x,y,z) coordinates

    $x = ($x1*$w1+$x2*$w2+$x3*$w3)/$tw;$y=($y1*$w1+$y2*$w2+$y3*$w3)/$tw;$z=($z1*$w1+$z2*$w2+$z3*$w3)/$tw;   //Compute combined weighted cartesian coordinates

    $lon=atan2($y,$x);$hyp=sqrt(pow($x,2)+pow($y,2));$lat=atan2($z,$hyp);   //Convert cartesian coordinate to latitude and longitude for the midpoint

    $midpoint[0] = $lon * (180/pi());$midpoint[1] = $lat * (180/pi());  //Convert from radians to degrees

    return $midpoint;   //return an array(lat,lon);

}

$test = middlepoint(41.040035,28.984026,41.040868,28.985807,41.039136,28.984981);
print_r($test);

?>


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. node.js और mysql कनेक्शन पूल निर्यात नहीं करता है

  2. प्रत्येक अन्य उपयोगकर्ता के साथ प्रत्येक वार्तालाप में नवीनतम संदेश के लिए क्वेरी

  3. क्या MySQL कार्यक्षेत्र स्वचालित रूप से विदेशी कुंजी के लिए अनुक्रमणिका बनाता है?

  4. जावास्क्रिप्ट में उपयोग करने के लिए mysql डेटाबेस से डेटा प्राप्त करें

  5. अधिकतम तिथि होने के अनुसार ग्रुप करें