GP服务--缓冲区

1. 效果图

2. GP服务
3. 代码
			require(["esri/map",
            "esri/geometry/Point",
            "esri/graphic",
            "esri/symbols/SimpleMarkerSymbol",
            "esri/symbols/SimpleLineSymbol",
            "esri/symbols/SimpleFillSymbol",
            "esri/tasks/Geoprocessor",
            "esri/tasks/FeatureSet",
            "esri/tasks/LinearUnit",
            "dojo/domReady!"], function (Map, Point, Graphic, SimpleMarkerSymbol, SimpleLineSymbol, SimpleFillSymbol, Geoprocessor, FeatureSet, LinearUnit) {
                map = new Map("map", {
                    basemap: "osm",
                    zoom: 5
                });
                map.on("click", function (evt) {
                    var symbol = new SimpleMarkerSymbol(SimpleMarkerSymbol.STYLE_CROSS, 12, new SimpleLineSymbol(SimpleLineSymbol.STYLE_SOLID, new dojo.Color([255, 0, 0]), 2), new dojo.Color([0, 255, 0, 0.25]));
                    var graphic = new Graphic(evt.mapPoint, symbol);
                    map.graphics.add(graphic);
                    var gp = new Geoprocessor("http://localhost:6080/arcgis/rest/services/webgis/BufferGP/GPServer/BufferModel");

                    var featureSet = new FeatureSet();
                    featureSet.fields = [];
                    featureSet.features = [graphic];

                    var dis = new LinearUnit({
                        "distance": 10000,
                        "units": "esriMeters"
                    });

                    // input dis对应服务中的参数名称
                    var bufferParams = {
                        input: featureSet,
                        dis: dis
                    };
                    //submitJob
                    gp.execute(bufferParams, showResult, function (err) {
                        console.log(err)
                    })
                })
                function showResult(results) {
                    console.log(results)
                    var features = results[0].value.features;
                    for (var i = 0; i < features.length; i++) {
                        var geo = features[i].geometry;
                        var line = new SimpleLineSymbol(SimpleLineSymbol.STYLE_DASHDOT, new dojo.Color([255, 0, 0]), 1);
                        var fill = new SimpleFillSymbol(SimpleFillSymbol.STYLE_SOLID, line, new dojo.Color([255, 255, 0, 0.25]));
                        map.graphics.add(new Graphic(geo, fill));
                    }
                }
            });
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值