Arcgis获取服务中的数据

本文介绍了一种使用JavaScript和ArcGIS API查询并获取ArcGIS Server地图服务图层字段名称的方法。通过发送JSON请求到指定的服务URL,可以解析返回的数据并输出所有字段的信息,适用于需要动态获取地理信息系统中图层属性的场景。
<!DOCTYPE html>
<html>
<head>
    <title>Get ArcGIS Server Map Service Layer Field Names</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <link rel="stylesheet" href="https://js.arcgis.com/3.27/esri/css/esri.css">
    <script src="https://js.arcgis.com/3.27/"></script>
    <script>
        require(["esri/request", "dojo/domReady!"], function( esriRequest) {
            var url = "图层地址"
            var requestHandle = esriRequest({
                "url": url,
                "content": {
                    "f": "json"
                },
                "callbackParamName": "callback"
            });
            requestHandle.then(requestSucceeded, requestFailed);
            function requestSucceeded(response, io){
                if ( response.hasOwnProperty("fields") ) {
                    console.log(response.fields);
                } else {
                    console.log("查询不到字段,请检查URL是否正确")
                }

            }
            function requestFailed(error, io){
                console.log(error)
                console.log(io)
            }
        });
    </script>

</head>
<body>
</body>
</html>

 

### 如何使用 ArcGIS 获取 DEM 数据 #### 使用 ArcGIS Online 下载 DEM 数据 ArcGIS 提供了便捷的方式让用户能够下载和访问全球范围内的数字高程模型 (DEM) 数据。用户可以通过 ArcGIS Online 平台中的 Living Atlas 资源来获取这些数据。 ```python import arcpy from arcgis.gis import GIS # 登录到 ArcGIS Online 或者 Portal for ArcGIS gis = GIS("https://www.arcgis.com", "username", "password") # 搜索并下载 DEM 数据 search_result = gis.content.search(query="Digital Elevation Model", item_type="Scene Layer") for result in search_result: print(f"Title: {result.title}, Type: {result.type}") if 'WorldElevation' in result.title: elevation_layer = result.layers[0].url ``` 此代码片段展示了如何连接至 ArcGIS Online,并搜索名为 “Digital Elevation Model” 的场景图层,从中选取合适的 DEM 图层 URL 进行后续处理[^1]。 #### 利用 ArcGIS Pro 中的工具创建自定义 DEM 除了直接从网络资源下载现成的数据外,还可以利用已有的矢量或栅格数据构建自己的 DEM 文件。例如,当拥有一系列离散点位的高度测量值时,可采用 TIN(不规则三角网)方法建立表面模型;对于规则网格形式分布的数据,则可以直接转存为 TIFF 等常见格式保存下来作为新的 DEM 文件。 ```python arcpy.management.CreateTin( out_tin="C:/output/my_dem", spatial_reference=None, in_features=[["points.shp", "Shape.Z"]], constrained_delaunay="NO_CONSTRAINED_DELAUNAY" ) # 将 TIN 转换为栅格图像 arcpy.conversion.TinRaster( in_tin="my_dem", out_raster="dem.tif", method="LINEAR", sample_distance=50 ) ``` 上述 Python 代码说明了怎样基于一组具有 Z 值的空间特征对象生成 TIN 表面结构,并进一步将其转化为标准的 GeoTIFF 类型 DEM 输出文件[^4]。 #### 导入外部来源的 DEM 数据 如果已经拥有来自其他平台提供的 DEM 文件,比如 USGS Earth Explorer 上发布的 SRTM 数据集,那么只需要按照常规流程加载本地磁盘上的对应文件即可完成导入工作。支持读取多种流行格式如 .tif, .img 及 ESRI Grid 格式的输入。 ```python # 添加现有 raster 至当前 map document mxd = arcpy.mapping.MapDocument("CURRENT") df = mxd.activeDataFrame rasterLayer = arcpy.MakeRasterLayer_management(r"C:\data\srtm_39_04.img", "srtm_elevations") arcpy.mapping.AddLayer(df, rasterLayer.getOutput(0)) del mxd, df, rasterLayer ``` 这段脚本实现了将指定路径下的影像文件添加进当前打开的地图文档中显示出来,方便直观查看所获得的 DEM 地形信息[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值