|
|
#pragma once
#include "CELLMath.hpp"
namespace CELL { class Raster { public: Rgba _buffer[256][256]; public: Raster(); ~Raster(void);
void clear() { memset(_buffer,0,sizeof(_buffer)); }
void drawPoint(int x,int y, Rgba color,int ptSize) { switch(ptSize) { case 1: setPixel(x,y,color); break; case 2: setPixel(x + 0, y + 0,color); setPixel(x + 1, y + 0,color); setPixel(x + 0, y + 1,color); setPixel(x + 1, y + 1,color); break; case 3:
setPixel(x - 1, y - 1,color); setPixel(x + 0, y - 1,color); setPixel(x + 1, y - 1,color);
setPixel(x - 1, y + 0,color); setPixel(x + 0, y + 0,color); setPixel(x + 1, y + 0,color); setPixel(x - 1, y + 1,color); setPixel(x + 0, y + 1,color); setPixel(x + 1, y + 1,color);
break; } }
void setPixel(int x,int y,Rgba color) { if (x < 0 || y < 0 || x >= 256 || y >= 256) { return; } _buffer[y][x] = color; } }; }
|