24小时热门版块排行榜    

查看: 142  |  回复: 0
当前主题已经存档。

moonlight3988

木虫 (正式写手)

[交流] 【转贴】经典的高斯投影正反算源码

本程序从BL到xy的精度为0.001m
从xy到BL的精度为0.00001秒

下面是一个专门用于高斯投影正反算的类
实现了不同参数的多态
使用C#语言编写
包括了以下几个函数

///
/// 从大地坐标到平面坐标的高斯正算
///
/// 默认的是使用假定坐标的六度带投影
///

/// 大地纬度
/// 大地经度
/// 平面纵轴
/// 平面横轴
/// 参考椭球长半轴
/// 参考椭球扁率倒数
public static void BL_xy(double B, double L, out double x, out double y, double a, double f)

///
/// 从大地坐标到平面坐标的高斯正算
///
/// 默认的是使用假定坐标
///

/// 大地纬度
/// 大地经度
/// 平面纵轴
/// 平面横轴
/// 参考椭球长半轴
/// 参考椭球扁率倒数
/// 投影分带的带宽
public static void BL_xy(double B, double L, out double x, out double y, double a, double f, int beltWidth)

///
/// 从大地坐标到平面坐标的高斯正算
///
/// 默认的是六度带投影
///

/// 大地纬度
/// 大地经度
/// 平面纵轴
/// 平面横轴
/// 参考椭球长半轴
/// 参考椭球扁率倒数
/// 是否使用假定坐标
public static void BL_xy(double B, double L, out double x, out double y, double a, double f, bool assumedCoord)

///
/// 从大地坐标到平面坐标的高斯正算
///

/// 大地纬度
/// 大地经度
/// 平面纵轴
/// 平面横轴
/// 参考椭球长半轴
/// 参考椭球扁率倒数
/// 投影分带的带宽
/// 是否使用假定坐标
public static void BL_xy(double B, double L, out double x, out double y, double a, double f, int beltWidth, bool assumedCoord)

///
/// 从大地坐标到平面坐标的高斯正算
///
/// 指定中央子午线,用于进行邻带换算,此时必不使用假定坐标
///

/// 大地纬度
/// 大地经度
/// 中央子午线
/// 平面纵轴
/// 平面横轴
/// 参考椭球长半轴
/// 参考椭球扁率倒数
/// 投影分带的带宽
public static void Bl_xy(double B, double dL, out double x, out double y, double a, double f, int beltWidth)

///
/// 平面坐标(自然坐标或假定坐标)到大地坐标的高斯反算
///
/// 默认使用六度带
///

/// 平面纵轴
/// 平面横轴
/// 大地纬度
/// 大地经度
/// 参考椭球长半轴
/// 参考椭球扁率倒数
public static void xy_BL(double x, double y, out double B, out double L, double a, double f)

///
/// 平面坐标(自然坐标或假定坐标)到大地坐标的高斯反算
///

/// 平面纵轴
/// 平面横轴
/// 大地纬度
/// 大地经度
/// 参考椭球长半轴
/// 参考椭球扁率倒数
/// 投影分带的带宽
public static void xy_BL(double x, double y, out double B, out double L, double a, double f, int beltWidth)

///
/// 平面坐标(自然坐标)到大地坐标的高斯反算
///

/// 平面纵轴
/// 平面横轴
/// 大地纬度
/// 经度差
/// 参考椭球长半轴
/// 参考椭球扁率倒数
/// 投影分带的带宽
private static void xy_Bl(double x, double y, out double B, out double l, double a, double f, int beltWidth)

代码下载地址:http://bbs.i-location.org/thread-221-1-1.htmlml

[ Last edited by moonlight3988 on 2008-8-4 at 22:55 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 moonlight3988 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见