public void CutOutNonIntersectingTest() { List<Vector2> horizontalRectVertices = new List<Vector2>() { new Vector2(0, 0), new Vector2(2, 0), new Vector2(2, -1), new Vector2(0,-1) }; List<Vector2> squareVertices = new List<Vector2>() { new Vector2(10,10), new Vector2(11, 10), new Vector2(11, 9), new Vector2(10,9) }; Polygon2D horizontalRect = new Polygon2D(horizontalRectVertices); Polygon2D square = new Polygon2D(squareVertices); var cutout = Clipper.CutOut(square, horizontalRect); Assert.AreEqual(1f, cutout.Area, MathUtil.EPS); cutout = Clipper.CutOut(horizontalRect, square); Assert.AreEqual(2f, cutout.Area, MathUtil.EPS); }
public void OverlappingClipTest() { var clipResult = Clipper.CutOut(subjectPoly, clipPoly); Assert.AreEqual(resultPoly, clipResult); }
public void CutOutTest2() { var cutout = Clipper.CutOut(m_horizontalRect, m_verticalRect); Assert.AreEqual(6f, cutout.Area, MathUtil.EPS); }
public void CutOutRectFromRectCollinearTest2() { var remainder = Clipper.CutOut(m_2by1rect, m_1by2rect); Assert.AreEqual(1f, remainder.Area, MathUtil.EPS); }
public void CutOutRectFromSquareCollinearTest2() { var remainder = Clipper.CutOut(m_unitSquare, m_1by2rect); Assert.AreEqual(0f, remainder.Area, MathUtil.EPS); }
public void CutOutSquareFromRectCollinearTest1() { var remainder = Clipper.CutOut(m_2by1rect, m_unitSquare); Assert.AreEqual(1f, remainder.Area, MathUtil.EPS); }
public void RepeatCutTest() { var clipResult = Clipper.CutOut(subjectPoly, clipPoly); var nextResult = Clipper.CutOut(clipResult, clipPoly); Assert.AreEqual(clipResult, nextResult); }