火星坐标系 (GCJ-02)转换为百度坐标系 (BD-09)

function GCJ02toBD09(lng, lat) {
var x_pi = 3.14159265358979324 * 3000.0 / 180.0;
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]
}
计算两个坐标点之间的距离

function getDistance(lat1, lng1, lat2, lng2) {
var dis = ;
var radLat1 = toRadians(lat1);
var radLat2 = toRadians(lat2);
var deltaLat = radLat1 - radLat2;
var deltaLng = toRadians(lng1) - toRadians(lng2);
var dis = * Math.asin(Math.sqrt(Math.pow(Math.sin(deltaLat / ), ) + Math.cos(radLat1) * Math.cos(radLat2) * Math.pow(Math.sin(deltaLng / ), )));
return dis * ; function toRadians(d) { return d * Math.PI / ; }
}
已知一点经纬度A,和与另一点B的距离和方位角,求B点的经纬度

/// <summary>
///
/// </summary>
/// <param name="distance">距离</param>
/// <param name="lng">A坐标经度</param>
/// <param name="lati">A坐标纬度</param>
/// <param name="angle">角度 ,以正北方向顺时针开始</param>
/// <returns></returns>
private string ConvertDistanceToLogLat(int distance, string lng, string lati, double angle)
{
double juli = (float)distance / ;
string logLat = null;
double lng1 = Convert.ToDouble(lng.Trim());
double lat1 = Convert.ToDouble(lati.Trim());
//将距离转换成经度的计算公式
double lon = lng1 + (juli * Math.Sin(angle * Math.PI / )) / ( * Math.Cos(lat1 * Math.PI / ));
//将距离转换成纬度的计算公式
double lat = lat1 + (juli * Math.Cos(angle * Math.PI / )) / ;
logLat = lon + "," + lat;
return logLat;
}
将double值转换成度分秒字符串

 private string ConvertLogLatToString(double lon)
{
string resut = null;
string temp = lon.ToString();
string[] du = temp.Split('.');
resut += du[] + "°";
double fen = (lon - Convert.ToDouble(du[])) * ;
string[] fen_Arrary = fen.ToString().Split('.');
resut += fen_Arrary[] + "′";
if (fen_Arrary.Length > )
{
double second = Math.Round((fen - Convert.ToDouble(fen_Arrary[])) * , );
resut += second.ToString() + "″";
}
return resut;
}

.net关于坐标之间一些简单操作的更多相关文章

  1. Visual Studio 2017中使用正则修改部分内容 如何使用ILAsm与ILDasm修改.Net exe(dll)文件 C#学习-图解教程(1):格式化数字字符串 小程序开发之图片转Base64(C#、.Net) jquery遍历table为每一个单元格取值及赋值 。net加密解密相关方法 .net关于坐标之间一些简单操作

    Visual Studio 2017中使用正则修改部分内容   最近在项目中想实现一个小工具,需要根据类的属性<summary>的内容加上相应的[Description]特性,需要实现的效 ...

  2. Linux 中 Vi 编辑器的简单操作

    Linux 中 Vi 编辑器的简单操作 Vi 编辑器一共有3种模式:命名模式(默认),尾行模式,编辑模式.3种模式彼此需要切换. 一.进入 Vi 编辑器的的命令 vi  filename //打开或新 ...

  3. matlab矩阵的表示和简单操作

    原地址:http://www.cnblogs.com/Ran_Ran/archive/2010/12/11/1903070.html 一.矩阵的表示在MATLAB中创建矩阵有以下规则: a.矩阵元素必 ...

  4. cocos2d-x JS 各类点、圆、矩形之间的简单碰撞检测

    这里总结了一下点.圆.矩形之间的简单碰撞检测算法 (ps:矩形不包括旋转状态) 点和圆的碰撞检测: 1.计算点和圆心的距离 2.判断点与圆心的距离是否小于圆的半 isCollision: functi ...

  5. 【ZooKeeper】ZooKeeper安装及简单操作

    ZooKeeper介绍 ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件.它是一个为分布式应用提供一 ...

  6. Linux下MySQL的简单操作

    Linux下MySQL的简单操作 更改mysql数据库root的密码 首次进入数据库是不用密码的: [root@localhost ~]# /usr/local/mysql/bin/mysql -ur ...

  7. MySQL基本概念以及简单操作

    一.MySQL   MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MyS ...

  8. HDFS介绍及简单操作

    目录 1.HDFS是什么? 2.HDFS设计基础与目标 3.HDFS体系结构 3.1 NameNode(NN)3.2 DataNode(DN)3.3 SecondaryNameNode(SNN)3.4 ...

  9. VIM - 标准模式下简单操作

    1. 概述 标准模式下, 简单操作 移动 删除 复制粘贴 收益 熟练后, 编辑文本基本不需要鼠标操作了 思路 只讲最基本的, 避免初学时的混淆 把基本操作归类了, 方便理解 2. 准备 一篇篇幅较长的 ...

随机推荐

  1. 在FFMPEG中使用libRTMP的经验

    FFMPEG在编译的时候可以选择支持RTMP的类库libRTMP.这样ffmpeg就可以支持rtmp://, rtmpt://, rtmpe://, rtmpte://,以及 rtmps://协议了. ...

  2. Media Player Classic - HC 源代码分析 7:详细信息选项卡(CPPageFileInfoDetails)

    ===================================================== Media Player Classic - HC 源代码分析系列文章列表: Media P ...

  3. ANDROID 中设计模式的采用--结构型模式

            结构型模式中的适配器模式.外观模式.装饰模式.代理模式都属于包装模式,都是对另外的类或对象的包装,只是各自的意图不同. 适配器模式通过对另外的类或对象的包装,将其接口转换为用户期望 ...

  4. C++之IO操作

    可参考自: C++之标准设备IO操作流 C++之预定义类型IO格式控制 C++之文件IO操作流

  5. Android ROM开发(三)——精简官方ROM并且内置ROOT权限,开启Romer之路

    Android ROM开发(三)--精简官方ROM并且内置ROOT权限,开启Romer之路 相信ROM的相关信息大家通过前几篇的学习都是有所了解了,这里就不在一一提示了,这里我们下载一个官方包,我们还 ...

  6. Boyer-Moore算法

    1.概述 在用于查找子字符串的算法当中,BM(Boyer-Moore)算法是目前相当有效又容易理解的一种,一般情况下,比KMP算法快3-5倍. BM算法在移动模式串的时候是从左到右,而进行比较的时候是 ...

  7. android 应用模式之mvp

    说到MVP就不得不提到MVC,做过J2EE的猿友们肯定知道MVC是个什么东西.MVC即 Model.View.Controller, 那MVP就Model.View.Presenter.Model用于 ...

  8. CoordinatorLayout

    CoordinatorLayout作为"super-powered FrameLayout"基本实现两个功能:  1.作为顶层布局  2.调度协调子布局 CoordinatorLa ...

  9. ZooKeeper客户端事件串行化处理

    为了提升系统的性能,进一步提高系统的吞吐能力,最近公司很多系统都在进行异步化改造.在异步化改造的过程中,肯定会比以前碰到更多的多线程问题,上周就碰到ZooKeeper客户端异步化过程中的一个死锁问题, ...

  10. SharePoint 2013配置启用搜索服务

    1.安装完毕SharePoint 2013,新建网站集,点击搜索,出现如下错误(因为没配置,别激动). 2.尝试启动服务器场中的服务之SharePoint Server Search,提示新建搜索应用 ...