Class SpatialAnalysis

Hierarchy

  • SpatialAnalysis

Constructors

Properties

geoUtil: {
    _multiPolygonClip: ((polyLine, clipLine) => FeatureCollection<Polygon, {
        [name: string]: any;
    }>);
    _singlePolygonClip: ((polyLine, clipLine) => FeatureCollection<Polygon, {
        [name: string]: any;
    }>);
    connectLine: ((line1, line2) => Feature<LineString, {
        [name: string]: any;
    }>);
    getIntersectPoints: ((line1, line2) => FeatureCollection<Point, {
        [name: string]: any;
    }>);
    isOnLine: ((point, line) => boolean);
    multiPolygon2polygons: ((multiPolygon) => any[]);
    polygonClipByLine: ((polygon, clipLine) => any);
    polygons2MultiPolygon: ((geoJson) => {
        features: {
            geometry: {
                coordinates: any[];
                type: string;
            };
            properties: {};
            type: string;
        }[];
        type: string;
    });
    unionPolygon: ((polygons) => any);
} = ...

geoJson数据处理模块(需要引入turf.js) 输入输出数据均为标准geoJson格式

Type declaration

  • _multiPolygonClip: ((polyLine, clipLine) => FeatureCollection<Polygon, {
        [name: string]: any;
    }>)
      • (polyLine, clipLine): FeatureCollection<Polygon, {
            [name: string]: any;
        }>
      • Parameters

        • polyLine: any
        • clipLine: any

        Returns FeatureCollection<Polygon, {
            [name: string]: any;
        }>

  • _singlePolygonClip: ((polyLine, clipLine) => FeatureCollection<Polygon, {
        [name: string]: any;
    }>)
      • (polyLine, clipLine): FeatureCollection<Polygon, {
            [name: string]: any;
        }>
      • Parameters

        • polyLine: any
        • clipLine: any

        Returns FeatureCollection<Polygon, {
            [name: string]: any;
        }>

  • connectLine: ((line1, line2) => Feature<LineString, {
        [name: string]: any;
    }>)
      • (line1, line2): Feature<LineString, {
            [name: string]: any;
        }>
      • 连接两条线 方法会将两条线段最近的一段直接连接

        Parameters

        • line1: any
        • line2: any

        Returns Feature<LineString, {
            [name: string]: any;
        }>

  • getIntersectPoints: ((line1, line2) => FeatureCollection<Point, {
        [name: string]: any;
    }>)
      • (line1, line2): FeatureCollection<Point, {
            [name: string]: any;
        }>
      • 获得两条线交点

        Parameters

        • line1: any
        • line2: any

        Returns FeatureCollection<Point, {
            [name: string]: any;
        }>

  • isOnLine: ((point, line) => boolean)
      • (point, line): boolean
      • 判断点是否在线里面 注:线组成的坐标对比

        Parameters

        • point: any
        • line: any

        Returns boolean

  • multiPolygon2polygons: ((multiPolygon) => any[])
      • (multiPolygon): any[]
      • multiPolygon转polygons,不涉及属性

        Parameters

        • multiPolygon: any

        Returns any[]

  • polygonClipByLine: ((polygon, clipLine) => any)
      • (polygon, clipLine): any
      • 线分割面 面类型只能是polygon 但可以是环 注:线与多边形必须有两个交点

        Parameters

        • polygon: any
        • clipLine: any

        Returns any

        polygon

  • polygons2MultiPolygon: ((geoJson) => {
        features: {
            geometry: {
                coordinates: any[];
                type: string;
            };
            properties: {};
            type: string;
        }[];
        type: string;
    })
      • (geoJson): {
            features: {
                geometry: {
                    coordinates: any[];
                    type: string;
                };
                properties: {};
                type: string;
            }[];
            type: string;
        }
      • polygons转multiPolygon,不涉及属性,只输出属性为{} 考虑polygons中就存在多面的情况

        Parameters

        • geoJson: any

        Returns {
            features: {
                geometry: {
                    coordinates: any[];
                    type: string;
                };
                properties: {};
                type: string;
            }[];
            type: string;
        }

        • features: {
              geometry: {
                  coordinates: any[];
                  type: string;
              };
              properties: {};
              type: string;
          }[]
        • type: string
  • unionPolygon: ((polygons) => any)
      • (polygons): any
      • 合并多边形

        Parameters

        • polygons: any

        Returns any

        polygon

Methods

  • : 按线坐标指定长度返回数组

    Parameters

    • coord: any

      线的坐标点

    • distance: any

      指定长度 默认1 单位km

    Returns any[]

    点数组

  • 二维数组去重

    Parameters

    • arr: any

    Returns any[]

    去重后的数组

  • : 获取一条直线应用 贝塞尔算法 (opens new window)返回一个贝塞尔曲线。

    Parameters

    • line: Feature<Geometry> | LineString
    • options: {
          resolution: 10000;
          sharpness: 0.85;
      }
      • resolution: 10000

        点之间的时间(毫秒)默认值 10000

      • sharpness: 0.85

        样条曲线之间的路径弯曲度的度量 默认值 0.85

    Returns Feature<Geometry>

    lineData

  • 包含,feature包含featureList中的要素

    Parameters

    • feature: any

      范围

    • featureList: any

      查询的数据列表

    Returns any[]

    包含的featureList

  • 判断线线是否相交

    Parameters

    • _line1: Feature<Geometry>
    • _line2: Feature<Geometry>

    Returns boolean

  • : 比较相同维度的两个几何图形,如果它们的交集集产生的几何图形与两个几何图形不同,但维度相同,则返回true

    Parameters

    • f1: Feature<Geometry>
    • f2: Feature<Geometry>

    Returns boolean

  • : 获取一个点和一个多边形或多个多边形,并确定该点是否位于该多边形内部。多边形可以是凸的,也可以是凹的。

    Parameters

    • f1: Feature<Geometry>
    • f2: Feature<Geometry>

    Returns boolean

  • 判断点是否在线上

    Parameters

    • _point: Feature<Geometry>
    • _line: Feature<Geometry>

    Returns boolean

  • : 缓冲区分析

    Parameters

    • feature: any
    • Optional distance: number = 5

      distance 缓冲距离,单位米

    Returns Feature<Geometry>

  • : 创建多边形网格

    Parameters

    • type: any

      范围datagridType.point hex square triangle

    • option: {
          box: number[];
          cellSide: number;
      } = ...

      { box: [0, 0, 0, 0], cellSide: 50 } box 生成四角范围【minLng,minLat,maxLng,maxLat】 cellSide m单位 默认50

      • box: number[]
      • cellSide: number

    Returns any[]

    要素数组

  • : 创建泰森多边形

    Parameters

    • type: string

      范围pointToPolygonType.voronoi tin convex

    • featureList: Feature<Geometry>[]

      参与运算的点数据数组

    • Optional strokecolor: string

      可选 边框色

    • Optional fillcolor: string

      可选 填充色

    Returns any[]

    包含的featureList

  • 对传入的路径集合 进行去重并分段添加虚拟点处理后返回

    Parameters

    • path: any

      路径数组

    • segmentLength: any

      分割长度

    Returns any

  • : 通过从第一个多边形剪裁第二个多边形来查找两个多边形之间的差异。

    Parameters

    • feature1: Feature<Geometry>
    • feature2: Feature<Geometry>

    Returns Feature<Geometry>

    feature

  • :转为geoJson格式,元数据为3857转为4326

    Parameters

    • Feature: Feature<Geometry>

    Returns any

    返回的是个json Feature<Geometry, { [name: string]: any;} "EPSG:4326" Object.

  • 转为geoJson格式,不改变坐标系

    Parameters

    • Feature: Feature<Geometry>

    Returns Feature<Geometry, {
        [name: string]: any;
    }>

    返回的是个json Feature<Geometry, { [name: string]: any;}

  • 转为geoJson数组格式,适用于数组转换

    Parameters

    • Feature: Feature<Geometry>[]

    Returns FeatureCollection<Geometry, {
        [name: string]: any;
    }>

    返回的是个json Feature<Geometry, { [name: string]: any;} "EPSG:4326" Object.

  • 计算多边形面积

    Parameters

    • polygon: any
    • returnNumber: boolean = false

    Returns any

    计算后结果

  • Parameters

    • GeoJson: any

    Returns any

  • 获取中心点坐标

    Parameters

    • feature: Geometry | Feature<Geometry>

      传入一个要素

    Returns Coordinate

    Coordinate

  • 获取要素坐标

    Parameters

    • feature: Feature<Geometry>

      要素

    Returns any

    计算后结果Coordinates[x1,y1]

  • 获取要素范围

    Parameters

    • feature: Feature<Geometry>

      要素

    Returns Extent

    } 计算后结果[x1,y1,x2,y2]

  • : 取两个多边形并找到它们的交点。如果它们共享一个边界,返回边界;如果它们不相交,返回undefined。。

    Parameters

    • feature1: Feature<Geometry>
    • feature2: Feature<Geometry>

    Returns Feature<Geometry>

    feature

  • :等值面

    Parameters

    • points: any

      点数据数组 FeatureCollection

    • breaks: any

      级别数组 示例 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];

    • zProperty: any

      分组属性字段名

    Returns Feature<Geometry>[]

    要素数组

  • 采用带有z值的点特征的网格FeatureCollection和一组断点值并生成等值线。

    Parameters

    • points: any

      点数据数组 FeatureCollection

    • breaks: any

      级别数组 示例 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];

    • zProperty: any

      分组属性字段名

    Returns Feature<Geometry>[]

    要素数组

  • 线坐标分段距离

    Parameters

    • coords: any

      线的坐标点

    Returns any[]

    点数组

  • Parameters

    • clipLine: Feature<Geometry>
    • polygonList: Feature<Geometry>[]
    • callback: Function
    • errCallback: Function

    Returns void

  • 线线是否相交打断

    Parameters

    • layer: GraphicLayer

      GraphicLayer 图层

    • lineList: Feature<Geometry>[]

      线数组

    • callback: Function

      回调函数 返回 Feature, 及原properties

    Returns void

  • 擦除线

    Parameters

    • layer: GraphicLayer

      GraphicLayer 图层

    • coordinate: number[]

      擦除点位置

    • bufferExtent: number

      点缓冲大小,以中心点辐射一个圆形,单位km

    • lineList: Feature<Geometry>[]

      线数组

    • callback: Function

      回调函数 返回 Feature, 及原properties

    Returns void

    不返回值 通过回调函数获取打断后数据

  • 获取任何LineString或PolygonGeoJSON,并返回相交点

    Parameters

    • _line1: Feature<Geometry>
    • _line2: Feature<Geometry>

    Returns Feature<Geometry>[]

  • : 多线段合并成单线段

    Parameters

    • Features: Feature<Geometry>[]
    • distance: number = 1

      指定长度 默认1 单位km

    Returns {
        coordinates: any[];
        line: Feature<Geometry>;
        nodeData: any[];
    }

    计算后结果line

    • coordinates: any[]
    • line: Feature<Geometry>
    • nodeData: any[]
  • : 获取一条线并返回具有指定距离偏移量的线。。

    Parameters

    • line: Feature<Geometry>
    • unitsNum: number = 1

      偏移线的距离 米(可以为负值)

    Returns Feature<Geometry>

    lineData

  • 线分割,按起始点分割线段

    Parameters

    • _startPoint: Feature<Geometry>
    • _stopPoint: Feature<Geometry>
    • _line: Feature<Geometry>

    Returns Feature<Geometry>

    3857坐标的数据

  • 通过另一个Feature分割一个LineString。

    Parameters

    • _line1: Feature<Geometry>
    • _feature: Feature<Geometry>

    Returns Feature<Geometry>

    分割后的要素集合

  • Parameters

    • geoMarkerCircle: any
    • attr: any

    Returns {
        bearing: number;
        coordIndex: number;
        coords: any[];
        distance: number;
    }

    • bearing: number
    • coordIndex: number
    • coords: any[]
    • distance: number
  • : 获取一个参考点和一个具有点几何特征的FeatureCollection,并从FeatureCollection最接近的参考点返回点。这个计算是测地线的。

    Parameters

    • targetPoint: Feature<Geometry>
    • points: Feature<Geometry>[]

    Returns Feature<Geometry>

    Point

  • : 获取一个点和一个LineString,并计算(多)LineString上最近的点。

    Parameters

    • point: Feature<Geometry>
    • line: Feature<Geometry>

    Returns Feature<Geometry>

  • : 获取一个点和一个LineString,并计算(多)LineString上最近的点。

    Parameters

    • point: any
    • line: any

    Returns Feature<Geometry>

  • : 获取一个点和一个多边形或多个多边形,并确定该点是否位于该多边形内部。多边形可以是凸的,也可以是凹的。

    Parameters

    • point: Feature<Geometry>[]
    • poly: any

    Returns Feature<Geometry>[]

  • 取区域内的随机点,默认在中国范围内

    Parameters

    • box: any

      Extent

    Returns {
        box: Extent;
        lnglat: number[];
    }

    计算后结果

    • box: Extent
    • lnglat: number[]
  • : 随机点,随机节点数 最小3最大10

    Parameters

    • box: any

      生成四角范围【minLng,minLat,maxLng,maxLat】

    • maxNum: number = 100

      最大数量

    Returns any[]

    要素数组

  • 随机面,随机节点数 最小3最大10

    Parameters

    • box: any

      生成四角范围【minLng,minLat,maxLng,maxLat】

    • maxRadialLength: number = 0.0111

      顶点可以到达多边形中心以外的纬度或经度的最大十进制度数。默认0.0111

    • maxNum: number = 100

      最大数量

    Returns any[]

    要素数组

  • : 随机线,随机节点数 最小3最大10

    Parameters

    • box: any

      生成四角范围【minLng,minLat,maxLng,maxLat】

    • maxlength: number = 0.0111

      是顶点可以与其前一个顶点相距的最大小数度数。默认0.0111

    • maxNum: number = 100

      最大数量

    Returns any[]

    要素数组

  • : 创建给定半径和中心点的圆的一个扇形,位于(顺时针)bearing1和bearing2之间;0方位为中心点以北,顺时针正。

    Parameters

    • center: any

      中心点

    • radius: any

      圆的半径,单位km

    • antBearing: any

      扇区第一个半径的角度,以十进制为单位

    • rotation: any

      扇形第二半径的角度,以十进制度数表示

    Returns Feature<Geometry>

  • 最短路径

    Parameters

    • startPoint: Feature<Geometry>

      起点

    • endPoint: Feature<Geometry>

      终点

    • Optional options: {
          minDistance?: number;
          obstacles?: Feature<Geometry>[];
          resolution?: number;
          units?: string;
      }

      参数

      • Optional minDistance?: number

        最短路径与障碍物之间的最小距离

      • Optional obstacles?: Feature<Geometry>[]

        障碍面

      • Optional resolution?: number

        计算路径的矩阵点之间的距离 }

      • Optional units?: string

        分辨率和最小距离将以表示的单位;可以是度、弧度、英里、公里

    Returns Feature<Geometry>

    计算后结果line

  • 转为geoJson数组格式,4326转3857

    Parameters

    • feature: any

    Returns Feature<Geometry>

    返回的是个 Feature.

  • 转为geoJson数组格式,适用于数组转换

    Parameters

    • Features: any

    Returns Feature<Geometry>[]

    "EPSG:4326" Object.

  • 转化范围3857to4326

    Parameters

    • box: any

      四角范围【minX,minY,maxX,maxY】

    Returns Extent

    计算后结果【minLng,minLat,maxLng,maxLat】

  • 转化范围4326to3857

    Parameters

    • box: any

      四角范围【minLng,minLat,maxLng,maxLat】

    Returns Extent

    计算后结果

Generated using TypeDoc