esri/tasks/BufferParameters类

define("esri/tasks/BufferParameters",
       ["dojo/_base/declare", "dojo/_base/lang", "dojo/_base/array", "dojo/_base/json", "dojo/has", "esri/kernel", "esri/geometry/Polygon", "esri/geometry/jsonUtils"],
    function (_baseDeclare, _baseLang, _baseArray, _baseJson, dojoHas, esriKernel, geometryPolygon, geometryJsonUtils) {
        var _9 = _baseDeclare(null, {
            declaredClass:"esri.tasks.BufferParameters",
            geometries:null,
            outSpatialReference:null,
            bufferSpatialReference:null,
            distances:null,
            unit:null,
            unionResults:false,
            geodesic:false,
            toJson:function () {
                var jsonObj = {
                    unit:this.unit,
                    unionResults:this.unionResults,
                    geodesic:this.geodesic
                },
                distances = this.distances,
                outSpatialReference = this.outSpatialReference,
                bufferSpatialReference = this.bufferSpatialReference;

                var _d = _baseArray.map(this.geometries, function (_e) {
                    _e = (_e.type === "extent") ? this._extentToPolygon(_e) : _e;
                    return _e.toJson();
                }, this);
                var geometries = this.geometries;
                if (geometries && geometries.length > 0) {
                    var _10 = geometries[0].type === "extent" ? "esriGeometryPolygon" : geometryJsonUtils.getJsonType(geometries[0]);
                    jsonObj.geometries = _baseJson.toJson({geometryType:_10, geometries:_d});
                    jsonObj.inSR = geometries[0].spatialReference.wkid ? geometries[0].spatialReference.wkid : _baseJson.toJson(geometries[0].spatialReference.toJson());
                }
                if (distances) {
                    jsonObj.distances = distances.join(",");
                }
                if (outSpatialReference) {
                    jsonObj.outSR = outSpatialReference.wkid ? outSpatialReference.wkid : _baseJson.toJson(outSpatialReference.toJson());
                }
                if (bufferSpatialReference) {
                    jsonObj.bufferSR = bufferSpatialReference.wkid ? bufferSpatialReference.wkid : _baseJson.toJson(bufferSpatialReference.toJson());
                }
                return jsonObj;
            }, _extentToPolygon:function (_11) {
                var _12 = _11.xmin, _13 = _11.ymin, _14 = _11.xmax, _15 = _11.ymax;
                return new geometryPolygon({"rings":[
                    [
                        [_12, _13],
                        [_12, _15],
                        [_14, _15],
                        [_14, _13],
                        [_12, _13]
                    ]
                ], "spatialReference":_11.spatialReference.toJson()});
            }});
            if (dojoHas("extend-esri")) {
                _baseLang.setObject("tasks.BufferParameters", _9, esriKernel);
            }
            return _9;
        });

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值