Example #1
0
        public static SvgCollision.PolygonCollisionResult PolygonCollision(PointF[] ptsA, PointF[] ptsB, Vector velocity)
        {
            Polygon polygonA, polygonB;
            polygonA = new Polygon();
            polygonB = new Polygon();
            foreach (PointF pts in ptsA)
            {
                polygonA.Points.Add(new Vector(pts.X, pts.Y));
            }
            foreach (PointF pts in ptsB)
            {
                polygonB.Points.Add(new Vector(pts.X, pts.Y));
            }

            polygonA.BuildEdges();
            polygonB.BuildEdges();

            SeparatingAxisTheorem svgCollision = new SeparatingAxisTheorem();
            return svgCollision.PolygonCollision(polygonA, polygonB, velocity);
        }