- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在使用 arcgis javascript apis 3.5,我的代码是
function init() {
map = new esri.Map("mapDiv", {
basemap: "streets",
center: [-112.07102547942392, 46.75909704205151],
zoom: 12,
slider: false
});
var featureLayer = new esri.layers.FeatureLayer("http://abc/arcgis/rest/services/MTARNG/MapServer/0", {
mode: esri.layers.FeatureLayer.MODE_SNAPSHOT,
outFields: ["*"]
});
为了在这一层进行搜索,我使用的是 findtask。代码在这里
findTask = new esri.tasks.FindTask("http://abc/arcgis/rest/services/MTARNG/MapServer");
findParams = new esri.tasks.FindParameters();
findParams.returnGeometry = true;
findParams.layerIds = [0];
findParams.searchFields = ["LOCATION", "PROJECT_PARCEL_NAME"];
findParams.searchText = "north portion";
findTask.execute(findParams, showResults);
function showResults(results) {
var markerSymbol = new esri.symbol.SimpleMarkerSymbol(esri.symbol.SimpleMarkerSymbol.STYLE_SQUARE, 10, new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID, new dojo.Color([255, 0, 0]), 1), new dojo.Color([0, 255, 0, 0.25]));
map.graphics.clear();
dojo.forEach(results, function (result) {
var graphic = result.feature;
if (graphic.geometry != null) {
switch (graphic.geometry.type) {
case "point":
graphic.setSymbol(markerSymbol);
break;
}
}
map.graphics.add(graphic);
});
}
所以它在 map 中添加了特征,但是在错误的地方,就像在图像中一样![图中特征位置不同,图形位置不同][1]
对不起,我没有足够的声望点来发布图片?请检查我的照片我已经用我的照片替换了图片
我分析然后我开始知道 wkid 的结果是负责任的。我检查了wkid。我的图层有 wkid 编号“26912”图形层的 wkid 号为 4326。
所以我会做什么,我只是尝试更改 wkid,但它不起作用。我正在以正确的方式工作或我必须做的任何其他事情。
提前致谢。
最佳答案
图形层从 map 获取它的 wkid 并且 map (默认情况下)将它的 wkid 设置为您加载的第一个栅格层的 wkid,在您的情况下为 basemap 。如您所见,这是 4326,ESRI 将其用于所有 basemap (我认为)。您无法更改 map 的 wkid,因为无法重新投影栅格图层(平铺图层)。
解决这个问题的一种方法是让 FindTask 在您想要的 wkid 中返回它的结果,例如4326. 为此,请使用 FindParameters 的 outSpatialReference:
findParams.outSpatialReference = new esri.SpatialReference({wkid:4326});;
或者,直接从 map 上获取:
findParams.outSpatialReference = map.spatialReference;
结果应该在返回之前由服务器重新投影到 4326,因此在正确的系统中添加到 map 图形层。
关于javascript - ArcGis javascript api,需要修改Graphics层的Wkid,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17058843/
我有两个 shapefile。一种是有交通量数据的街道 map ,另一种是没有交通量的详细街道 map (精确 map )。 当我将带有交通量数据的街道 map 与没有交通量的详细街道 map 进行比
关闭。这个问题是off-topic .它目前不接受答案。 想改善这个问题吗? Update the question所以它是 on-topic对于堆栈溢出。 9年前关闭。 Improve this q
我注意到 Arc Gis map 渲染速度非常慢。当你缩放时,它呈现得很慢。当您平移时,它呈现缓慢。有没有人有任何关于使 map 呈现速度更快的建议,类似于谷歌地图和微软虚拟地球。 最佳答案 动态 m
我有几个带有大约 100-150 个特征的压缩 shapefile。我正在尝试将它们添加到 ArcGIS Online(每个 shapefile 接受少于 1000 个要素)但无法这样做,这表明压缩的
我正在尝试使用 react-arcgis npm 向 arcgis 添加一个图层, esriPromise(["esri/layers/TileLayer"]).then(([ TileLayer ]
我正在使用 javascript 在 web map 上显示要素图层的标签和要素。要素图层成功在 arcgis 工具中显示标签,而不是在 web map 上显示标签。 谁能帮我解决这个问题吗?我正在尝
我有从驻留在目录托管服务器中的 ArcGIS 生成的形状文件列表,请注意该服务器不是 ArcGIS 服务器并且形状文件未发布。 是否可以使用 ArcGIS JS API 将此形状文件作为图层(要素图层
去年的某个时候,当我们使用 ArcGIS 9.3 时,我在 Visual Studio 2008 中编写了一个 C# 程序来遍历文件夹中的所有 MXD 文件,检查所有图层源,如果错误或不正确则替换它们
是否可以指定 ESRI basemap 图库 (esri/dijit/BasemapGallery) 使用哪些 ArcGIS basemap ? 将 showArcGISBasemaps 设置为 tr
我是 Eclipse 的新手。我打算创建一个 ArcGIS Android 应用程序,但目前我正在逐步学习它。我有一个问题,“ArcGIS Runtime SDK for Android”和“ArcG
如何在启用混淆器的情况下使用 com.esri.arcgis.android:arcgis-android:10.2.6-2?我在努力 -keep class com.esri.** { *; } -
我遵循this guide将ArcGIS map 添加到我的应用程序中,但是没有用。我收到以下错误: Error: Failed to resolve: com.esri.arcgis.android
我正在尝试开发我自己的 map 服务,然后将我生成的图像显示到 ARCGIS map 查看器中......无论如何,我的 *.ashx 服务读取 ARCGIS Tile URL 看起来像“http:/
我在一个多边形 shapefile 中有一个不规则的三角形网格。这些单元格的主题是仅显示高于我的“兴趣”阈值水平的三角形。可见的相邻三角形被认为是真实的。需要删除空间隔离的三角形,因为它们可能是虚假的
我被困住了,试图使用 ArcGIS 绘制一个简单的圆形缓冲区。以下是我设置 basemap 的方法: dojo.require("esri.map"); dojo.require("esri.task
我正在使用 JavaScript 编写一个程序,该程序通过 ArcGIS REST API 连接到本地 ArcGIS 服务器并加载 map 。 获取服务的 URL 是 let xmlhttp = ne
我想开发 Arcgis for android 和 web 服务,但我不知道它有 API 吗?如果有,是否可以在我服务器上收集的经纬度 map 上进行标记(如谷歌地图 API)? 谢谢卡:)) 最佳答
我刚刚偶然发现了 Backgroundworker 对象,它似乎是我正在寻找的工具,可以让我的 GUI 在执行计算时做出响应。我正在为 ArcGIS 编写 IO 插件。 我正在 ArcGIS 之外进行
我正在尝试使用 ArcGIS JavaScript API在 Angular 应用程序中。如我所见,它使用 Dojo。所以,我正在尝试从 Angular 指令初始化 ArcGIS,如下所示: li
在 Microsoft SQL 中,我可以使用 GETDATE() 函数作为 DATETIME 字段的默认值。我希望能够对 ArcGIS 地理数据库中的日期字段执行相同类型的操作。这可能吗,还是我仅限
我是一名优秀的程序员,十分优秀!