// Copyright (c) ppy Pty Ltd . Licensed under the MIT Licence. // See the LICENCE file in the repository root for full licence text. using System; using osuTK; namespace osu.Framework.Graphics.Primitives { public interface IPolygon { /// /// The vertices that define the axes spanned by this polygon in screen-space counter-clockwise orientation. /// /// /// Counter-clockwise orientation in screen-space coordinates is equivalent to a clockwise orientation in standard coordinates. /// /// E.g. For the set of vertices { (0, 0), (1, 0), (0, 1), (1, 1) }, a counter-clockwise orientation is { (0, 0), (0, 1), (1, 1), (1, 0) }. /// /// /// The vertices that define the axes spanned by this polygon. ReadOnlySpan GetAxisVertices(); /// /// Retrieves the vertices of this polygon in screen-space counter-clockwise orientation. /// /// /// Counter-clockwise orientation in screen-space coordinates is equivalent to a clockwise orientation in standard coordinates. /// /// E.g. For the set of vertices { (0, 0), (1, 0), (0, 1), (1, 1) }, a counter-clockwise orientation is { (0, 0), (0, 1), (1, 1), (1, 0) }. /// /// /// The vertices of this polygon. ReadOnlySpan GetVertices(); } }