コード例 #1
0
ファイル: CircularCloudLayouter.cs プロジェクト: g0djan/tdd
        public void TestAddPoints(float startX, float startY,
                                  int x, int y, int width, int height, float lostX, float lostY, float lostX2, float lostY2,
                                  float x1, float x2, float x3, float x4, float x5,
                                  float y1, float y2, float y3, float y4, float y5)
        {
            var expectedHull = new LinkedList <PointF>();
            var t            = expectedHull.AddFirst(new PointF(startX, startY));

            t        = expectedHull.AddAfter(t, new PointF(x1, y1));
            t        = expectedHull.AddAfter(t, new PointF(x2, y2));
            t        = expectedHull.AddAfter(t, new PointF(x3, y3));
            t        = expectedHull.AddAfter(t, new PointF(x4, y4));
            t        = expectedHull.AddAfter(t, new PointF(x5, y5));
            ccl.hull = new LinkedList <PointF>();
            ccl.hull.AddFirst(new PointF(startX, startY));
            var prev = ccl.hull.AddAfter(ccl.hull.First, new PointF(lostX, lostY));

            ccl.currentNode = ccl.hull.AddAfter(prev, new PointF(lostX2, lostY2));
            var next = ccl.hull.AddAfter(ccl.currentNode, new PointF(x5, y5));

            ccl.AddPoints(new Rectangle(x, y, width, height),
                          ccl.GetShift(ccl.GetDirection(ccl.currentNode.Value, next.Value)));
            ccl.hull.ShouldAllBeEquivalentTo(expectedHull);
        }