java,经纬度转换行政区域

合集下载

批量经纬度转换地理位置的方法

批量经纬度转换地理位置的方法

批量经纬度转换地理位置的方法

在数字化的时代,经纬度已经成为地理位置的常用表示方法。然而,对于大量的经纬度数据,手动查找对应的地理位置会变得非常耗时且繁琐。本文将介绍一些批量经纬度转换地理位置的方法。

1. 使用在线工具

现在有许多在线工具可以将经纬度批量转换为地理位置,其中比较常用的是百度地图开放平台。用户可以将经纬度数据复制到该平台的批量转化界面中,即可得到相应的地理位置信息。此外,还有腾讯地图、高德地图等平台也提供了类似的服务。

2. 使用地理信息系统软件

地理信息系统软件可以将大量的经纬度数据导入系统中,并快速转换成地理位置信息。常用的地理信息系统软件有ArcGIS、QGIS等,用户可以在这些软件中选择合适的工具进行批量转换。

3. 使用编程语言

如果用户掌握一定的编程能力,可以使用Python、R等编程语言对经纬度数据进行批量转换。例如,在Python中,可以使用geopy 库来实现经纬度与地理位置之间的转换。用户只需编写简单的代码,即可实现批量转换。

总的来说,批量经纬度转换地理位置的方法有很多种,用户可以根据自己的需求和技能水平选择合适的方法。无论使用哪种方法,都可以降低处理大量经纬度数据时的工作量和时间成本。

- 1 -

ArcMap行政区经纬度拟合提取

ArcMap行政区经纬度拟合提取

ArcGis区域经纬度拟合

一、ArcMap导入矢量图

.shp存储的是几何要素的的空间信息,也就是XY坐标

.shx存储的是有关*.shp存储的索引信息。它记录了在*.shp中,空间数据是如何存储的,XY坐标的输入点在哪里,有多少XY坐标对等信息.dbf存储地理数据的属性信息的dBase表

这三个文件是一个shapefile的基本文件。打开一幅矢量图,只要打开.shp 文件,两个方法:

方法1:点击add data,然后选择.shp文件;

方法2:直接将.shp文件拖拽至ArcMap中打开;

导入矢量图后如下图所示:

二、确定焦点,选取所需行政区划

例如,我们只需要奉贤区的数据,要将焦点定位于奉贤区,有两种方法:方法1:知道奉贤区位于矢量图的哪块区域,右击图层上该区域位置,选择Select Features;

键该图层,选择Open Attribute Table,打开数据表

在打开的表中,单击Select By Attributes

在弹出的窗口中,分别在1区域和2区域,选择列名和属性,生成的查询语句在下方区域自动显示,确认;

如要进行多选,则添加or语句,如:"区" = '奉贤区' or "区"='黄浦区';

结果如图所示:被选中的区域,图层区域边界会以高亮显示

三、对选中区域生成新的图层

在区域被选中(边界高亮)的情况下,在Table Of Contents中右键该图层,选择Data->Export Data

弹出的窗口中,主要选择Selected features,点OK确认;

生成合并图层后,会问:Do you want to add the exported data to the map as a layer?选Y;

根据经纬度获取区域编码的方法-概述说明以及解释

根据经纬度获取区域编码的方法-概述说明以及解释

根据经纬度获取区域编码的方法-概述说明以及解释

1.引言

1.1 概述

本文旨在探讨根据经纬度获取区域编码的方法。在现代社会中,经纬度常被用来描述地理位置信息,而区域编码则用于标识一个特定地理区域。通过将经纬度与区域编码进行关联,我们可以实现诸如位置定位、地理信息分析等功能。

本文将首先介绍经纬度与区域编码的关系,探讨它们之间的联系和作用。随后,将介绍一种常用的方法,即通过使用在线地图API来获取区域编码的方式。这种方法简单、高效,并且可以灵活地应用于各种场景中。

通过本文的阅读,读者将了解到经纬度与区域编码之间的紧密联系,同时还能掌握一种实用的方法来获取区域编码。这对于开发地理相关的应用程序或进行地理信息分析的研究人员来说都是非常有价值的。

在接下来的章节中,我们将逐步展开对这些内容的详细介绍,并进一步探索相关的应用领域和未来发展方向。本文将以简洁明了的方式呈现,并提供相关的示例代码和实际案例,希望能对读者有所启发和帮助。

接下来,我们将首先介绍经纬度与区域编码的关系。请继续阅读下一

节内容。

1.2文章结构

1.2 文章结构

本文将分为引言、正文和结论三个部分来探讨根据经纬度获取区域编码的方法。

引言部分将对本文所要解决的问题进行概述,介绍经纬度和区域编码之间的关系,并说明本文的目的。

正文部分将详细讨论经纬度与区域编码之间的关系,并介绍两种方法来获取区域编码。其中,方法一将重点介绍使用在线地图API的方式,以及详细步骤和注意事项。

结论部分将对本文的内容进行总结,概括两种方法的优缺点,并展望未来在根据经纬度获取区域编码方面的发展前景。

java 生成行政区划规则

java 生成行政区划规则

java 生成行政区划规则

生成行政区划规则是指根据国家或地区的行政管理需要,将一个国家或地区的行政区域划分为不同的行政区划单位,并为每个行政区划单位设立相应的行政机构和管理规则。行政区划是国家或地区政府对地理空间进行管理和管辖的基本单位,具有重要的行政、经济、社会等功能。

在Java中生成行政区划规则可以通过以下步骤实现:

1. 定义行政区划类:创建一个行政区划类,用于表示行政区划单位的信息和属性。该类可以包含行政区划单位的名称、代码、上级行政区划单位、下级行政区划单位等信息。

2. 构建行政区划数据结构:使用合适的数据结构来组织行政区划单位的层次关系。常用的数据结构包括树结构和图结构。树结构可以方便地表示上下级关系,而图结构可以更灵活地表示行政区划之间的复杂关系。

3. 解析行政区划数据:获取行政区划数据源,可以是文本文件、数据库或网络API等。将行政区划数据解析成相应的数据结构,并建立行政区划之间的层次关系。

4. 实现行政区划查询功能:为行政区划类提供查询方法,根据行政区划代码或名称等条件查询相应的行政区划单位,实现行政区划的

检索功能。

5. 实现行政区划管理功能:为行政区划类提供添加、修改、删除等管理方法,方便对行政区划单位进行管理和维护。

6. 提供行政区划数据接口:将生成的行政区划规则以接口的形式提供给其他系统或模块使用,方便其他模块进行行政区划相关的操作。

7. 完善行政区划规则:根据实际需要,可以进一步完善行政区划规则,例如添加行政区划单位的经纬度信息,以支持地理位置相关的功能。

在实际应用中,生成行政区划规则常常需要参考国家或地区的相关法律法规和标准,以确保行政区划规则的准确性和合法性。为了提高生成行政区划规则的效率和准确性,可以利用现有的行政区划数据源和相关工具,例如国家统计局的行政区划数据、地理信息系统(GIS)软件等。

java根据经纬度获取地市的方法

java根据经纬度获取地市的方法

根据经纬度获取地市的方法可以通过Google Maps API或者OpenStreetMap API来实现。下面我将使用Google Maps API的Java SDK进行演示。

首先,你需要在Google Cloud Platform上创建一个项目并获取API密钥。然后,你可以在Maven中央仓库下载Google Maps API Java SDK。

以下是一个简单的Java代码示例,使用Google Maps API根据经纬度获取地市:

```java

import com.google.maps.GeoApiContext;

import com.google.maps.GeocodingApi;

import com.google.maps.model.GeocodingResult;

import tLng;

import java.io.IOException;

import java.util.List;

public class GeoCoderExample {

public static void main(String[] args) {

String apiKey = "YOUR_API_KEY"; // 请替换为你的API密钥

double latitude = 37.7667; // 示例经纬度

double longitude = -122.4444; // 示例经纬度

try {

GeoApiContext context = new GeoApiContext.Builder()

用Matlab绘制中国行政区划地图

用Matlab绘制中国行政区划地图

⽤Matlab绘制中国⾏政区划地图

步骤1:从⽹站下载数据⽂件。

选择 Country: China,再选择 Shapefile,会下载得到⼀个名为 “gadm36_CHN_shp.zip” 的压缩⽂件。

步骤2:解压数据⽂件。

解压得到⼀系列⽂件,其中 *.shp 是 Matlab 绘图⽤到的。

其中,gadm36_CHN_0.shp、gadm36_CHN_1.shp、gadm36_CHN_2.shp、gadm36_CHN_3.shp,分别表⽰国、省、市、县四级⾏政区划的详细经纬度界线。

步骤3:加载数据⽂件。

使⽤ shaperead 函数可以直接加载 Shapefile 数据⽂件。

ShapeFile = 'D:\data\gadm36_CHN_shp\gadm36_CHN_0.shp';

MapData = shaperead(ShapeFile);

MapData.Geometry

MapData.BoundingBoc

MapData.Lon

t

MapData.GID_0

_0

步骤 App:台湾省地图缺失问题的解决

步骤1-2加载的 <China> 地图,缺少了台湾省,并不是完整的中国!

需要重新执⾏步骤1⾄步骤2,选择“Taiwan”,下载得到台湾省的省、市、县、镇四级⾏政区划地图。

⽽且,台湾省的地图级别设置不对,在步骤3合并CHN 和 TWN 的地图时,需要调整对应的级别,使它的“国”属性消失,才能正常显⽰。

这⾥给出⼀个中国的省级⾏政区划绘制的⽰例:

ShapeFile = 'D:\data\gadm36_CHN_shp\gadm36_CHN_1.shp'; % CHN的省界划分

行政代码与政区互查(通过函数、公式实现)

行政代码与政区互查(通过函数、公式实现)

查询方式:###########

政区名称:行政区划代码(2017.12):车牌代码:经纬度:电话区号:邮政编码:

3、为了方便数据统一处理,把直辖市的区划为县级单位、

1、数据来源于网格,由于政区变迁说明全国行政区与政区代码互政区;行政区划代码(同身份证号前行政区划代码(1996.12):

2、作者为菜鸟,制作方法可能非常

java 经纬度到地图编号的转换

java 经纬度到地图编号的转换

java 经纬度到地图编号的转换

2010-06-24 16:55

好吧= =,纠结了一下午,总算是盆盆啃啃写出来了,只写了1:100万,1:50万,1:25万,1:10万的,剩下的写起来也差不多,不太高兴写了,目前问题是只能区分东西经,不能分南北纬,其实也有笨办法,还是懒得写了,因为没学过正则表达式,如果学过的话提取数字就简单多了。

package mapDivide;

//1:100万的图幅编号

public class Million {

private double latitude; //纬度

private double longitude; //经度

//构造器,输入经纬度

public Million(double latitude, double longitude) {

titude = latitude;

this.longitude = longitude;

}

//如果是东经,北纬

public String ifeast(){

int h=(int)(latitude/4)+1;

int l=(int)(longitude/6)+31;

char c=(char) (h+64);

return c+"-"+l;

}

//如果是西经,北纬

public String ifwest(){

int h=(int)(latitude/4)+1;

int l=30-(int)(longitude/6);

char c=(char) (h+64);

return c+"-"+l;

}

/* //如果是东经,南纬

public String ifeastsouth(){

java 通过经纬度获取地理位置的方法

java 通过经纬度获取地理位置的方法

一、介绍经纬度获取地理位置的背景及意义

在现代社会,地理位置已经成为信息化时代的重要标志之一,它在各

个领域都有着重要的应用价值。而获取地理位置信息的方法也在不断

地发展和完善,其中通过经纬度获取地理位置就是一种常见的方法。

二、经纬度的概念及其在地理位置获取中的作用

1. 经纬度是什么?

经纬度是一种地理坐标系统,它用来表示地球表面上任意一点的位置。经度用来表示东西方向的位置,纬度用来表示南北方向的位置。通过

经纬度,我们可以明确地知道某个地点在地球上的具体位置。

2. 经纬度在地理位置获取中的作用

在现代信息技术中,经纬度被广泛应用于地图、导航、物流等领域。

通过经纬度,可以精确地定位特定的地理位置,从而为各种应用提供

了基础数据。

三、利用Java语言获取经纬度的方法

在Java语言中,获取经纬度是一项常见的任务。以下是一些常见的方法:

1. 使用第三方API

目前市面上有许多第三方的地理位置服务提供商,它们提供了获取经纬度的API接口,开发者可以在自己的Java应用中调用这些API来获取地理位置信息。

2. 使用GPS模块获取经纬度

在一些移动应用中,可以通过无线终端的GPS模块来获取当前设备的经纬度信息。Java语言可以通过系统提供的API来获取GPS信息,并进一步处理得到所需要的经纬度。

3. 信信JS-SDK获取经纬度

对于需要在信信中获取经纬度的应用,可以使用信信提供的JS-SDK 来获取用户的地理位置信息,进而获得经纬度。

四、获取经纬度后的地理位置处理方法

在获取了经纬度之后,需要进一步处理这些地理位置信息,以便于在应用中进行使用。

高德AMAP行政区划边界及经纬度获取

高德AMAP行政区划边界及经纬度获取

<!DOCTYPE HTML>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html;

charset=utf-8">

<title>行政区划边界</title>

<link rel="stylesheet" type="text/css"

href="/Public/css/demo.Default.css" />

<script language="javascript"

src="/maps?v=1.3&key=7de8697669288fc848e 12a08f58d995e"></script>

<script language="javascript">

var mapObj,district;

/*

*初始化地图对象,加载地图

*/

function mapInit(){

mapObj = new AMap.Map("iCenter",{

view: new AMap.View2D({

center:new AMap.LngLat(116.397428,39.90923),//地图中心点

zoom:10 //地图显示的缩放级别

})});

initPolygon();

}

function initPolygon(){

//加载云图层插件

mapObj.plugin('AMap.DistrictSearch', function () {

js经纬度转化为城市的方法 -回复

js经纬度转化为城市的方法 -回复

js经纬度转化为城市的方法-回复

JS经纬度转化为城市的方法

在Web开发中,经常会遇到需要将经纬度转化为城市的需求。这种需求可能是为了展示用户当前所在的城市,或者是根据经纬度来搜索附近的地点。无论是哪种情况,我们都需要一个方法来将经纬度转化为城市名称。下面将逐步介绍如何使用JavaScript来实现这一目标。

第一步:获取经纬度信息

首先,我们需要获取用户的经纬度信息。在Web浏览器中,可以使用Geolocation API来获取用户的地理位置信息。该API通过navigator.geolocation 对象提供了一个getCurrentPosition() 方法,用于获取用户的地理位置。

javascript

navigator.geolocation.getCurrentPosition(function(position) {

var latitude = titude;

var longitude = position.coords.longitude;

console.log(latitude, longitude);

});

上述代码通过getCurrentPosition()方法获取到用户的地理位置信息,并将经纬度打印到控制台。接下来,我们将使用这些经纬度来获取城市名称。

第二步:使用逆地理编码API获取城市信息

接下来,我们需要使用逆地理编码(Reverse Geocoding)的方式,将获取到的经纬度信息转化为城市名称。逆地理编码是一种将地理坐标转化为地址或者地名的过程。在Web开发中,我们可以使用一些API(例如Google Maps Geocoding API或者其他类似的服务),来实现逆地理编码功能。

根据经纬度获取城市名称的方法

根据经纬度获取城市名称的方法

根据经纬度获取城市名称的方法

获取城市名称的方法可以通过反向地理编码来实现。反向地理编码是指根据给定的经纬度坐标,将其转换成对应的地址信息,包括城市名称。

以下是几种常见的获取城市名称的方法:

1.使用在线地理编码服务:

可以使用一些在线地理编码服务,如Google Maps API、百度地图API、高德地图API等,这些服务提供了反向地理编码的功能。通过发送HTTP请求,并携带经纬度参数,服务提供商会返回对应的地址信息,包括城市名称。

例如,使用Google Maps API,可以发送以下HTTP请求:

```

```

其中,将`经度`和`纬度`替换为实际的数值,`YOUR_API_KEY`替换为你的API密钥。服务提供商会返回一个JSON格式的响应,其中包含了地址信息,包括城市名称。

2.使用开源地图库:

一些开源的地图库,如Leaflet、OpenLayers等,也提供了反向地理编码的功能。这些地图库通常需要导入相关的插件,并通过调用相应的API方法来获取地址信息。

例如,使用Leaflet地图库和Leaflet-Geocoder插件,可以使用以下代码来获取地址信息:

```javascript

var geocoder = L.Control.Geocoder.nominatim(;

geocoder.reverse(tLng(纬度, 经度), 10, function(results) var address = results[0]["name"];

var city = results[0]["city"];

java数据转化为经纬度的方法

java数据转化为经纬度的方法

java数据转化为经纬度的方法

Java是一种广泛使用的编程语言,可以用于各种应用程序的开发。在

许多应用程序中,需要将数据转换为经纬度。这是因为经纬度是一种

用于描述地球表面位置的坐标系统,可以用于地图和导航等应用程序。下面介绍几种将Java数据转换为经纬度的方法。

1. 使用Java内置的数学函数

Java内置了许多数学函数,可以用于计算经纬度。例如,可以使用Math.sin()、Math.cos()和Math.atan2()函数来计算经纬度。具体步

骤如下:

1)将数据转换为弧度。例如,如果数据是角度,则需要将其转换为弧度,可以使用Math.toRadians()函数。

2)使用Math.sin()和Math.cos()函数计算纬度和经度。

3)使用Math.atan2()函数计算经度。

下面是一个示例代码:

double lat = 37.7749; // 纬度

double lon = -122.4194; // 经度

// 将角度转换为弧度

double latRad = Math.toRadians(lat);

double lonRad = Math.toRadians(lon);

// 计算纬度和经度

double x = Math.cos(latRad) * Math.cos(lonRad);

double y = Math.cos(latRad) * Math.sin(lonRad);

double z = Math.sin(latRad);

// 计算经度

double lonDeg = Math.atan2(y, x);

java 经纬度转换 简书

java 经纬度转换 简书

java 经纬度转换简书

摘要:

1.经纬度的概念与表示方法

2.经纬度转换的必要性

3.Java 实现经纬度转换的方法

4.经纬度转换的实例

5.总结

正文:

1.经纬度的概念与表示方法

经纬度是地球表面上一个点的精确位置的表示方法。经度表示的是地球表面的东西方向,范围从0°到180°,其中0°表示本初子午线,180°表示国际日期变更线。纬度表示的是地球表面的南北方向,范围从0°到90°,其中0°表示赤道,90°表示南极或北极。

经纬度的表示方法有多种,如度分秒表示法(DDD)、度表示法(DD)、小数度表示法(D.DD)等。度分秒表示法是将一度分为60 分,一分为60 秒,例如:39°13"25"表示39 度13 分25 秒。度表示法是将一度直接换算为小数,例如:39.1325 表示39.1325 度。小数度表示法是将一分换算为小数后再与度相加,例如:39.1325 表示39 度13 分25 秒。

2.经纬度转换的必要性

经纬度转换在许多场景下都有重要的应用,例如地图定位、导航系统、航空航天等领域。由于地球是一个球体,不同地方的经纬度表示的实际地面距离

是不同的。因此,在进行地图投影、导航计算等操作时,需要将经纬度转换为统一的坐标系统,如UTM 坐标系、Albers Equal Area 坐标系等。

3.Java 实现经纬度转换的方法

Java 中有许多库可以用来进行经纬度转换,如jgeo、geoip2 等。下面以jgeo 库为例,演示如何进行经纬度转换。

首先,需要添加jgeo 库的依赖。在Maven 项目的pom.xml 文件中添加如下依赖:

java数据转化为经纬度的方法

java数据转化为经纬度的方法

Java数据转化为经纬度的方法

一、背景介绍

在开发过程中,经常会遇到需要将Java中的数据转化为经纬度的需求。例如,在地图应用中,我们可能需要将某个地点的名称或地址转化为经纬度坐标,以便进行地图标记或路径规划等操作。本文将详细介绍如何使用Java来实现这一功能。

二、使用Geocoding API实现地址转经纬度

1. Geocoding API简介

Google提供了一个强大的Geocoding API,可以将地址或地名转化为经纬度坐标。我们可以通过Java代码调用该API,并解析返回的JSON数据得到经纬度信息。

2. 引入相关依赖库

在使用Geocoding API之前,我们需要先引入相应的依赖库。可以使用Maven或Gradle来管理依赖。

以下是一个使用Maven的示例:

<dependency>

<groupId>com.google.maps</groupId>

<artifactId>google-maps-services</artifactId>

<version>0.2.11</version>

</dependency>

3. 编写Java代码

下面是一个简单的示例代码,演示如何使用Geocoding API将地址转化为经纬度:

import com.google.maps.*;

import com.google.maps.errors.ApiException;

import com.google.maps.model.GeocodingResult;

python 行政区划代码

python 行政区划代码

python 行政区划代码

(原创版)

目录

1.Python 行政区划代码概述

2.Python 行政区划代码的使用方法

3.Python 行政区划代码的获取途径

4.Python 行政区划代码的应用示例

正文

【Python 行政区划代码概述】

Python 行政区划代码是指在 Python 中处理我国行政区划数据的一种编码方式。行政区划代码是国家为了方便行政管理和统计而对各级行政区域进行编码的一种标识符,通常由数字和字母组成。在 Python 中,我们可以利用行政区划代码来获取某个地区的详细信息,如名称、经纬度等。

【Python 行政区划代码的使用方法】

在 Python 中,我们可以通过第三方库来获取和使用行政区划代码。常用的库有“地理信息查询”(geopy)和“行政区划”(admin_Boundaries)。

首先,需要安装相应的库,如:

```

pip install geopy

```

```

pip install admin_Boundaries

```

安装完成后,可以通过以下代码来获取某个地区的行政区划代码:```python

from geopy.geocoders import Nominatim

geolocator = Nominatim(user_agent="示例")

location = geolocator.geocode("上海市")

print(location.admin_code)

```

【Python 行政区划代码的获取途径】

除了使用第三方库,还可以通过国家统计局等官方途径获取行政区划代码。此外,一些数据网站和 API 也提供行政区划代码的数据,如高德地图、百度地图等。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

竭诚为您提供优质文档/双击可除java,经纬度转换行政区域

篇一:geohash算法经纬度转换

geohash算法经纬度转换

geohash在查找周围朋友,lbs中有很多的应用,在网上查找到geohash算法实现分享给大家。

importjava.util.hashmap;

importjava.util.map;

publicclassgeohashkit{

//geohashscharmap

//noasislsos

//oldmacdonalwouldntbehappy

privatestaticchar[]_base32={0,1,2,3,4,5,6,7,

8,9,b,c,d,e,f,g,h,j,k,m,n,

p,q,r,s,t,u,v,w,x,y,z};

privatefinalstaticmap_decodemap=newhashmap();static

{

intsz=_base32.length;

for(inti=0;i _decodemap.put(_base32[i],i);

}

}

privatestaticintprecision=12;

privatestaticint[]bits={16,8,4,2,1};

publicstaticvoidmain(string[]args){

geohashkitghf=newgeohashkit();

stringgc1=ghf.encode(31.277631,120.53916300000003);

stringgc2=ghf.encode(51.4797,-0.0124);

system.out.println(gc1);

system.out.println(gc2);

double[]gd1=ghf.decode(gc1);

double[]gd2=ghf.decode(gc2);

system.out.println(gd1[0]

+","+gd1[1]);

system.out.println(gd2[0]+","+gd2[1]);

}

publicstaticstringencode(doublelatitude,doublelongi

double[]lat_interval={-90.0,90.0};

double[]lon_interval={-180.0,180.0}; stringbuildergeohash=newstringbuilder(); booleanis_even=true;

intbit=0,ch=0;

while(geohash.length() doublemid=0.0; if(is_even){

mid=(lon_interval[0]+lon_interval[1])/2;

ch|=bits[bit];

lon_interval[0]=mid;

}else{

lon_interval[1]=mid;

}

}else{

mid=(lat_interval[0]+lat_interval[1])/2;

if(latitude>mid){

ch|=bits[bit];

lat_interval[0]=mid;

}else{

lat_interval[1]=mid;

}

is_even=is_evenfalse:true;

if(bit bit++;

}else{

geohash.append(_base32[ch]);

bit=0;

ch=0;

}

}

returngeohash.tostring();

}

publicstaticdouble[]decode(stringgeohash){

double[]ge=decode_exactly(geohash);

doublelat,lon,lat_err,lon_err;

lat=ge[0];

lon=ge[1];

lat_err=ge[2];

lon_err=ge[3];

doublelat_precision=math.max(1,math.round(-math.log 10(lat_err)))-1;doublelon_precision=math.max(1,math .round(-math.log10(lon_err)))-1;lat=getprecision(la

t,lat_precision);

lon=getprecision(lon,lon_precision);

returnnewdouble[]{lat,lon};

}

publicstaticdouble[]decode_exactly(stringgeohash){ double[]lat_interval={-90.0,90.0};

double[]lon_interval={-180.0,180.0};

doublelat_err=90.0;

doublelon_err=180.0;

intsz=geohash.length();

intbsz=bits.length;

doublelatitude,longitude;

for(inti=0;i

intcd=_decodemap.get(geohash.charat(i));

for(intz=0;z intmask=bits[z];

if(is_even){

lon_err/=2;

if((cd

}else{

lon_interval[1]=(lon_interval[0]+lon_interval[1])/2;

相关文档
最新文档