天天看点

谷歌坐标(GPS坐标)与百度坐标的转换

//1、GCJ-02,国测局02年发布的坐标体系。又称“火星坐标”。谷歌,腾讯,高德都在用这个坐标体系。  
  
  
       //2、BD-09,百度坐标系  
  
  
       //GCJ-02转换BD-09 (谷歌坐标转百度坐标)
  
  
       function Getbaidu($lat, $lng){  
  
  
           $v = M_PI * 3000.0 / 180.0;  
  
  
           $x = $lng;  
  
  
           $y = $lat;  
  
  

  
  
           $z = sqrt($x * $x + $y * $y) + 0.00002 * sin($y * $v);    
  
  
           $t = atan2($y, $x) + 0.000003 * cos($x * $v);  
  
  

  
  
           return array(  
  
  
           'lat' => $z * sin($t) + 0.006,  
  
  
           'lng' => $z * cos($t) + 0.0065  
  
  
           );  
  
  
       }
  
  
       
  
  
       //BD-09转换GCJ-02  (百度坐标转谷歌坐标)
  
  
       function Getguge($lat, $lng){  
  
  
           $v = M_PI * 3000.0 / 180.0;  
  
  
           $x = $lng - 0.0065;  
  
  
           $y = $lat - 0.006;  
  
  

  
  
           $z = sqrt($x * $x + $y * $y) - 0.00002 * sin($y * $v);    
  
  
           $t = atan2($y, $x) - 0.000003 * cos($x * $v);  
  
  

  
  
           return array(  
  
  
           'lat' => $z * sin($t),  
  
  
           'lng' => $z * cos($t)  
  
  
           );  
  
  
       } 
  
  
       
  
  
       //调用方式
  
  
        public function zuobiao(){ 
  
  
           $lat = 32.1287736098;  
  
  
           $lng = 114.082163843;  
  
  
           $coordinate = $this->Getbaidu($lat, $lng);  //(谷歌坐标转百度坐标)
  
  
           $coordinates = $this->Getguge($lat, $lng);  //(百度坐标转谷歌坐标)
  
  
       }