Summary
Methods:
getBBox |
获取三次贝塞尔曲线的三维包围盒 |
getCoordSeq |
获取三次贝塞尔曲线的坐标序列 |
getLength |
计算三次贝塞尔曲线组成点连线的长度。 |
getType |
获取几何体类型 |
setCtrlPoints |
重新设置三次贝塞尔曲线的控制点。 |
toLine |
将三次贝塞尔曲线转化为线几何体 |
Constructor
new BezierCurve3(points)
使用点几何体作为控制点构造一个三次贝塞尔曲线,控制点数量为4,且不可以重复。
Parameters:
Name | Type | Description |
---|---|---|
points |
Array.<module:geom~Point> | 点几何体数组,数组长度小于4或非数组类型时,则抛出构造异常;当数组长度大于4时,取前4个点几何体作为控制点。 |
Throws:
RangeError
|
TypeError
-
数组长度小于4或非数组类型,则抛出构造异常。
Example
let point1 = new hmap.geom.Point(new hmap.basetype.Coordinate(120,30,0));
let point2 = new hmap.geom.Point(new hmap.basetype.Coordinate(120,31,0));
let point3 = new hmap.geom.Point(new hmap.basetype.Coordinate(121,31,0));
let point4 = new hmap.geom.Point(new hmap.basetype.Coordinate(121,33,0));
let bezier3Geom = new hmap.geomext.BezierCurve3([point1,point2,point3,point4]);
Methods
-
getBBox() → {module:basetype~BBox}
-
获取三次贝塞尔曲线的三维包围盒
-
getCoordSeq() → {module:basetype~CoordSeq}
-
获取三次贝塞尔曲线的坐标序列
Example
let coordSeq = bezier3Geom.getCoordSeq();
-
getLength(srid) → {Number}
-
计算三次贝塞尔曲线组成点连线的长度。
Parameters:
Name Type Description srid
String 坐标系类型。
Returns:
Number -线段的三维长度,单位是米。
Example
let length = bezier3Geom.getLength(4326);
-
getType() → {String}
-
获取几何体类型
Example
let type = bezier3Geom.getType();
-
setCtrlPoints(points)
-
重新设置三次贝塞尔曲线的控制点。
Parameters:
Name Type Description points
Array.<module:geom~Point> 点几何体数组,数组长度小于4或非数组类型时,则抛出构造异常;当数组长度大于4时,取前4个点几何体作为控制点。
Throws:
RangeError | TypeError -数组长度小于4或非数组类型,则抛出构造异常。
Example
let point1 = new hmap.geom.Point(new hmap.basetype.Coordinate(122,30,0)); let point2 = new hmap.geom.Point(new hmap.basetype.Coordinate(122,31,0)); let point3 = new hmap.geom.Point(new hmap.basetype.Coordinate(123,31,0)); let point4 = new hmap.geom.Point(new hmap.basetype.Coordinate(123,32,0)); bezier3Geom.setCtrlPoints([point1,point2,point3,point4])
-
toLine() → {module:geom~Line}
-
将三次贝塞尔曲线转化为线几何体
Example
let line = bezier3Geom.toLine();