MEASUREMENT
COORDINATE MUTATION
TRANSFORMATION
FEATURE_CONVERSION
MISC
HELPER
RANDOM
GRIDS
AGGREGATION
META
ASSERTIONS
BOOLEANS
UNIT CONVERSION
DATA
JOINS
CLASSIFICATION

lineSplit

lineSplit函数将一条线段划分为多段。它将根据给定的距离(单位:米)在线段上找到需要分割的点,并返回所有分段。

参数

  • line:必填参数,表示要分段的线段,必须为一个Feature <http://turfjs.org/docs/#Feature>对象,其类型为LineStringMultiLineString
  • distances:必填参数,表示分割线段所需的距离(单位:米),必须是一个数字数组,每个数字表示从起点到该分割点的距离。
  • options:可选参数,类型为对象,表示其他选项:
    • units:可选参数,表示距离单位,默认值为"kilometers"
    • properties:可选参数,表示给分割线段添加的属性,必须为一个对象。

返回值

该函数返回一个FeatureCollection <http://turfjs.org/docs/#FeatureCollection>,表示所有分割后的线段。

示例

var line = turf.lineString([[-77.031669, 38.878605], [-77.029609, 38.881946], [-77.020339, 38.884084], [-77.025661, 38.885821], [-77.021884, 38.889563], [-77.019824, 38.892368]]);
var distance = [0.01, 0.015];
var options = {units: 'kilometers'};

var splitLines = turf.lineSplit(line, distance, options);

异常

  • 如果line不是LineStringMultiLineString类型,则抛出异常。
  • 如果distances不是数字数组,则抛出异常。
  • 如果某个距离值大于线段总长度,则抛出异常。