public void TestIsIntersect() { Vector3 p0 = P0.position; Vector3 p1 = P1.position; Vector3 p2 = P2.position; Vector3 p3 = P3.position; bool result = GeometryTool.IsIntersect(p0, p1, p2, p3); Debug.Log(result); }
bool NodeIsIntersectWithColliderRects(QuadTreeConnectedNode node, IRect[] colliderRects) { for (var i = 0; i < colliderRects.Length; ++i) { var rect = colliderRects[i]; if (GeometryTool.IsIntersect(node, rect)) { return(true); } } return(false); }
public static bool IsIntersect(IRect a, IRect b) { //如果任2邊相交 for (var i = 0; i < 4; ++i) { Vector3 p0, p1; GetEdge(a, i, out p0, out p1); for (var k = 0; k < 4; ++k) { Vector3 p2, p3; GetEdge(b, k, out p2, out p3); if (GeometryTool.IsIntersect(p0, p1, p2, p3)) { return(true); } } } return(false); }