如何利用arcgis api for javascript在graphicslayer绘制点线面

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何利用arcgis api for javascript在graphicslayer绘制点线面相关的知识,希望对你有一定的参考价值。

参考技术A 建议你查看arcgis api for javascript官网,有详细的例子可以查看:
http://jshelp.thinkgis.cn/jssamples/toolbar_edit.html

arcgis api for js入门开发系列十九图层在线编辑

前言

关于本篇功能实现用到的 api 涉及类看不懂的,请参照 esri 官网的 arcgis api 3.x for js:esri 官网 api,里面详细的介绍 arcgis api 3.x 各个类的介绍,还有就是在线例子:esri 官网在线例子,这个也是学习 arcgis api 3.x 的好素材。

本篇主要讲述的是利用 arcgis api 3.x 实现图层在线编辑功能模块,效果图如下:




 

实现思路

  • arcgis serve r发布的 FeatureServer 服务提供的图层在线编辑能力
  • 实现的在线编辑(增删改),主要是通过前端 ajax 请求后台 FeatureServer 服务来实现的
  1. http://120.199.78.138:6080/arcgis/rest/services/dlsde/FeatureServer/0/updateFeatures
public void ProcessRequest (HttpContext context) {
string featureserverurl = context.Request.Params["featureserverurl"];
string features = context.Request.Params["features"];
string param = "features=" + features + "&f=json";
string url = featureserverurl + "/updateFeatures";
string ret = PostDataToUrl(param, url, "application/x-www-form-urlencoded");
 
context.Response.Write(ret);
}

  1. http://120.199.78.138:6080/arcgis/rest/services/dlsde/FeatureServer/0/addFeatures
public void ProcessRequest (HttpContext context) {
string featureserverurl = context.Request.Params["featureserverurl"];
string features = context.Request.Params["features"];
string param = "features=" + features + "&f=json";
string url = featureserverurl + "/addFeatures";
string ret = PostDataToUrl(param, url, "application/x-www-form-urlencoded");
 
context.Response.Write(ret);
}

  1. http://120.199.78.138:6080/arcgis/rest/services/dlsde/FeatureServer/0/deleteFeatures
public void ProcessRequest (HttpContext context) {
string featureserverurl = context.Request.Params["featureserverurl"];
string id = context.Request.Params["OBJECTID"];
string param = "where=OBJECTID=" + id + "&f=json";
string url = featureserverurl + "/deleteFeatures";
string ret = PostDataToUrl(param, url, "application/x-www-form-urlencoded");
 
context.Response.Write(ret);
context.Response.End();
}

  • 前端 ajax 请求

更多的详情见GIS之家小专栏

对本专栏感兴趣的话,可以关注一波

 

以上是关于如何利用arcgis api for javascript在graphicslayer绘制点线面的主要内容,如果未能解决你的问题,请参考以下文章

ArcGIS API For Javascript之查询功能

ArcGIS API For Javascript之调用动态地图服务

arcgis-api-for-js-之创建图层和添加图层(1)

ArcGIS API for JavaScript 与Dojo的关系

Arcgis api for javascript学习笔记-三维地图的飞行效果

arcgis api for js入门开发系列十九图层在线编辑