Rename Rect to Square
This commit is contained in:
@ -11,7 +11,7 @@ const std::string white {"#FFFFFF"};
|
|||||||
const std::string sand {"#B69061"};
|
const std::string sand {"#B69061"};
|
||||||
const std::string pastel_green {"#B1D1AF"};
|
const std::string pastel_green {"#B1D1AF"};
|
||||||
|
|
||||||
struct Rect {
|
struct Square {
|
||||||
double cx {0};
|
double cx {0};
|
||||||
double cy {0};
|
double cy {0};
|
||||||
double width {0};
|
double width {0};
|
||||||
@ -19,7 +19,7 @@ struct Rect {
|
|||||||
};
|
};
|
||||||
|
|
||||||
struct Situation {
|
struct Situation {
|
||||||
std::vector<Rect> rects;
|
std::vector<Square> rects;
|
||||||
Color bg {pastel_green};
|
Color bg {pastel_green};
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -79,7 +79,7 @@ void Grid::setup(cairo_t* context, const cairo_rectangle_t& rect) {
|
|||||||
double v_margin = (inset.height - (_v - 1) * _d) / 2;
|
double v_margin = (inset.height - (_v - 1) * _d) / 2;
|
||||||
for (size_t x = 0; x < _h; ++x) {
|
for (size_t x = 0; x < _h; ++x) {
|
||||||
for (size_t y = 0; y < _v; ++y) {
|
for (size_t y = 0; y < _v; ++y) {
|
||||||
Rect r;
|
Square r;
|
||||||
r.cx = _border + h_margin + x * _d;
|
r.cx = _border + h_margin + x * _d;
|
||||||
r.cy = _border + v_margin + y * _d;
|
r.cy = _border + v_margin + y * _d;
|
||||||
r.width = 0;
|
r.width = 0;
|
||||||
@ -126,7 +126,7 @@ void Grid::update() {
|
|||||||
if (++_frames > _fade * fps()) {
|
if (++_frames > _fade * fps()) {
|
||||||
_frames = 0;
|
_frames = 0;
|
||||||
_old = _new;
|
_old = _new;
|
||||||
for (Rect& r : _new.rects) {
|
for (Square& r : _new.rects) {
|
||||||
r.width = random_between(_min_size, _max_size);
|
r.width = random_between(_min_size, _max_size);
|
||||||
r.color = sc::random::choice(_colors);
|
r.color = sc::random::choice(_colors);
|
||||||
}
|
}
|
||||||
@ -147,7 +147,7 @@ void Grid::render() {
|
|||||||
cairo_set_source_rgb(_c, bg.r, bg.g, bg.b);
|
cairo_set_source_rgb(_c, bg.r, bg.g, bg.b);
|
||||||
cairo_rectangle(_c, _r.x, _r.y, _r.width, _r.height);
|
cairo_rectangle(_c, _r.x, _r.y, _r.width, _r.height);
|
||||||
cairo_fill(_c);
|
cairo_fill(_c);
|
||||||
for (const Rect& r : _cur.rects) {
|
for (const Square& r : _cur.rects) {
|
||||||
RGB col {RGB(r.color)};
|
RGB col {RGB(r.color)};
|
||||||
cairo_set_source_rgb(_c, col.r, col.g, col.b);
|
cairo_set_source_rgb(_c, col.r, col.g, col.b);
|
||||||
cairo_rectangle(_c, r.cx - r.width / 2, r.cy - r.width / 2, r.width, r.width);
|
cairo_rectangle(_c, r.cx - r.width / 2, r.cy - r.width / 2, r.width, r.width);
|
||||||
@ -165,9 +165,9 @@ void Grid::animate() {
|
|||||||
_cur.bg = bg3;
|
_cur.bg = bg3;
|
||||||
}
|
}
|
||||||
for (size_t i = 0; i < _old.rects.size(); ++i) {
|
for (size_t i = 0; i < _old.rects.size(); ++i) {
|
||||||
Rect& r1 = _old.rects[i];
|
Square& r1 = _old.rects[i];
|
||||||
Rect& r2 = _new.rects[i];
|
Square& r2 = _new.rects[i];
|
||||||
Rect& r3 = _cur.rects[i];
|
Square& r3 = _cur.rects[i];
|
||||||
RGB rgb1 {RGB(r1.color)};
|
RGB rgb1 {RGB(r1.color)};
|
||||||
RGB rgb2 {RGB(r2.color)};
|
RGB rgb2 {RGB(r2.color)};
|
||||||
RGB rgb3 {rgb1.r + f * (rgb2.r - rgb1.r), rgb1.g + f * (rgb2.g - rgb1.g), rgb1.b + f * (rgb2.b - rgb1.b)};
|
RGB rgb3 {rgb1.r + f * (rgb2.r - rgb1.r), rgb1.g + f * (rgb2.g - rgb1.g), rgb1.b + f * (rgb2.b - rgb1.b)};
|
||||||
|
Reference in New Issue
Block a user