void CalculateLocal(ShapeObject shapeA, ShapeObject shapeB, ShapeMatchType type)
        {
            Vector2   pointInWorld;
            Vector2D  pointInWorld2D = Vector2D.Zero();
            Polygon2D polyInWorld;

            foreach (Vector2D point in shapeA.pointsIn)
            {
                pointInWorld = point.ToVector2();

                pointInWorld2D.x = pointInWorld.x;
                pointInWorld2D.y = pointInWorld.y;

                polyInWorld = shapeB.GetPolygon();

                if (polyInWorld.PointInPoly(pointInWorld2D))
                {
                    pointsIn++;
                }
            }

            foreach (Vector2D point in shapeB.pointsIn)
            {
                pointInWorld = point.ToVector2();

                pointInWorld2D.x = pointInWorld.x;
                pointInWorld2D.y = pointInWorld.y;

                polyInWorld = shapeA.GetPolygon();

                if (polyInWorld.PointInPoly(pointInWorld2D))
                {
                    pointsIn++;
                }
            }
        }