Intersections2D

包含操作二维三角形的函数。

Methods

static Cesium.Intersections2D.clipTriangleAtAxisAlignedThreshold(threshold, keepAbove, u0, u1, u2, result)Array.<Number>

在给定的轴对齐阈值处拆分二维三角形并返回结果 阈值的给定边上的多边形。得到的多边形可能有0,1,2, 3或4个顶点。
Name Type Description
threshold Number 要剪裁三角形的阈值坐标值。
keepAbove Boolean 将三角形的部分保持在阈值以上,或为false 保持下面的部分。
u0 Number 三角形中第一个顶点的坐标,按逆时针顺序。
u1 Number 三角形中第二个顶点的坐标,按逆时针顺序。
u2 Number 三角形中第三个顶点的坐标,按逆时针顺序。
result Array.<Number> optional 要将结果复制到其中的数组。如果未提供此参数, 构造并返回一个新数组。
Returns:
剪辑后生成的多边形,指定为 顶点。顶点按逆时针顺序指定。 每个顶点都是现有列表中的索引(标识为 0、1或2)或-1,表示新顶点不在原始三角形中。 对于新顶点,-1后面还有三个额外的数字:the 构成线段的两个原始顶点的索引 新顶点位于上,与第一个顶点的距离的分数 到第二个顶点。
Example:
var result = Cesium.Intersections2D.clipTriangleAtAxisAlignedThreshold(0.5, false, 0.2, 0.6, 0.4);
// result === [2, 0, -1, 1, 0, 0.25, -1, 1, 2, 0.5]

static Cesium.Intersections2D.computeBarycentricCoordinates(x, y, x1, y1, x2, y2, x3, y3, result)Cartesian3

计算二维三角形内二维位置的重心坐标。
Name Type Description
x Number 要找到其重心坐标的位置的x坐标。
y Number 要找到其重心坐标的位置的y坐标。
x1 Number 三角形第一个顶点的x坐标。
y1 Number 三角形第一个顶点的y坐标。
x2 Number 三角形第二个顶点的x坐标。
y2 Number 三角形第二个顶点的y坐标。
x3 Number 三角形第三个顶点的x坐标。
y3 Number 三角形第三个顶点的y坐标。
result Cartesian3 optional 要将结果复制到其中的实例。如果这个参数 如果未定义,则会创建并返回一个新实例。
Returns:
三角形内位置的重心坐标。
Example:
var result = Cesium.Intersections2D.computeBarycentricCoordinates(0.0, 0.0, 0.0, 1.0, -1, -0.5, 1, -0.5);
// result === new Cesium.Cartesian3(1.0 / 3.0, 1.0 / 3.0, 1.0 / 3.0);

static Cesium.Intersections2D.computeLineSegmentLineSegmentIntersection(x00, y00, x01, y01, x10, y10, x11, y11, result)Cartesian2

计算两条线段之间的交点
Name Type Description
x00 Number 第一条直线的第一个顶点的x坐标。
y00 Number 第一条直线第一个顶点的y坐标。
x01 Number 第一条线的第二个顶点的x坐标。
y01 Number 第一条线第二个顶点的y坐标。
x10 Number 第二条直线的第一个顶点的x坐标。
y10 Number 第二条直线第一个顶点的y坐标。
x11 Number 第二条直线的第二个顶点的x坐标。
y11 Number 第二条直线的第二个顶点的y坐标。
result Cartesian2 optional 要将结果复制到其中的实例。如果这个参数 如果未定义,则会创建并返回一个新实例。
Returns:
交点,如果没有交点或直线重合,则未定义。
Example:
var result = Cesium.Intersections2D.computeLineSegmentLineSegmentIntersection(0.0, 0.0, 0.0, 2.0, -1, 1, 1, 1);
// result === new Cesium.Cartesian2(0.0, 1.0);