//priv enum GeometryEnum {
// Point(Point)
// Line(Line)
// Rect(Rect)
//}
//
//trait Geometry {
// as_geometry_enum(self: Self) -> GeometryEnum;
//}
//
//pub struct Point {
// x: Double;
// y: Double;
//} derive(Show, Eq)
//
//pub impl Geometry for Point with as_geometry_enum(self) {
// GeometryEnum::Point(self)
//}
//
//pub struct Line {
// start: Point;
// end: Point;
//} derive(Show, Eq)
//
//pub impl Geometry for Line with as_geometry_enum(self) {
// GeometryEnum::Line(self)
//}
//
//pub struct Rect {
// anchor: Point;
// width: Double;
// height: Double;
//} derive(Show, Eq)
//
//pub impl Geometry for Rect with as_geometry_enum(self) {
// GeometryEnum::Rect(self)
//}
//
//fn Rect::to_sdl_frect(self: Self) -> @lib.SDL_FRect {
// @lib.SDL_FRect::{
// x: self.anchor.x.to_float(),
// y: self.anchor.y.to_float(),
// w: self.width.to_float(),
// h: self.height.to_float(),
// };
//}
//
//pub struct Vertex {
// pos: (Double, Double);
// color: Color;
// tex_coord: (Double, Double);
//} derive(Show, Eq)
//
//pub struct Triangle {
// v1: Vertex
// v2: Vertex
// v3: Vertex
//}
//
//fn Triangle::to_float_array(self: Self) -> FixedArray[Float] {
// let arr : FixedArray[Float] = FixedArray::make(24, 0.0);
// let (r, g, b, a) = self.v1.color.to_rgba()
// arr[0] = self.v1.pos.0.to_float();
// arr[1] = self.v1.pos.1.to_float();
// arr[2] = r.to_float();
// arr[3] = g.to_float();
// arr[4] = b.to_float();
// arr[5] = a.to_float();
// arr[6] = self.v1.tex_coord.0.to_float();
// arr[7] = self.v1.tex_coord.1.to_float();
//
// let (r, g, b, a) = self.v2.color.to_rgba()
// arr[8] = self.v2.pos.0.to_float();
// arr[9] = self.v2.pos.1.to_float();
// arr[10] = r.to_float();
// arr[11] = g.to_float();
// arr[12] = b.to_float();
// arr[13] = a.to_float();
// arr[14] = self.v2.tex_coord.0.to_float();
// arr[15] = self.v2.tex_coord.1.to_float();
//
// let (r, g, b, a) = self.v3.color.to_rgba()
// arr[16] = self.v3.pos.0.to_float();
// arr[17] = self.v3.pos.1.to_float();
// arr[18] = r.to_float();
// arr[19] = g.to_float();
// arr[20] = b.to_float();
// arr[21] = a.to_float();
// arr[22] = self.v3.tex_coord.0.to_float();
// arr[23] = self.v3.tex_coord.1.to_float();
//
// arr
//}