在地图上的位置,然后我想详细说明他所居住的城市
Posted
技术标签:
【中文标题】在地图上的位置,然后我想详细说明他所居住的城市【英文标题】:position on Map then i want to give certain details on the city he lives in 【发布时间】:2021-01-08 09:37:59 【问题描述】:我需要一个方向,因为我不知道如何寻找它,或者基本上如何去做。 每次用户按下定位按钮时,它都会定位他的位置(已经完成了这部分) 然后,我想提供有关他所在城市的某些详细信息(在我的情况下,我想提供该城市地区感染人数的电晕详细信息) 例如:假设用户住在纽约,然后他点击定位位置,这给了他他所在地区的病人数量。 我将此网站用于我的代码: https://developers.arcgis.com/javascript/3/jssamples/widget_locate.html 我的代码:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no" />
<title>OpenStreetMap</title>
<link rel="stylesheet" href="https://js.arcgis.com/3.35/esri/css/esri.css">
<style>
html, body, #esri-map-container
padding: 0px;
margin: 0px;
height: 100%;
width: 800px;
height: 500px;
#LocateButton
position: absolute;
top: 95px;
left: 20px;
z-index: 50;
</style>
<script src="https://js.arcgis.com/3.35/"></script>
<script>
var map;
require([
"esri/map",
"esri/dijit/LocateButton",
"dojo/domReady!"
], function(Map, LocateButton)
map = new Map("map",
center: [-56.049, 38.485],
zoom: 3,
basemap: "streets"
);
geoLocate = new LocateButton(
map: map
, "LocateButton");
geoLocate.startup();
);
</script>
</head>
<body>
<div id="map" class="map">
<div id="LocateButton"></div>
</body>
</html>
所以是的,我真的不知道在哪里搜索,如果你可以指导我或帮助我弄清楚我应该如何做到这一点。
【问题讨论】:
【参考方案1】:您可以使用“定位”事件获取有关检测到的位置的一些信息数据。 在那里,您将找到该位置的坐标等等。我个人尝试将坐标转换为地址,但目前没有太多的 ArcGIS 支持。如果您通过 Google 的 API 找到方法,也许您最终能够通过 ArcGIS 给您的坐标获得城市。
geoLocate.on('locate', (data) =>
console.log(data);
);
你会发现我上面提到的事件的一个工作示例here。
【讨论】:
嘿,谢谢您的评论,我是通过源代码查看数据吗?我想在日志中获取什么样的数据?以及如何使用它来显示该地区的病人数量?对不起,如果你解释了,我不明白。 您可能会看到 ArcGIS API 提供的一些数据。例如用户位置的坐标。问题是您需要确切的地址才能显示“患病人数”。这是尝试但我失败的地方。您应该获取用户位置的纬度、经度,然后以某种方式将其转换为地址,以便获取城市。 嘿抱歉耽搁了,请问我如何在定位数据中使用这个坐标?我想把它放在里面让我们说:让纬度:数据坐标让龙:数据坐标我怎么能达到呢?将坐标信息放入变量或其他东西中 @idanhalflet Lat = data.position.coords.latitude;
好吧,我试试看,请问我在哪里可以找到有关 geolocate.on 和其他东西的更多信息?所以我可以阅读自己而不打扰你以上是关于在地图上的位置,然后我想详细说明他所居住的城市的主要内容,如果未能解决你的问题,请参考以下文章