Esempio n. 1
0
        public void PointStorage()
        {
            var p1 = new SPoint(0, 0);
            var p2 = new SPoint(1, 1);
            var s  = new PolyStroke(new SPoint[] { p1, p2 });

            PointListsHelper.AssertPointPresence(s, new SPoint[] { p1, p2 });
        }
Esempio n. 2
0
        public void Dashed()
        {
            var p1     = new SPoint(0, 0);
            var p2     = new SPoint(10, 0);
            var p3     = new SPoint(20, 0);
            var p4     = new SPoint(30, 0);
            var s      = new PolyStroke(new SPoint[] { p1, p2, p3, p4 });
            var dashed = new DashedStroke(s, 2);

            Assert.AreEqual(2, dashed.Count());
            PointListsHelper.AssertPointPresence(dashed, new SPoint[] { p1, p3 });
        }
Esempio n. 3
0
        public void MultipleIterationsByPolystroke()
        {
            const int numberOfIterations = 3;
            var       p1 = new SPoint(0, 0);
            var       p2 = new SPoint(10, 0);
            var       p3 = new SPoint(10, 10);
            var       p4 = new SPoint(0, 10);
            var       s  = new PolyStroke(new SPoint[] { p1, p2, p3, p4 });

            s.NumberOfIterations = numberOfIterations;
            var points = s.ToArray();

            Assert.AreEqual(4 * numberOfIterations, points.Length);
            PointListsHelper.AssertPointPresence(s, new SPoint[] { p1, p2, p3, p4 }, 3);
        }
Esempio n. 4
0
        public void ConnectingDrawing()
        {
            Mat   img   = new Mat(100, 100, MatType.CV_8UC3, new Scalar(0, 0, 0));
            var   d     = new Drawer();
            Vec3b color = new Vec3b(128, 192, 255);
            var   s     = new PolyStroke(new SPoint[] {
                new SPoint(10, 10, color), new SPoint(20, 10, color)
            });

            d.Draw(img, s, true);
            var indexer = img.GetGenericIndexer <Vec3b>();

            Assert.AreEqual(new Vec3b(0, 0, 0), indexer[50, 50]);
            Assert.AreEqual(color, indexer[10, 10]);
            Assert.AreEqual(color, indexer[10, 15]);
        }
Esempio n. 5
0
        public void PointByPointDrawing()
        {
            Mat   img   = new Mat(100, 100, MatType.CV_8UC3, new Scalar(0, 0, 0));
            var   d     = new Drawer();
            Vec3b color = new Vec3b(128, 192, 255);
            Vec3b black = new Vec3b(0, 0, 0);
            var   s     = new PolyStroke(new SPoint[] {
                new SPoint(10, 20, color), new SPoint(20, 20, color)
            });

            d.Draw(img, s, false);
            var indexer = img.GetGenericIndexer <Vec3b>();

            Assert.AreEqual(black, indexer[10, 10]);
            Assert.AreEqual(color, indexer[20, 10]);
            Assert.AreEqual(black, indexer[20, 15]);
            Assert.AreEqual(color, indexer[20, 20]);
        }
        public void SimpleAnimation()
        {
            SPoint A1   = new SPoint(10, 10);
            SPoint A2   = new SPoint(20, 10);
            SPoint B1   = new SPoint(10, 50);
            SPoint B2   = new SPoint(20, 50);
            var    anim = new AnimationStroke();
            var    s1   = new PolyStroke(new SPoint[] { A1, A2 });

            anim.AddStrokeAsTimeDependentControlPoint(s1);
            var s2 = new PolyStroke(new SPoint[] { B1, B2 });

            anim.AddStrokeAsTimeDependentControlPoint(s2);
            var hadMore = anim.NextFrame();

            Assert.IsTrue(hadMore);
            PointListsHelper.AssertPointPresence(anim,
                                                 new SPoint[] { A1, B1 });
            hadMore = anim.NextFrame();
            Assert.IsTrue(hadMore);
            PointListsHelper.AssertPointPresence(anim,
                                                 new SPoint[] { A2, B2 });
            Assert.IsFalse(anim.NextFrame());
        }