{ if(color.size() >= 3) { red = color[0]; green = color[1]; blue = color[2]; }
if(color.size() == 4) alpha = color[3]; }
+ Color(std::vector <int> color)
+ : red(0), green(0), blue(0), alpha(255)
+ { if(color.size() >= 3) { red = color[0]; green = color[1]; blue = color[2]; }
+ if(color.size() == 4) alpha = color[3]; }
+
Color(const Color& o)
: red(o.red), green(o.green), blue(o.blue), alpha(o.alpha)
{ }
return false;
}
+ Uint32 map_rgb(SDL_Surface* surface)
+ { return SDL_MapRGB(surface->format, red, green, blue); }
+ Uint32 map_rgba(SDL_Surface* surface)
+ { return SDL_MapRGBA(surface->format, red, green, blue, alpha); }
+
Uint8 red, green, blue, alpha;
};
class Vector;
- void putpixel(SDL_Surface *surface, int x, int y, Uint32 pixel);
+ Uint32 getpixel(SDL_Surface* surface, int x, int y);
+ void putpixel(SDL_Surface* surface, int x, int y, Uint32 pixel);
void drawpixel(int x, int y, Uint32 pixel);
void fillrect(float x, float y, float w, float h, int r, int g, int b, int a = 255);
void draw_line(float x1, float y1, float x2, float y2, int r, int g, int b, int a = 255);