/* Public domain */ typedef struct sk_polygon { struct sk_node node; SK_Line **s; /* Sides */ Uint n; M_Color color; /* Fill color */ } SK_Polygon; #define SKPOLYGON(n) ((SK_Polygon *)(n)) __BEGIN_DECLS extern SK_NodeOps skPolygonOps; SK_Polygon *SK_PolygonNew(void *); SK_Polygon *SK_PolygonFromValue(void *, M_Polygon); void SK_PolygonInit(void *, Uint32); int SK_PolygonLoad(SK *, void *, AG_DataSource *); int SK_PolygonSave(SK *, void *, AG_DataSource *); void SK_PolygonDraw(void *, struct sk_view *); void SK_PolygonEdit(void *, struct ag_widget *, struct sk_view *); M_Real SK_PolygonProximity(void *, const M_Vector3 *, M_Vector3 *); int SK_PolygonDelete(void *); void SK_PolygonWidth(SK_Polygon *, M_Real); void SK_PolygonColor(SK_Polygon *, M_Color); M_Polygon SK_PolygonValue(SK_Polygon *); Uint SK_PolygonAddSide(SK_Polygon *, SK_Line *); __END_DECLS