zoukankan      html  css  js  c++  java
  • 基于 geojson数据类型面转线Transforms Polygons and MultiPolygons to LineStrings.

        function flatten(array) {
            return [].concat.apply([], array);
        }
    
        function polygonToLineString(coordinates, properties) {
            return coordinates.map(function(coordinates) {
                return turf.lineString(coordinates, properties);
            });
        }
    
        function multiPolygonToLineString(coordinates, properties) {
            return flatten(coordinates.map(function(coordinates) {
                return polygonToLineString(coordinates, properties);
            }));
        }
    
        function toLineString(feature) {
            var geometry = feature.geometry,
                properties = feature.properties;
    
            switch (geometry.type) {
                case 'Polygon':
                    return polygonToLineString(geometry.coordinates, properties);
                case 'MultiPolygon':
                    return multiPolygonToLineString(geometry.coordinates, properties);
                default:
                    return feature;
            }
        }
        /**
         * Transforms Polygons and MultiPolygons to LineStrings.
         *
         * @module turf/polygonToLine
         * @category transformation
         * @param {Object} geojson any GeoJSON object
         * @returns {Object} FeatureCollection where
         * Polygons and MultiPolygons transformed to LineStrings.
         */
        function polygon2line(geojson) {
            var features = geojson.features.map(toLineString);
            return turf.featureCollection(flatten(features));
        }
    

      

  • 相关阅读:
    python之高阶函数
    [第二版]多线程的发送与接收
    基本函数与结构
    unp.h
    gdb调试命令
    System V共享内存区
    Posix 共享内存区
    System V信号量
    Posix 信号量
    记录锁
  • 原文地址:https://www.cnblogs.com/hillgisman/p/6178541.html
Copyright © 2011-2022 走看看