0

如何在 ArcGIS 中获取两个站点之间的行驶长度?我正在将来自 RouteTask 服务的路线放在地图上,并且也想从该响应中获取长度。我曾考虑过在 DirectionsFeatureSet 中进行一些迭代,但我已经看到我所做的完全是胡说八道。

        var directions = solveResult[0].directions;
        console.log(directions);
        var length = 0;
        var location = 0;
        var obj = {};
        $.each(directions.features, function (ind, val) {
            var txt = val.attributes.text;
            var indexOfLocation = txt.indexOf('Location');
            if (indexOfLocation != -1) {
                var digitTransform = txt.substring(indexOfLocation + 9);
                var digit = "";
                for (var i = 0; i < digitTransform.length; i++) {
                    var char = digitTransform[i];
                    if (isNumber(char)) {
                        digit += char;
                    } else break;
                }

            }
        });

这就是我已经做过的,没有任何意义。

在 Google Maps API 中很明显 - 每条腿都有自己的长度。在 ArcGIS 响应中,我没有看到这种简单的方法。

4

1 回答 1

1

长度可用作每个返回特征的属性。因此,给定您的方向变量,以下将为您提供路线第一段的长度:

directions.features[0].attributes.length

于 2013-10-28T11:36:15.950 回答