2012年3月4日 星期日
4_1 - Text and Image
//Anton Carlson
//97470043
color[] ColourSelector = {color(255,51,51), color(153,255,51),color(102,102,255), color(255,255,51),color(0,0,0),color(255,255,255)};
color SelectedColour = color(0,0,0);
void setup() {
size(800, 500);
background(204);
DrawDrawingArea();
strokeWeight(5);
DrawAllButtons();
DrawSelectableColours();
smooth();
}
void draw()
{
if(mousePressed && mouseX>50 && pmouseX >50 && mouseX < 675 && pmouseX < 675)
{
stroke(SelectedColour);
line(mouseX, mouseY, pmouseX, pmouseY);
}
if(mousePressed && mouseX<50 && pmouseX <50)
SelectedColour = GetSelectedColour();
//Button Listeners
if(mousePressed && mouseX>675 && mouseX < 800 && mouseY > 0 && mouseY < 50)
clearDrawingArea();
if(mousePressed && mouseX>675 && mouseX < 800 && mouseY > 50 && mouseY < 100)
saveFile();
if(mousePressed && mouseX>675 && mouseX < 800 && mouseY > 100 && mouseY < 150)
Erase();
if(mousePressed && mouseX>675 && mouseX < 800 && mouseY > 150 && mouseY < 200)
strokeWeight(1);
if(mousePressed && mouseX>675 && mouseX < 800 && mouseY > 200 && mouseY < 250)
strokeWeight(3);
if(mousePressed && mouseX>675 && mouseX < 800 && mouseY > 250 && mouseY < 300)
strokeWeight(5);
}
void DrawSelectableColours()
{
int YPosition = 0;
for(color aColour : ColourSelector)
{
strokeWeight(1);
fill(aColour);
rect(0,YPosition,50,50);
YPosition = YPosition + 50;
}
}
void clearDrawingArea()
{
DrawDrawingArea();
}
void DrawDrawingArea()
{
fill(255,255,255);
rect(50,0,675,500);
}
void saveFile()
{
save("MyFile");
}
void Erase()
{
strokeWeight(5);
SelectedColour = color(255,255,255);
}
void DrawAllButtons()
{
DrawButton(725,0,75,50, "Clear", 732, 30, 20);
DrawButton(725,50,75,50, "Save", 738, 80, 20);
DrawButton(725,100,75,50, "Erase", 732, 130, 20);
DrawButton(725,150,75,50, ".", 748, 180, 50);
DrawButton(725,200,75,50, ".", 745, 230, 70);
DrawButton(725,250,75,50, ".", 742, 280, 80);
}
void DrawButton(int RectX, int RectY, int RectLength, int RectHeight, String ButtonText, int TextX, int TextY, int fontSize)
{
strokeWeight(1);
rect(RectX, RectY,RectLength,RectHeight);
PFont font;
font = loadFont("Courier-48.vlw");
textFont(font, fontSize);
fill(0);
text(ButtonText, TextX, TextY);
fill(255);
}
color GetSelectedColour()
{
color SelectColor = 0;
SelectColor = get(mouseX, mouseY);
return SelectColor;
}
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言