Post by bobtrex on Mar 17, 2020 3:20:45 GMT -8
I am probably missing something very basic
but with the code below, why is the black rectangle 50% transparent ?
Thanks and Regards
#include <EEPROM.h>
#include <SPI.h>
#include <GD2.h>
#define VX(x, y) GD.Vertex2f(16 * (x), 16 * (y))
void setup()
{
GD.begin(0);
}
void loop()
{
delay(10000);
GD.RestoreContext();
GD.RestoreContext();
GD.RestoreContext();
GD.RestoreContext();
GD.RestoreContext();
GD.ClearColorRGB(0x103000);
GD.Clear();
GD.cmd_text(GD.w / 2, GD.h / 2, 31, OPT_CENTER, "Hello world");
GD.ColorRGB(0xFF0000);
GD.Begin(LINES);
GD.LineWidth(8);
GD.Vertex2f(0,0);
GD.Vertex2f(100*16,0);
GD.Vertex2f(100*16,0);
GD.Vertex2f(100*16,100*16);
GD.Vertex2f(100*16,100*16);
GD.Vertex2f(0,100*16);
GD.Vertex2f(0,100*16);
GD.Vertex2f(0,0);
GD.Begin(RECTS);
GD.ColorRGB(0x00ff00);
VX(2, 2);
VX(99, 99);
GD.ColorRGB(0x0000FF);
GD.cmd_text(50, 50, 22, OPT_CENTER, "Hello world");
GD.ColorRGB(0xFF0000);
GD.Begin(LINES);
GD.LineWidth(8);
VX(120,120);
VX(220,120);
VX(220,120);
VX(220,220);
VX(220,220);
VX(120,220);
VX(120,220);
VX(120,120);
//This rectange is 50% transparent regardless of GD.ColorA(255);
GD.Begin(RECTS);
// GD.ColorA(255);
GD.ColorRGB(0x000000);
VX(122, 122);
VX(219, 219);
GD.ColorRGB(0x0000FF);
GD.cmd_text(170, 170, 22, OPT_CENTER, "Hello world");
//GD.ColorA(128);
GD.ColorRGB(0x0000FF);
GD.PointSize(16 * 30); // means 30 pixels
GD.Begin(POINTS);
GD.Vertex2ii(220, 100);
GD.Vertex2ii(260, 170);
GD.PointSize(16 * 8); // means 30 pixels
GD.RestoreContext();
//Not tranparrent
GD.Begin(RECTS);
//GD.ColorA(255);
GD.ColorRGB(0x666666);
VX(150, 150);
VX(250, 250);
//GD.ColorRGB(0xFFFFFF);
//GD.cmd_text(GD.w / 2, GD.h / 2, 31, OPT_CENTER, "Hello world");
GD.swap();
}