经纬度转WGS84坐标

1 cesium/source/core/cartesian3.js 经纬度转WGS84坐标代码:

直接去github看cesium的源码实现就行了:

Cartesian3.fromRadians = function (
  longitude,
  latitude,
  height,
  ellipsoid, # default is WGS84
  result
) {
    
    
  //>>includeStart('debug', pragmas.debug);
  Check.typeOf.number("longitude", longitude);
  Check.typeOf.number("latitude", latitude);
  //>>includeEnd('debug');

  height = defaultValue(height, 0.0);
  var radiiSquared = defined(ellipsoid)
    ? ellipsoid.radiiSquared
    : wgs84RadiiSquared;

  var cosLatitude = Math.cos(latitude);
  scratchN.x = cosLatitude * Math.cos(longitude);
  scratchN.y = cosLatitude * Math.sin(longitude);
  scratchN.z = Math.sin(latitude);
  scratchN = Cartesian3.normalize(scratchN, scratchN);

  Cartesian3.multiplyComponents(radiiSquared, scratchN, scratchK);
  var gamma = Math.sqrt(Cartesian3.dot(scratchN, scratchK));
  scratchK = Cartesian3.divideByScalar(scratchK, gamma, scratchK);
  scratchN = Cartesian3.multiplyByScalar(scratchN, height, scratchN);

  if (!defined(result)) {
    
    
    result = new Cartesian3();
  }
  return Cartesian3.add(scratchK, scratchN, result);
};

Guess you like

Origin blog.csdn.net/cxy_hust/article/details/120256028