coord-transform

https://github.com/wandergis/coordtransform

HTML

<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<script src="https://cdn.bootcss.com/autosize.js/3.0.20/autosize.min.js"></script>
<link rel="stylesheet" href="https://cache.amap.com/lbs/static/main1119.css">
<script src="https://cache.amap.com/lbs/static/es5.min.js"></script>
<script src="https://webapi.amap.com/maps?v=1.3&amp;key=????key?"></script>
<script src="https://cache.amap.com/lbs/static/addToolbar.js"></script>
<script src="https://api.map.baidu.com/api?v=2.0&amp;ak=DVfmzcdgB59UA0W6egEg2nuH9iPc2XRc"></script>
<link rel="stylesheet" href="https://unpkg.com/[email protected]/dist/leaflet.css">
<script src="https://unpkg.com/[email protected]/dist/leaflet.js"></script>
<div class="container-fluid panel-body">
  <div class="row">
    <div class="col-xs-4 col-md-4">
      <div class="form-group">
        <button type="button" class="btn btn-danger btn-block btn-coord-trans" data-coord-sys="bd09">百度(BD09)</button>
      </div>
      <div class="form-group">
        <textarea id="text-bd09" class="form-control textarea-coord" rows="3" placeholder="longitude, latitude"></textarea>
      </div>
      <div class="form-group">
        <button type="button" class="btn btn-danger btn-block btn-coord-trans" data-coord-sys="bd09">百度(BD09)</button>
      </div>
      <div id="container-baidu" class="map-container" data-coord-sys="bd09"></div>
    </div>
    <div class="col-xs-4 col-md-4">
      <div class="form-group">
        <button type="button" class="btn btn-primary btn-block btn-coord-trans" data-coord-sys="gcj02">高德(GCJ02)</button>
      </div>
      <div class="form-group">
        <textarea id="text-gcj02" class="form-control textarea-coord" rows="3" placeholder="longitude, latitude"></textarea>
      </div>
      <div class="form-group">
        <button...

CSS

.textarea-coord {
  white-space: nowrap;
}

.map-container {
  height: 400px;
}

JavaScript

/**
 * Created by Wandergis on 2015/7/8.
 * 提供了百度坐标(BD09)、国测局坐标(火星坐标,GCJ02)、和WGS84坐标系之间的转换
 */
//UMD魔法代码
// if the module has no dependencies, the above pattern can be simplified to
(function(root, factory) {
  if (typeof define === 'function' && define.amd) {
    // AMD. Register as an anonymous module.
    define([], factory);
  } else if (typeof module === 'object' && module.exports) {
    // Node. Does not work with strict CommonJS, but
    // only CommonJS-like environments that support module.exports,
    // like Node.
    module.exports = factory();
  } else {
    // Browser globals (root is window)
    root.coordtransform = factory();
  }
}(this, function() {
  //定义一些常量
  var x_PI = 3.14159265358979324 * 3000.0 / 180.0;
  var PI = 3.1415926535897932384626;
  var a = 6378245.0;
  var ee = 0.00669342162296594323;
  /**
   * 百度坐标系 (BD-09) 与 火星坐标系 (GCJ-02)的转换
   * 即 百度 转 谷歌、高德
   * @param bd_lon
   * @param bd_lat
   * @returns {*[]}
   */
  var bd09togcj02 = function bd09togcj02(bd_lon, bd_lat) {
    var bd_lon = +bd_lon;
    var bd_lat = +bd_lat;
    var x = bd_lon - 0.0065;
    var y = bd_lat - 0.006;
    var z = Math.sqrt(x * x + y * y) - 0.00002 * Math.sin(y * x_PI);
    var theta = Math.atan2(y, x) - 0.000003 * Math.cos(x * x_PI);
    var gg_lng = z * Math.cos(theta);
    var gg_lat = z * Math.sin(theta);
    return [gg_lng, gg_lat]
  };

  /**
   * 火星坐标系 (GCJ-02) 与百度坐标系 (BD-09) 的转换
   * 即谷歌、高德 转 百度
   * @param lng
   * @param lat
   * @returns {*[]}
   */
  var gcj02tobd09 = function gcj02tobd09(lng, lat) {
    var lat = +lat;
    var lng = +lng;
    var z = Math.sqrt(lng * lng + lat * lat) + 0.00002 * Math.sin(lat * x_PI);
    var theta = Math.atan2(lat, lng) + 0.000003 * Math.cos(lng * x_PI);
    var bd_lng = z * Math.cos(theta) + 0.0065;
    var bd_lat = z * Math.sin(theta) + 0.006;
    return [bd_lng, bd_lat]
  };

  /**
   * WGS84转GCj02
   * @param lng
   * @param lat
   * @returns {*[]}
   */
  var wgs84togcj02 = function wgs84togcj02(lng, lat)...