Esempio n. 1
0
        protected virtual Vector2 ObstacleCollisionOffset(Polygon pastSelf, Vector2 p_vertex, Vector2 o_vertex)
        {
            Segment2D p_vertexPath = new Segment2D(pastSelf.Vertices[GetVertexIndex(p_vertex)], p_vertex);
            Line2D    o_vertexPath = new Line2D(o_vertex, o_vertex + p_vertexPath.Vector);

            if (o_vertexPath.Contains(o_vertex) && o_vertexPath.Contains(p_vertex))
            {
                return(o_vertex - p_vertex);
            }
            return(Vector2.zero);
        }