namespace Quik { /// /// A 2 dimensional Vector. /// public struct QuikVec2 { public float X; public float Y; } /// /// A RGBA color value. /// public struct QuikColor { /// /// Red channel. /// public byte R; /// /// Green channel. /// public byte G; /// /// Blue channel. /// public byte B; /// /// Alpha channel. /// public byte A; } /// /// A bezier curve segment. /// public struct QuikBezier { /// /// Segment start point. /// public QuikVec2 Start; /// /// Start point control point. /// public QuikVec2 ControlA; /// /// End point control point. /// public QuikVec2 ControlB; /// /// Segment end point. /// public QuikVec2 End; } /// /// A line segment. /// public struct QuikLine { /// /// Start point. /// public QuikVec2 Start; /// /// End point. /// public QuikVec2 End; } /// /// A rectangle. /// public struct QuikRectangle { /// /// Rectangle minimum point. /// public QuikVec2 Min; /// /// Rectangle maximum point. /// public QuikVec2 Max; } /// /// An ellipse. /// /// It is undefined to have an ellipse with non-orthogonal axes. public struct QuikEllipse { /// /// Ellipse center point. /// public QuikVec2 Center; /// /// First ellipse axis. /// public QuikVec2 AxisA; /// /// Second ellipse axis. /// public QuikVec2 AxisB; } /// /// A triangle. /// public struct QuikTriangle { /// /// First vertex. /// public QuikVec2 A; /// /// Second vertex. /// public QuikVec2 B; /// /// Third vertex. /// public QuikVec2 C; } }