51 lines
1.4 KiB
C++
51 lines
1.4 KiB
C++
// Draw random coloured smooth (anti-aliased) rounded rectangles on the TFT
|
|
|
|
#include <TFT_eSPI.h>
|
|
|
|
TFT_eSPI tft = TFT_eSPI();
|
|
|
|
void setup(void) {
|
|
tft.init();
|
|
tft.fillScreen(TFT_BLACK); // Background is black
|
|
}
|
|
|
|
void loop() {
|
|
tft.fillScreen(TFT_BLACK);
|
|
tft.setCursor(0, 0);
|
|
|
|
// Draw some random smooth rounded rectangles
|
|
for (int i = 0; i < 20; i++)
|
|
{
|
|
int radius = random(60);
|
|
int w = random(2 * radius, 160);
|
|
int h = random(2 * radius, 160);
|
|
int t = random(1, radius / 3);
|
|
int x = random(tft.width() - w);
|
|
int y = random(tft.height() - h);
|
|
|
|
// Random colour is anti-aliased (blended) with background colour (black in this case)
|
|
tft.drawSmoothRoundRect(x, y, radius, radius - t, w, h, random(0x10000), TFT_BLACK);
|
|
}
|
|
tft.print("Variable thickness");
|
|
delay(2000);
|
|
|
|
tft.fillScreen(TFT_BLACK);
|
|
tft.setCursor(0, 0);
|
|
|
|
// Draw some random minimum thickness smooth rounded rectangles
|
|
for (int i = 0; i < 20; i++)
|
|
{
|
|
int radius = random(60);
|
|
int w = random(2 * radius, 160);
|
|
int h = random(2 * radius, 160);
|
|
int t = 0;
|
|
int x = random(tft.width() - w);
|
|
int y = random(tft.height() - h);
|
|
|
|
// Random colour is anti-aliased (blended) with background colour (black in this case)
|
|
tft.drawSmoothRoundRect(x, y, radius, radius - t, w, h, random(0x10000), TFT_BLACK);
|
|
}
|
|
tft.print("Minimum thickness");
|
|
delay(2000);
|
|
}
|