根据地名检索该地名的经纬度等信息

问题描述:在地图中根据一个地名来检索该地名的经纬度信息

准备工作:相应的地图服务支持,包括地图数据的支持,arcgis的api包

代码展示:

//需要引入arcgis的api

require([
         "esri.task.FindTask",
	 "esri.task.FindParameters",
	 "esri.task.QueryTask",
	 "esri.task.Query"

	],function(FindTask,FindParameters,QueryTask,Query){

	//第一中通过FindTask,它支持多个图层的查询
	var f = new FindTask("http://server.arcgisonline.com/ArcGIS/rest/services/NGS_Topo_US_2D/MapServer");//arcgis的地图服务,这里只是一个实例
	var params = new FindParameters();
	params.layerIds = [0,1,2,3];  //图层的序号
	params.searchFields = ["NAME"];//要查询的字段,可以是多个
	params.searchText = "北京";  //要查询的内容,这个是一个模糊匹配,会把这个地图服务上所以以“北京”开头的地方都找出来
	params.returnGeometry = true; //是否返回geometry属性值,注意本次要的经纬度就从在这个属性中
	f.execute(params,showResults);  //showResults 是回掉函数,查询返回的值就在这个回掉函数中

	function showResults(results){
	     console.dir(results); //这个就是查询的结果集,打印出来看看下就清楚了
	     for(var i=0;i<results.length;i++){
		var graphic = results[i];  //一个点的信息
		var xy = graphic.feature.geometry;
		var x = xy.x; //经度
		var y = xy.y; //纬度
	     }
	}

	//第二种 QueryTask 这个只能检索一个图层的
	var qt = new QueryTask("http://server.arcgisonline.com/ArcGIS/rest/services/NGS_Topo_US_2D/MapServer/1");
	var q = new Query();
	q.returnGeometry = true;
	q.outFields = ['*']; //返回字段,可以是多个,*表示全部
	q.where = "NAME like '%北京%'" //可以是标准的sql
	qt.execute(q,res);  //res是回掉函数

	function res(resutls){
	     //results 就是返回结果集
	     for(var i=0;i<results.features.length;i++){
		var graphic = results.features[i];
		console.dir(graphic);
		var xy = graphic.geometry;
		var x = xy.x; //经度
		var y = xy.y; //纬度
	     }
	}

});

有问题可以查询arcgis的官方api:https://developers.arcgis.com/javascript/jsapi/

也可以留言交流学习,本人也是刚接触到arcgis

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-08-21 05:02:21

根据地名检索该地名的经纬度等信息的相关文章

android 利用 aapt 解析 apk 的应用名称 包名 版本号 权限等信息

在上传各大市场时发现 apk 上传后能自动解析出应用名称.包名.版本号.使用权限等信息,所以就研究了一下 1 直接解压 apk 解析  AndroidManifest.xml 是不行的,因为 apk 打包时 AndroidManifest.xml 文件被压缩混淆了. 2 主要有两种实现方式 1) 通过 aapt (android asset packaging tool) aapt 是打包.更新资源的一个工具,可以解析出 apk 的资源信息 2) apktool 著名的反编译工具,先反编译出 A

根据地址名显示经纬度

<html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>根据地址查询经纬度</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <script type="text/javascript" src=&qu

将包含经纬度点位信息的Excel表格数据导入到ArcMap中并输出成shapefile

将包含经纬信息的Excel表格数据,导入到ArcMap中并输出成shapefile,再进行后面的操作.使用这种方法可以将每一个包含经纬信息的数据在ArcMap中点出来. 一.准备数据 新建Excel表格,保存时设置后缀名为.xls(即2003Excel的表格).在表格首行建立各字段名,其中要包含经度和纬度的信息,用于在地图中标定位置.录入各记录属性,整理成表. 二.ArcMap中添加x-y事件 在打开的对话框中选择数据表和x.y对应的经度.纬度.选择坐标系统,这里因为我们的x,y对应的数据是经纬

Android 利用 aapt 解析 apk 得到应用名称 包名 版本号 权限等信息

转:http://www.cnblogs.com/lesliefang/p/3864756.html 在上传各大市场时发现 apk 上传后能自动解析出应用名称.包名.版本号.使用权限等信息,所以就研究了一下 1 直接解压 apk 解析  AndroidManifest.xml 是不行的,因为 apk 打包时 AndroidManifest.xml 文件被压缩混淆了. 2 主要有两种实现方式 1) 通过 aapt (android asset packaging tool) aapt 是打包.更新

谷歌地图接口,实现点击标记获取经纬度等信息。

Google map api Author chenbin Date 12/12 Email [email protected] 标记在地图上的位置 并且获取当前位置的经纬度 <!DOCTYPE html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"/> <title>Google Maps

[WPF] 浏览百度地图并获取经纬度地址信息

项目中需要利用登记的区域和地址在百度地图上定位,并获取该地址的经纬度. 本次功能对我来说主要难点如下:1.百度地图API的基本使用方法,请首选使用百度地图的JavaScript大众版(PS:之前使用WebAPI会导致WebBrowser浏览出现很多问题):JavaScript大众版网址:http://developer.baidu.com/map/index.php?title=jspopular2.WPF WebBrowser控件中的JavaScript与WPF的交互:3.WPF WebBro

完整版java读取apk、ipa包名、版本名、版本号等信息

有时候,我们上传apk或者是ipa文件的时候,是需要读取到里面的一些信息的,比如软件的包名,以及其版本信息等.在网上搜索了一下资料 , 找了很多版本,对于apk文件的版本号,一直读取不到,在这里,笔者自己总结了,读取apk.ipa文件的一些代码,大家可以参考下,去其糟粕,取其精华.以便适用于自己的需求. 下面会提供源码给大家,我用的开发工具是eclipse,直接导入就可以,jar包也是我已经下载好的,大家可以免积分拿去.本来里面是有2个apk.2个ipa文件提供测试的,但是由于文件太大,上传不了

PCB MS SQL 通过表名查询各字段信息和vb.net C# module类代码

正式表:各字段内容获取 DECLARE @tabname VARCHAR(20) SET @tabname = 'ppeflow' SELECT @tabname AS '表名' ,(CASE WHEN T.name = 'varchar' or T.name = 'char' THEN T.name + '(' + CAST(COLUMNPROPERTY(C.id,C.name,'PRECISION') as VARCHAR(20))+ ')' WHEN T.name = 'numeric'

Java 采用泛型 实现通过学员英文名查找学员对应信息

|--需求说明 |--实现思路 1.创建学员类,用于初始化信息 2.采用map储存数据,key储存学员的英文名,value储存学员的其他信息 3.通过判断map中有没有用户输入的英文名来判断是否给出学员信息 |--代码内容 1 package kehou; 2 3 /** 4 * @auther::9527 5 * @Description: 学生类 6 * @program: gaoJiTeXing 7 * @create: 2019-07-27 10:36 8 */ 9 public cla