包含在二維三角形上操作的函數(shù)。
Methods
(static) clipTriangleAtAxisAlignedThreshold(threshold, keepAbove, u0, u1, u2, result) → {Array.<Number>}
在給定的軸對齊閾值處拆分一個二維三角形,并返回在閾值的給定側上生成的多邊形。生成的多邊形可以有0、1、2、3或4個頂點。
Parameters:
threshold
(Number)
剪裁三角形的閾值坐標值。
keepAbove
(Boolean)
如果為“真”,則將三角形的部分保持在閾值以上;如果為“假”,則將三角形的部分保持在閾值以下。
u0
(Number)
三角形中第一個頂點的坐標,按逆時針順序排列。
u1
(Number)
三角形中第二個頂點的坐標,按逆時針順序排列。
u2
(Number)
三角形中第三個頂點的坐標,按逆時針順序排列。
result
(Array.<Number>)
要將結果復制到其中的數(shù)組。如果未提供此參數(shù),則構造并返回一個新數(shù)組。
Example
var result = bmgl.Intersections2D.clipTriangleAtAxisAlignedThreshold(0.5, false, 0.2, 0.6, 0.4);
// result === [2, 0, -1, 1, 0, 0.25, -1, 1, 2, 0.5]
計算二維三角形內二維位置的重心坐標。
Parameters:
x
(Number)
找到重心坐標的位置的X坐標。
y
(Number)
找到重心坐標的位置的Y坐標。
x1
(Number)
三角形第一個頂點的X坐標。
y1
(Number)
三角形第一個頂點的Y坐標。
x2
(Number)
三角形第二個頂點的X坐標。
y2
(Number)
三角形第二個頂點的Y坐標。
x3
(Number)
三角形第三個頂點的X坐標。
y3
(Number)
三角形第三個頂點的Y坐標。
Example
var result = bmgl.Intersections2D.computeBarycentricCoordinates(0.0, 0.0, 0.0, 1.0, -1, -0.5, 1, -0.5);
// result === new bmgl.Cartesian3(1.0 / 3.0, 1.0 / 3.0, 1.0 / 3.0);
計算兩個線段之間的交點
Parameters:
x00
(Number)
第一行第一個頂點的X坐標。
y00
(Number)
第一行第一個頂點的Y坐標。
x01
(Number)
第一行第二個頂點的X坐標。
y01
(Number)
第一行第二個頂點的Y坐標。
x10
(Number)
第二行第一個頂點的X坐標。
y10
(Number)
第二行第一個頂點的Y坐標。
x11
(Number)
第二行第二個頂點的X坐標。
y11
(Number)
第二行第二個頂點的Y坐標。
Example
var result = bmgl.Intersections2D.computeLineSegmentLineSegmentIntersection(0.0, 0.0, 0.0, 2.0, -1, 1, 1, 1);
// result === new bmgl.Cartesian2(0.0, 1.0);