一、认识

来自网络的图片:

方案一:(来自网络)

postgresql计算两点欧式距离(经纬度地理位置)

create or replace function getdistance

(

lon1 numeric,

lat1 numeric,

lon2 numeric,

lat2 numeric

)

returns int

as

$body$

declare

v_distance numeric;

v_earth_radius numeric;

radLat1 numeric;

radLat2 numeric;

v_radlatdiff numeric;

v_radlngdiff numeric;

begin

--地球半径

v_earth_radius:=6378137;

radLat1 := lat1 * pi()/180.0;

radLat2 := lat2 * pi()/180.0;

v_radlatdiff := radLat1 - radLat2;

v_radlngdiff := lon1 * pi()/180.0 - lon2 * pi()/180.0;

v_distance := 2 * asin(sqrt(power(sin(v_radlatdiff / 2), 2) + cos(radLat1) * cos(radLat2) * power(sin(v_radlngdiff/2),2)));

v_distance := round(v_distance * v_earth_radius);

return v_distance;

end;

$body$

language 'plpgsql' volatile;

create or replace function getdistance

(

i_lngbegin real,

i_latbegin real,

i_lngend real,

i_latend real

)

returns float

as

$body$

/*

*

* select getdistance_bygispoint(116.281524,39.957202,117.648673,38.42584) as distance;

* */

declare

v_distance real;

v_earth_radius real;

v_radlatbegin real;

v_radlatend real;

v_radlatdiff real;

v_radlngdiff real;

begin

--地球半径

v_earth_radius:=6378.137;

v_radlatbegin := i_latbegin * pi()/180.0;

v_radlatend := i_latend * pi()/180.0;

v_radlatdiff := v_radlatbegin - v_radlatend;

v_radlngdiff := i_lngbegin * pi()/180.0 - i_lngend * pi()/180.0;

v_distance := 2 * asin(sqrt(power(sin(v_radlatdiff / 2), 2) + cos(v_radlatbegin) * cos(v_radlatend) * power(sin(v_radlngdiff/2),2)));

v_distance := v_distance * v_earth_radius*1000;

return v_distance;

end;

$body$

language 'plpgsql' volatile;

方案二:

java点到原点距离_java-从经纬度坐标到欧氏距离(EuclideanDistance)完整代码相关推荐

  1. Java链表的书_JAVA实现双向链表的增删功能,完整代码package linked;class LinkedTable{ }public class Linke...

    JAVA实现双向链表的增删功能,完整代码 package linked; class LinkedTable{ } public class LinkedTableTest { //构造单链表 sta ...

  2. Java实现佛洛依德算法(floyd)的完整代码

    Java实现佛洛依德算法(floyd)的完整代码 /*** 弗洛伊德(floyd)算法求图中所有点对之间的最短路径:* 其中'-1'表示两点之间目前还没有联通的路径:* 结论:如果A点到G点之间有最短 ...

  3. java获取一定距离以内的经纬度值_java 根据经纬度计算两地间的距离

    现在网站上都流行贴出地理坐标位置,可以看出精度纬度,如果再结合GPS, 就可以定位出用户所在地的经纬度,自然可以计算出大概距离,下面是一段小代码,根据经纬度坐标直接计算出两地间的距离package c ...

  4. java 两个经纬度 距离_Java 根据两个经纬度,得到两点距离

    private static final double EARTH_RADIUS = 6371000;//赤道半径(单位m) private static final double INTEGR_NU ...

  5. java版谷歌地图计算两经纬度坐标点的距离

    球面上两点间大圆劣弧的距离 public class GoogleMapHelper {private static double EARTH_RADIUS = 6378.137; //地球半径//将 ...

  6. php经纬度换算距离,PHP根据经纬度坐标计算距离

    PHP根据经纬度坐标计算距离 在有些应用中需要用到计算距离的功能,例如附近的商家.离我最近等功能. W为纬度对应的弧度,J为经度对应的弧度,如上图所示 下面代码  lat是纬度  lng是经度 看类代 ...

  7. 给定经纬度计算距离_通过经纬度坐标计算距离的方法(经纬度距离计算)ZZ

    通过经纬度坐标计算距离的方法(经纬度距离计算) 最近在网上搜索"通过经纬度坐标计算距离的方法",发现网上大部分都是如下的代码: #define PI 3.14159265 stat ...

  8. java抽奖_JAVA实现用户抽奖功能(附完整代码)

    需求分析 1)实现三个基本功能:登录.注册.抽奖. 2)登录:用户输入账号密码进行登录,输入账号后会匹配已注册的用户,若输入用户不存在则退出,密码有三次输入机会,登录成功后主界面会显示已登录用户的账号 ...

  9. java登录注册抽奖完整代码_JAVA实现用户抽奖功能(附完整代码)

    需求分析 1)实现三个基本功能:登录.注册.抽奖. 2)登录:用户输入账号密码进行登录,输入账号后会匹配已注册的用户,若输入用户不存在则退出,密码有三次输入机会,登录成功后主界面会显示已登录用户的账号 ...

最新文章

  1. 中国半导体最强助攻来了!十年免税、上下游一揽子扶持,明确「集成电路」为一级学科...
  2. Uncaught TypeError: Cannot read property 'setAttribute' of null
  3. 一口气拿了9家公司的offer,年薪50W
  4. 数据结构一:链表(单向链表)
  5. java 装饰器_装饰器模式(Java)
  6. 60-100-340-使用-DataSource-hive相关-Flink加载hive数据源
  7. JUnit5 断言示例
  8. 前端开发这么多年,你真的了解浏览器页面渲染机制吗? | 技术头条
  9. 不是区块链的特征_区块链的四大特征
  10. NLPIR系统的中文语义分析模式介绍
  11. linux中不用命令安装flash,如何在Linux下安装flash player
  12. oracle有rtf函数,oracle存取rtf文档
  13. win10u盘被写保护怎么解除_win10系统U盘被写保护解除的操作方法
  14. 磁珠 符号_磁珠。标有FB的应该是磁珠!
  15. 【高中数学】数列 · 通项求法
  16. 【算法学习】基本的图算法(广搜、深搜、拓扑排序、强连通分量)
  17. python向excel隔行写数据_【Python】将每日新增数据写入Excel
  18. 如何学习手绘插画?这五点很重要!
  19. 网络错误 —未连接到互联网
  20. 针对谷氨酰胺运输体的小分子抑制剂

热门文章

  1. mysql安装在opt_一、编译安装第一个MySQL 5.1.33cd /opt/usr/sbin/groupadd mysql/usr/sbin/useradd -g...
  2. 为什么要把CV_8UC3(Vec3b)无符号整型转换成CV_32F(Vec3F)32位浮点数据类型?(在高精度下处理)
  3. makefile的使用方法(简单视频教程以及详细文字教程)
  4. python matplotlib绘制等高线,plt.contour(),ax3.contour()和plt.contourf(),ax3.contour(), 同名函数
  5. qt框架的开发模式_Flutter 混合开发框架模式探索
  6. 一个服务器上配置多个tomcat
  7. Dockerfile中的保留字指令讲解
  8. DNS服务器的默认区域文件名,DNS服务器全攻略之三 :创建与管理DNS区域.doc
  9. java string转number_Java运算符知识点总结
  10. 关于selinux模式更改警告模式