# Sum Of 1 to N
def setup():
n = 15
sumOfOneToN(n)
def sumOfOneToN(n):
sum = 0
print("N = ",n)
while(n>0):
sum += n
n -= 1
print("sum of int from 1 to N = ",sum)
setup()
# Multiplication Table
def setup():
num = 13
multipli_table(num)
def multipli_table(n):
multi = 1
print("Multiplication-Table of ",n)
while(multi <= 12):
print(n," x ",multi," = ",(n*multi))
multi += 1
setup()
# Sum of Prime Number
def setup():
final_num = 100
primeCal(final_num)
def primeCal(n):
result = 0
num = 1
print("Sum of Prime number from 1 to",n)
while(num<=n):
primeNum = True
i = 2
while(i<num and primeNum):
if((num%i) == 0):
primeNum = False
i += 1
if(primeNum):
result += num
num += 1
print("result =",result)
setup()
# Monthly loan payment
def setup():
loan = 5000
interest_rate = 12 # percent
loan_term = 12 # months
loanCal(loan, interest_rate, loan_term)
def loanCal(loan, interest_rate, loan_term):
balance = loan
total_interest = 0
count=1
j = interest_rate/100/12
payMonthly = loan*(j/(1-(pow(1+j,-loan_term))))
print("***** Monthly Loan Payment *****")
print(" Loan Amount : $",loan)
print(" Loan Term : ",loan_term," months")
print(" Interest Rate : ",interest_rate,"%")
print("************************************")
print("Payment NO.| Balance | Interest | Principal | Unpaid Balance | Total Interest to Date")
while (count<=loan_term):
interest = j*balance
principal = payMonthly-interest
print(" ",round(count)," ",round(balance)," ",round(interest)," ",round(principal), end="")
balance -= principal
total_interest += interest
print(" ",round(balance)," ",round(total_interest))
count += 1
print("Payment Every Month : $",payMonthly)
print("Total of 12 Payments : $",(loan+total_interest))
print("Total Interest : $",total_interest)
setup()
กันยายน 20, 2558
Lab4x_Grade-Calculation & Leap-Year & Power-of-Ten & Delivery-Charge
# Grade Calculation
def setup():
score = 60
gradeCal(score)
def gradeCal(s):
print("Score = ",s)
if(s>=80 and s<=100):
print("Grade : A")
elif(s>=70 and s<80):
print("Grade : B")
elif(s>=55 and s<70):
print("Grade : C")
elif(s>=40 and s<55):
print("Grade : D")
elif(s>=0 and s<40):
print("Grade : F")
else:
println("Grade : -")
setup()
# Leap Year
def setup():
year = 1800
leapYear(year)
def leapYear(y):
print("Year = ",y);
if(y%400==0 or (y%4==0 and y%100!=0)):
print("Leap Year")
else:
print("Not Leap Year")
setup()
# Power of ten
def setup():
powerTen = 29
powerOfTen(powerTen)
def powerOfTen(p):
print("Power-of-ten = ",p)
if(p>=100):
if(p>100):
print("Number = Googol++")
else:
print("Number = Googol")
elif(p>=30):
if(p>30):
print("Number = Nonillion++")
else:
print("Number = Nonillion")
elif(p>=21):
if(p>21):
print("Number = Sextillion++")
else:
print("Number = Sextillion")
elif(p>=18):
if(p>18):
print("Number = Quintillion++")
else:
print("Number = Quintillion")
elif(p>=15):
if(p>15):
print("Number = Quadrillion++")
else:
print("Number = Quadrillion")
elif(p>=12):
if(p>12):
print("Number = Trillion++")
else:
print("Number = Trillion")
elif(p>=9):
if(p>9):
print("Number = Billion++")
else:
print("Number = Billion")
elif(p>=6):
if(p>6):
print("Number = Million++")
else:
print("Number = Million")
else:
print("Number = --")
setup()
# Delivery Charge
def setup():
packaging = 2 # (1)letter
# (2)box
service = 1 # (1)Next-Day-Priority
# (2)Next-Day-Standard
# (3)2-Day
weight = 11 # oz unit for letter
# pound unit for box
error = False
if(packaging == 1):
print("type of packaging = letter")
elif(packaging == 2):
print("type of packaging = box")
else:
print("type of packaging = Error")
error = True
if(service == 1):
print("service = Next-Day-Priority")
elif(service == 2):
print("service = Next-Day-Standard")
elif(service == 3):
print("service = 2-Day")
else:
print("service = Error")
error = True
if(packaging == 1):
print("Weight = ",weight," oz")
elif(packaging == 2):
print("Weight = ",weight," pound")
#Calculation
if(error == True):
print("The charge = Error")
elif(packaging == 1):
if(service == 1):
if(weight <= 8):
print("The charge = $12.00")
else:
print("Error : Over Load")
elif(service == 2):
if(weight <= 8):
print("The charge = $10.50")
else:
print("Error : Over Load")
else:
print("This service is not available")
else:
if(service == 1):
value = 15.75+((weight-1)*1.25)
elif(service == 2):
value = 13.75+((weight-1)*1.00)
else:
value = 7.00+((weight-1)*0.50)
print("The charge = $",value)
setup()
def setup():
score = 60
gradeCal(score)
def gradeCal(s):
print("Score = ",s)
if(s>=80 and s<=100):
print("Grade : A")
elif(s>=70 and s<80):
print("Grade : B")
elif(s>=55 and s<70):
print("Grade : C")
elif(s>=40 and s<55):
print("Grade : D")
elif(s>=0 and s<40):
print("Grade : F")
else:
println("Grade : -")
setup()
# Leap Year
def setup():
year = 1800
leapYear(year)
def leapYear(y):
print("Year = ",y);
if(y%400==0 or (y%4==0 and y%100!=0)):
print("Leap Year")
else:
print("Not Leap Year")
setup()
# Power of ten
def setup():
powerTen = 29
powerOfTen(powerTen)
def powerOfTen(p):
print("Power-of-ten = ",p)
if(p>=100):
if(p>100):
print("Number = Googol++")
else:
print("Number = Googol")
elif(p>=30):
if(p>30):
print("Number = Nonillion++")
else:
print("Number = Nonillion")
elif(p>=21):
if(p>21):
print("Number = Sextillion++")
else:
print("Number = Sextillion")
elif(p>=18):
if(p>18):
print("Number = Quintillion++")
else:
print("Number = Quintillion")
elif(p>=15):
if(p>15):
print("Number = Quadrillion++")
else:
print("Number = Quadrillion")
elif(p>=12):
if(p>12):
print("Number = Trillion++")
else:
print("Number = Trillion")
elif(p>=9):
if(p>9):
print("Number = Billion++")
else:
print("Number = Billion")
elif(p>=6):
if(p>6):
print("Number = Million++")
else:
print("Number = Million")
else:
print("Number = --")
setup()
# Delivery Charge
def setup():
packaging = 2 # (1)letter
# (2)box
service = 1 # (1)Next-Day-Priority
# (2)Next-Day-Standard
# (3)2-Day
weight = 11 # oz unit for letter
# pound unit for box
error = False
if(packaging == 1):
print("type of packaging = letter")
elif(packaging == 2):
print("type of packaging = box")
else:
print("type of packaging = Error")
error = True
if(service == 1):
print("service = Next-Day-Priority")
elif(service == 2):
print("service = Next-Day-Standard")
elif(service == 3):
print("service = 2-Day")
else:
print("service = Error")
error = True
if(packaging == 1):
print("Weight = ",weight," oz")
elif(packaging == 2):
print("Weight = ",weight," pound")
#Calculation
if(error == True):
print("The charge = Error")
elif(packaging == 1):
if(service == 1):
if(weight <= 8):
print("The charge = $12.00")
else:
print("Error : Over Load")
elif(service == 2):
if(weight <= 8):
print("The charge = $10.50")
else:
print("Error : Over Load")
else:
print("This service is not available")
else:
if(service == 1):
value = 15.75+((weight-1)*1.25)
elif(service == 2):
value = 13.75+((weight-1)*1.00)
else:
value = 7.00+((weight-1)*0.50)
print("The charge = $",value)
setup()
Lab4x_BMI & Circle
#Calculate body mass index (BMI)
def setup():
weight= 60
tall= 175
BMI_cal(weight,tall)
def BMI_cal(weight,tall):
BMI=weight/((tall/100)*(tall/100))
print("Weight = " , weight)
print("Height = " , tall)
print("BMI = " , BMI)
setup()
#Calculate circumference and area of a circle from its diameter
def setup():
diam=10
circle_cal(diam)
def circle_cal(d):
pi=22/7
circum = 2*pi*(d/2)
areaCir=pi*(d/2)*(d/2)
print("Diameter = " , d)
print("Circumference = " , circum)
print("area of a circle = " , areaCir)
setup()
def setup():
weight= 60
tall= 175
BMI_cal(weight,tall)
def BMI_cal(weight,tall):
BMI=weight/((tall/100)*(tall/100))
print("Weight = " , weight)
print("Height = " , tall)
print("BMI = " , BMI)
setup()
#Calculate circumference and area of a circle from its diameter
def setup():
diam=10
circle_cal(diam)
def circle_cal(d):
pi=22/7
circum = 2*pi*(d/2)
areaCir=pi*(d/2)*(d/2)
print("Diameter = " , d)
print("Circumference = " , circum)
print("area of a circle = " , areaCir)
setup()
กันยายน 15, 2558
Lab4_Generic exercise
//*****sum-Of-1-to-N*****
void setup(){
int N = 15;
sumOfOneToN(N);
}
void sumOfOneToN(int n){
int sum = 0;
println("N = "+n);
while(n>0){
sum += n;
n--;
}
println("sum of int from 1 to N = "+sum);
}
//*****Multiplication-Table*****
void setup(){
int num = 13;
multipli_table(num);
}
void multipli_table(int n){
int multi = 1;
println("Multiplication-Table of "+n);
while(multi <= 12){
println(n+" x "+multi+" = "+(n*multi));
multi++;
}
}
//*****Prime-Number*****
void setup(){
int final_num = 100;
primeCal(final_num);
}
void primeCal(int n){
int num = 1;
println("Prime number from 1 to "+n);
while(num<=n){
boolean primeNum = true;
int i = 2;
while(i<num && primeNum){
if((num%i) == 0)
primeNum = false;
i++;
}
if(primeNum)
print(num+" ");
num++;
}
}
void setup(){
int N = 15;
sumOfOneToN(N);
}
void sumOfOneToN(int n){
int sum = 0;
println("N = "+n);
while(n>0){
sum += n;
n--;
}
println("sum of int from 1 to N = "+sum);
}
//*****Multiplication-Table*****
void setup(){
int num = 13;
multipli_table(num);
}
void multipli_table(int n){
int multi = 1;
println("Multiplication-Table of "+n);
while(multi <= 12){
println(n+" x "+multi+" = "+(n*multi));
multi++;
}
}
void setup(){
int final_num = 100;
primeCal(final_num);
}
void primeCal(int n){
int num = 1;
println("Prime number from 1 to "+n);
while(num<=n){
boolean primeNum = true;
int i = 2;
while(i<num && primeNum){
if((num%i) == 0)
primeNum = false;
i++;
}
if(primeNum)
print(num+" ");
num++;
}
}
//*****Monthly-loan-payment*****
void setup() {
float loan = 5000;
float interest_rate = 12; //percent
int loan_term = 12; //months
loanCal(loan, interest_rate, loan_term);
}
void loanCal(float loan, float interest_rate, float loan_term) {
float payMonthly, balance = loan, total_interest=0;
float interest, principal, j;
int count=1;
j = interest_rate/100/12;
payMonthly = loan*(j/(1-(pow(1+j,-loan_term))));
println("***** Monthly Loan Payment *****");
println(" Loan Amount : $"+loan);
println(" Loan Term : "+loan_term+" months");
println(" Interest Rate : "+interest_rate+"%");
println("************************************");
println("Payment NO.| Balance | Interest | Principal | Unpaid Balance | Total Interest to Date");
while (count<=loan_term) {
interest = j*balance;
principal = payMonthly-interest;
print(" "+count+" "+balance+" "+interest+" "+principal);
balance -= principal;
total_interest += interest;
println(" "+balance+" "+total_interest);
count++;
}
println("Payment Every Month : $"+payMonthly);
println("Total of 12 Payments : $"+(loan+total_interest));
println("Total Interest : $"+total_interest);
}
Lab4_songs
int limit=0;
int light_brown=#F7DEA7;
int white=255;
color screen;
color Line=255;
boolean dropNote=false;
int noteY=0;
void draw() {
int noteX=10;
size(350, 185);
background(screen);
limit++;
limit %= 180;
draw_song();
if (dropNote) {
while (noteX<width) {
note(noteX);
noteX += 25;
}
if (noteY>200) {
dropNote=false;
noteY=0;
}
}
}
void draw_song() {
int posX=100;
posX+=limit;
noStroke();
//draw"THE"
fill(Line);
rect(posX-25, 10, 70, 30); //blank"THE"
fill(screen);
rect(posX-25, 15, 7, 25);
rect(posX-13, 15, 7, 25); //T
rect(posX, 10, 15, 12);
rect(posX, 27, 15, 13); //H
rect(posX+20, 10, 3, 30);
rect(posX+28, 15, 17, 7);
rect(posX+28, 27, 17, 8); //E
triangle(posX+33, 10, posX+45, 45, posX+45, 10);
//draw"SCRIPT"
fill(Line);
arc(45, 75, 60, 60, HALF_PI, TWO_PI);
arc(45, 131, 70, 70, HALF_PI+PI, TWO_PI+HALF_PI); //S
arc(130, 105, 110, 110, QUARTER_PI+PI/32, TWO_PI-QUARTER_PI-PI/32); //C
rect(165, 50, 20, 10);
rect(165, 105, 20, 10);
arc(185, 82.5, 60, 65, 3*PI/2, 5*PI/2);
quad(170, 115, 185, 115, 215, 147, 215, 163); //R
rect(220, 50, 10, 120); //I
rect(235, 50, 10, 120);
rect(245, 50, 20, 10);
rect(245, 105, 20, 10);
arc(265, 82.5, 60, 65, 3*PI/2, 5*PI/2); //P
quad(265, 50, 330, 50, 335, 60, 265, 60);
rect(300, 50, 10, 120); //T
fill(screen);
arc(45, 76, 40, 40, HALF_PI, TWO_PI);
arc(45, 131, 50, 50, HALF_PI+PI, TWO_PI+HALF_PI); //S
arc(130, 105, 90, 90, QUARTER_PI, TWO_PI-QUARTER_PI); //C
triangle(147, 50, 155, 80, 155, 50);
arc(185, 82.5, 40, 45, 3*PI/2, 5*PI/2); //R
quad(220, 65, 230, 60, 230, 65, 220, 70); //I
arc(265, 82.5, 40, 45, 3*PI/2, 5*PI/2); //P
triangle(220, 170, 310, 130, 310, 170);
fill(Line);
rect(155, 50, 10, 97); //R
}
void note(int noteX) {
fill(Line);
ellipse(noteX, noteY, 15, 15);
stroke(Line);
strokeWeight(3);
line(noteX+6, noteY, noteX+6, noteY-35);
line(noteX+6, noteY-30, noteX+13, noteY-10);
line(noteX+13, noteY-10, noteX+12, noteY-5);
noteY++;
}
void mouseClicked() {
if (mouseButton==RIGHT) {
white *= -1;
Line += white;
screen += light_brown;
light_brown*=-1;
} else if (mouseButton==LEFT) {
dropNote=true;
}
}
int light_brown=#F7DEA7;
int white=255;
color screen;
color Line=255;
boolean dropNote=false;
int noteY=0;
void draw() {
int noteX=10;
size(350, 185);
background(screen);
limit++;
limit %= 180;
draw_song();
if (dropNote) {
while (noteX<width) {
note(noteX);
noteX += 25;
}
if (noteY>200) {
dropNote=false;
noteY=0;
}
}
}
void draw_song() {
int posX=100;
posX+=limit;
noStroke();
//draw"THE"
fill(Line);
rect(posX-25, 10, 70, 30); //blank"THE"
fill(screen);
rect(posX-25, 15, 7, 25);
rect(posX-13, 15, 7, 25); //T
rect(posX, 10, 15, 12);
rect(posX, 27, 15, 13); //H
rect(posX+20, 10, 3, 30);
rect(posX+28, 15, 17, 7);
rect(posX+28, 27, 17, 8); //E
triangle(posX+33, 10, posX+45, 45, posX+45, 10);
//draw"SCRIPT"
fill(Line);
arc(45, 75, 60, 60, HALF_PI, TWO_PI);
arc(45, 131, 70, 70, HALF_PI+PI, TWO_PI+HALF_PI); //S
arc(130, 105, 110, 110, QUARTER_PI+PI/32, TWO_PI-QUARTER_PI-PI/32); //C
rect(165, 50, 20, 10);
rect(165, 105, 20, 10);
arc(185, 82.5, 60, 65, 3*PI/2, 5*PI/2);
quad(170, 115, 185, 115, 215, 147, 215, 163); //R
rect(220, 50, 10, 120); //I
rect(235, 50, 10, 120);
rect(245, 50, 20, 10);
rect(245, 105, 20, 10);
arc(265, 82.5, 60, 65, 3*PI/2, 5*PI/2); //P
quad(265, 50, 330, 50, 335, 60, 265, 60);
rect(300, 50, 10, 120); //T
fill(screen);
arc(45, 76, 40, 40, HALF_PI, TWO_PI);
arc(45, 131, 50, 50, HALF_PI+PI, TWO_PI+HALF_PI); //S
arc(130, 105, 90, 90, QUARTER_PI, TWO_PI-QUARTER_PI); //C
triangle(147, 50, 155, 80, 155, 50);
arc(185, 82.5, 40, 45, 3*PI/2, 5*PI/2); //R
quad(220, 65, 230, 60, 230, 65, 220, 70); //I
arc(265, 82.5, 40, 45, 3*PI/2, 5*PI/2); //P
triangle(220, 170, 310, 130, 310, 170);
fill(Line);
rect(155, 50, 10, 97); //R
}
void note(int noteX) {
fill(Line);
ellipse(noteX, noteY, 15, 15);
stroke(Line);
strokeWeight(3);
line(noteX+6, noteY, noteX+6, noteY-35);
line(noteX+6, noteY-30, noteX+13, noteY-10);
line(noteX+13, noteY-10, noteX+12, noteY-5);
noteY++;
}
void mouseClicked() {
if (mouseButton==RIGHT) {
white *= -1;
Line += white;
screen += light_brown;
light_brown*=-1;
} else if (mouseButton==LEFT) {
dropNote=true;
}
}
Lab4_books
int wink;
float spin;
void draw() {
size(300, 400);
background(0); //colorBlack
draw_book();
if (keyPressed) {
if (key==CODED) {
if (keyCode==LEFT) spin+=PI/32;
else if (keyCode==RIGHT) spin-=PI/32;
}
}
fill(255);
text("Pressed LEFT or RIGHT arrow.", 75, 350);
fill(0);
}
void draw_book() {
int posX=155, posY=150;
float addPos=0,count=0;
if (frameCount%50<=25) wink=1;
else wink=0;
//bones
while (count<2) {
translate(155, 150);
rotate(spin+addPos);
fill(255); //colorWhite
noStroke();
beginShape();
vertex(-90, -110);
vertex(110, 90);
vertex(110, 110);
vertex(90, 110);
vertex(-110, -90);
vertex(-110, -110);
endShape();
beginShape();
vertex(90, -110);
vertex(-110, 90);
vertex(-110, 110);
vertex(-90, 110);
vertex(110, -90);
vertex(110, -110);
endShape();
ellipse(-100, -120, 30, 30);
ellipse(-120, -100, 30, 30);
ellipse(100, -120, 30, 30);
ellipse(120, -100, 30, 30);
ellipse(120, 100, 30, 30);
ellipse(100, 120, 30, 30);
ellipse(-100, 120, 30, 30);
ellipse(-120, 100, 30, 30);
rotate(-spin-addPos);
translate(-155, -150);
addPos=PI/4;
count++;
}
//skull & hat
stroke(0);
strokeWeight(4);
ellipse(posX, posY+90, 80, 90);
fill(145, 55, 25); //colorBrown
arc(posX, posY, 170, 170, PI+PI/16, TWO_PI-PI/16);
fill(255, 210, 50); //colorYellow
arc(posX, posY, 170, 170, PI+PI/7, TWO_PI-PI/7);
arc(posX, posY+30, 320, 115, PI+PI/5, TWO_PI-PI/5);
fill(255); //colorWhite
arc(posX, posY, 170, 170, 0, PI);
arc(posX, posY, 170, 30, PI, TWO_PI);
//detail
fill(0);
ellipse(posX, posY+60, 20, 20); //nose
ellipse(posX+35, posY+25, 50, 50*wink); //R-eye
ellipse(posX-35, posY+25, 50, 50*wink); //L-eye
noFill();
arc(posX, posY, 195, 195, HALF_PI-PI/8, HALF_PI+PI/8);
arc(posX, posY, 220, 220, HALF_PI-PI/8+PI/48, HALF_PI+PI/8-PI/48);
line(posX-20, posY+85, posX-23, posY+105);
line(posX, posY+85, posX, posY+110);
line(posX+20, posY+85, posX+23, posY+105);
//book
strokeWeight(3);
stroke(100); //lncolorGray
arc(5, 400, 16, 50, HALF_PI, 3*PI/2);
line(8, 0, 8, 375);
line(8, 375, 300, 375);
line(7, 380, 300, 380);
line(6, 385, 300, 385);
line(5, 390, 300, 390);
line(4, 395, 300, 395);
wink++;
}
float spin;
void draw() {
size(300, 400);
background(0); //colorBlack
draw_book();
if (keyPressed) {
if (key==CODED) {
if (keyCode==LEFT) spin+=PI/32;
else if (keyCode==RIGHT) spin-=PI/32;
}
}
fill(255);
text("Pressed LEFT or RIGHT arrow.", 75, 350);
fill(0);
}
void draw_book() {
int posX=155, posY=150;
float addPos=0,count=0;
if (frameCount%50<=25) wink=1;
else wink=0;
//bones
while (count<2) {
translate(155, 150);
rotate(spin+addPos);
fill(255); //colorWhite
noStroke();
beginShape();
vertex(-90, -110);
vertex(110, 90);
vertex(110, 110);
vertex(90, 110);
vertex(-110, -90);
vertex(-110, -110);
endShape();
beginShape();
vertex(90, -110);
vertex(-110, 90);
vertex(-110, 110);
vertex(-90, 110);
vertex(110, -90);
vertex(110, -110);
endShape();
ellipse(-100, -120, 30, 30);
ellipse(-120, -100, 30, 30);
ellipse(100, -120, 30, 30);
ellipse(120, -100, 30, 30);
ellipse(120, 100, 30, 30);
ellipse(100, 120, 30, 30);
ellipse(-100, 120, 30, 30);
ellipse(-120, 100, 30, 30);
rotate(-spin-addPos);
translate(-155, -150);
addPos=PI/4;
count++;
}
//skull & hat
stroke(0);
strokeWeight(4);
ellipse(posX, posY+90, 80, 90);
fill(145, 55, 25); //colorBrown
arc(posX, posY, 170, 170, PI+PI/16, TWO_PI-PI/16);
fill(255, 210, 50); //colorYellow
arc(posX, posY, 170, 170, PI+PI/7, TWO_PI-PI/7);
arc(posX, posY+30, 320, 115, PI+PI/5, TWO_PI-PI/5);
fill(255); //colorWhite
arc(posX, posY, 170, 170, 0, PI);
arc(posX, posY, 170, 30, PI, TWO_PI);
//detail
fill(0);
ellipse(posX, posY+60, 20, 20); //nose
ellipse(posX+35, posY+25, 50, 50*wink); //R-eye
ellipse(posX-35, posY+25, 50, 50*wink); //L-eye
noFill();
arc(posX, posY, 195, 195, HALF_PI-PI/8, HALF_PI+PI/8);
arc(posX, posY, 220, 220, HALF_PI-PI/8+PI/48, HALF_PI+PI/8-PI/48);
line(posX-20, posY+85, posX-23, posY+105);
line(posX, posY+85, posX, posY+110);
line(posX+20, posY+85, posX+23, posY+105);
//book
strokeWeight(3);
stroke(100); //lncolorGray
arc(5, 400, 16, 50, HALF_PI, 3*PI/2);
line(8, 0, 8, 375);
line(8, 375, 300, 375);
line(7, 380, 300, 380);
line(6, 385, 300, 385);
line(5, 390, 300, 390);
line(4, 395, 300, 395);
wink++;
}
Lab4_movies
int posX=100,posY=100;
int speed=1,assist=1;
boolean hold=false;
void draw(){
size(300,250);
background(#FF7700); //red
draw_movie();
if(hold) saber();
}
void draw_movie(){
strokeWeight(3);
stroke(100); //lnColorGray
fill(0); //colorBlack
quad(posX-95,posY+115,posX+145,posY+115,posX+109,posY+19,posX-59,posY+19); //wing
arc(posX+25,posY-90,550,455,HALF_PI-PI/7,HALF_PI+PI/7); //wing
quad(posX-53,posY+15,posX+103,posY+15,posX+75,posY+125,posX-25,posY+125); //face
arc(posX+25,posY-10,160,160,PI-PI/8,TWO_PI+PI/8); //head
quad(posX+37,posY+21,posX+90,posY+21,posX+145,posY+115,posX+112,posY+15);
quad(posX+13,posY+21,posX-40,posY+21,posX-95,posY+115,posX-63,posY+15);
arc(posX+75,posY+20,75,60,PI,TWO_PI); //R-eyebrow
arc(posX-25,posY+20,75,60,PI,TWO_PI); //L-eyebrow
fill(255); //colorWhite
ellipse(posX+55,posY+45,70,35); //R-eye
ellipse(posX-5,posY+45,70,35); //L-eye
fill(0);
triangle(posX-25,posY+125,posX+75,posY+125,posX+25,posY+65); //mouth
stroke(255); //lnColorWhite
line(posX-9,posY+108,posX-9,posY+125);
line(posX+8,posY+88,posX+8,posY+125);
line(posX+25,posY+80,posX+25,posY+125);
line(posX+42,posY+88,posX+42,posY+125);
line(posX+59,posY+108,posX+59,posY+125);
stroke(100);
fill(255);
rect(posX+13,posY+65,25,15); //nose
fill(0);
rect(posX+15,posY-92,20,145);
quad(posX+15,posY+53,posX+35,posY+53,posX+38,posY+65,posX+13,posY+65);
arc(posX+25,posY+125,100,40,0,PI); //chin
fill(255);
ellipse(posX+70,posY+125,10,10);
ellipse(posX-20,posY+125,10,10);
posX+=speed;
posX %= 250;
}
void saber(){
int count=0,addX=0;
while(count<2){
strokeWeight(14);
stroke(#FF0000);
line(posX-95+addX,225,posX-95+addX,20);
strokeWeight(8);
stroke(255);
line(posX-95+addX,220,posX-95+addX,23);
strokeWeight(3);
stroke(100);
fill(200);
rect(posX-100+addX,225,10,25);
addX=235;
count++;
}
}
void mouseClicked(){
if(mouseButton==RIGHT){
assist*=(-1);
speed+=assist;
}
if(mouseButton==LEFT){
if(hold==true) hold=false;
else hold=true;
}
}
int speed=1,assist=1;
boolean hold=false;
void draw(){
size(300,250);
background(#FF7700); //red
draw_movie();
if(hold) saber();
}
void draw_movie(){
strokeWeight(3);
stroke(100); //lnColorGray
fill(0); //colorBlack
quad(posX-95,posY+115,posX+145,posY+115,posX+109,posY+19,posX-59,posY+19); //wing
arc(posX+25,posY-90,550,455,HALF_PI-PI/7,HALF_PI+PI/7); //wing
quad(posX-53,posY+15,posX+103,posY+15,posX+75,posY+125,posX-25,posY+125); //face
arc(posX+25,posY-10,160,160,PI-PI/8,TWO_PI+PI/8); //head
quad(posX+37,posY+21,posX+90,posY+21,posX+145,posY+115,posX+112,posY+15);
quad(posX+13,posY+21,posX-40,posY+21,posX-95,posY+115,posX-63,posY+15);
arc(posX+75,posY+20,75,60,PI,TWO_PI); //R-eyebrow
arc(posX-25,posY+20,75,60,PI,TWO_PI); //L-eyebrow
fill(255); //colorWhite
ellipse(posX+55,posY+45,70,35); //R-eye
ellipse(posX-5,posY+45,70,35); //L-eye
fill(0);
triangle(posX-25,posY+125,posX+75,posY+125,posX+25,posY+65); //mouth
stroke(255); //lnColorWhite
line(posX-9,posY+108,posX-9,posY+125);
line(posX+8,posY+88,posX+8,posY+125);
line(posX+25,posY+80,posX+25,posY+125);
line(posX+42,posY+88,posX+42,posY+125);
line(posX+59,posY+108,posX+59,posY+125);
stroke(100);
fill(255);
rect(posX+13,posY+65,25,15); //nose
fill(0);
rect(posX+15,posY-92,20,145);
quad(posX+15,posY+53,posX+35,posY+53,posX+38,posY+65,posX+13,posY+65);
arc(posX+25,posY+125,100,40,0,PI); //chin
fill(255);
ellipse(posX+70,posY+125,10,10);
ellipse(posX-20,posY+125,10,10);
posX+=speed;
posX %= 250;
}
void saber(){
int count=0,addX=0;
while(count<2){
strokeWeight(14);
stroke(#FF0000);
line(posX-95+addX,225,posX-95+addX,20);
strokeWeight(8);
stroke(255);
line(posX-95+addX,220,posX-95+addX,23);
strokeWeight(3);
stroke(100);
fill(200);
rect(posX-100+addX,225,10,25);
addX=235;
count++;
}
}
void mouseClicked(){
if(mouseButton==RIGHT){
assist*=(-1);
speed+=assist;
}
if(mouseButton==LEFT){
if(hold==true) hold=false;
else hold=true;
}
}
กันยายน 13, 2558
Lab4_birds
float cloudX=0;
float move=1;
void draw(){
int count= -2;
int posX, posY;
size(500,500);
background(#00AAFF);
cloud();
while(count<3){
posX=mouseX+(count*60);
posY=mouseY+(count*60);
translate(posX,posY);
strokeWeight(1.5);
bird();
translate(-posX,-posY);
count++;
}
}
void bird(){
rotate(PI/5);
fill(#FF0000);
ellipse(0,-25,10,20); //hair
ellipse(-10,-25,10,20);
rotate(-PI/5);
wing();
ellipse(0,0,50,50); //body
fill(#FFFF00);
arc(0,0,50,50,PI/4,3*PI/4);
fill(255);
ellipse(-10,-5,15,10); //left eye
fill(0);
ellipse(-10,-5,5,5);
fill(255);
ellipse(10,-5,15,10); //right eye
fill(0);
ellipse(10,-5,5,5);
triangle(0,0,-10,10,10,10); //beak
}
void wing(){
float roll;
if((frameCount%50)<=25)
roll=PI/16;
else
roll=-PI/16;
rotate(roll);
ellipse(-30,0,50,20); //left wing
rotate(-2*roll);
ellipse(30,0,50,20); //right wing
rotate(roll);
}
void cloud(){
noStroke();
fill(255);
ellipse(510-cloudX,100,100,30);
ellipse(30+cloudX,175,120,60);
ellipse(450-cloudX,300,75,50);
ellipse(100+cloudX,275,85,45);
ellipse(350-cloudX,405,215,140);
stroke(0);
cloudX+=move;
if (cloudX>=450)
move*=-1;
else if (cloudX<=-50)
move*=-1;
}
float move=1;
void draw(){
int count= -2;
int posX, posY;
size(500,500);
background(#00AAFF);
cloud();
while(count<3){
posX=mouseX+(count*60);
posY=mouseY+(count*60);
translate(posX,posY);
strokeWeight(1.5);
bird();
translate(-posX,-posY);
count++;
}
}
void bird(){
rotate(PI/5);
fill(#FF0000);
ellipse(0,-25,10,20); //hair
ellipse(-10,-25,10,20);
rotate(-PI/5);
wing();
ellipse(0,0,50,50); //body
fill(#FFFF00);
arc(0,0,50,50,PI/4,3*PI/4);
fill(255);
ellipse(-10,-5,15,10); //left eye
fill(0);
ellipse(-10,-5,5,5);
fill(255);
ellipse(10,-5,15,10); //right eye
fill(0);
ellipse(10,-5,5,5);
triangle(0,0,-10,10,10,10); //beak
}
void wing(){
float roll;
if((frameCount%50)<=25)
roll=PI/16;
else
roll=-PI/16;
rotate(roll);
ellipse(-30,0,50,20); //left wing
rotate(-2*roll);
ellipse(30,0,50,20); //right wing
rotate(roll);
}
void cloud(){
noStroke();
fill(255);
ellipse(510-cloudX,100,100,30);
ellipse(30+cloudX,175,120,60);
ellipse(450-cloudX,300,75,50);
ellipse(100+cloudX,275,85,45);
ellipse(350-cloudX,405,215,140);
stroke(0);
cloudX+=move;
if (cloudX>=450)
move*=-1;
else if (cloudX<=-50)
move*=-1;
}
Lab4_balloons
void draw(){
int count=-1;
size(200,400);
background(255);
while(count<2){
int posX=width/2;
posX+=(55*count);
draw_balloon(posX);
count++;
}
}
void draw_balloon(int x){
int posY=mouseY;
color ball;
if(mouseY<=50){
posY=50;
ball=#00FF00;
}
else if(mouseY>=300){
posY=300;
ball=#FF0000;
}
else ball=255;
strokeWeight(1.5);
fill(ball);
line(x,posY,x,posY+100);
ellipse(x,posY,50,50);
}
int count=-1;
size(200,400);
background(255);
while(count<2){
int posX=width/2;
posX+=(55*count);
draw_balloon(posX);
count++;
}
}
void draw_balloon(int x){
int posY=mouseY;
color ball;
if(mouseY<=50){
posY=50;
ball=#00FF00;
}
else if(mouseY>=300){
posY=300;
ball=#FF0000;
}
else ball=255;
strokeWeight(1.5);
fill(ball);
line(x,posY,x,posY+100);
ellipse(x,posY,50,50);
}
กันยายน 06, 2558
Lab3_Generic exercise
//*****Grade Calculation*****
void setup(){
int score = 60;
gradeCal(score);
}
void gradeCal(int s){
println("Score = "+s);
print("Grade : ");
if(s>=80 && s<=100) println("A");
else if(s>=70 && s<80) println("B");
else if(s>=55 && s<70) println("C");
else if(s>=40 && s<55) println("D");
else if(s>=0 && s<40) println("F");
else println("-"); //for error
}
//*****Leap Year*****
void setup(){
int year = 1800;
leapYear(year);
}
void leapYear(int y){
println("Year = "+y);
if( y%400==0 || (y%4==0 && !(y%100==0)) )
println("Leap Year");
else println("Not Leap Year");
}
//*****power-of-ten*****
void setup(){
int powerTen = 18;
powerOfTen(powerTen);
}
void powerOfTen(int p){
println("Power-of-ten = "+p);
print("Number = ");
if(p>=100){
print("Googol");
if(p>100) println("++");
}
else if(p>=30){
print("Nonillion");
if(p>30) println("++");
}
else if(p>=21){
print("Sextillion");
if(p>21) println("++");
}
else if(p>=18){
print("Quintillion");
if(p>18) println("++");
}
else if(p>=15){
print("Quadrillion");
if(p>15) println("++");
}
else if(p>=12){
print("Trillion");
if(p>12) println("++");
}
else if(p>=9){
print("Billion");
if(p>9) println("++");
}
else if(p>=6){
print("Million");
if(p>6) println("++");
}
else{
print("--");
}
}
//*****Delivery-Charge*****
void setup(){
int packaging = 2; // (1)letter
// (2)box
int service = 1; // (1)Next-Day-Priority
// (2)Next-Day-Standard
// (3)2-Day
float weight = 11; // oz unit for letter
// pound unit for box
float value;
boolean error = false;
print("type of packaging = ");
if(packaging == 1) println("letter");
else if(packaging == 2) println("box");
else {
println("Error");
error = true;
}
print("service = ");
if(service == 1) println("Next-Day-Priority");
else if(service == 2) println("Next-Day-Standard");
else if(service == 3) println("2-Day");
else {
println("Error");
error = true;
}
print("Weight = "+weight+" ");
if(packaging == 1) println("oz");
else if(packaging == 2) println("pound");
//Calculation
print("The charge = ");
if(error == true) println("Error");
else if(packaging == 1){
if(service == 1){
if(weight <= 8) println("$12.00");
else println("Error : Over Load");
}
else if(service == 2){
if(weight <= 8) println("$10.50");
else println("Error : Over Load");
}
else println("not available");
}
else if(packaging == 2){
if(service == 1){
value = 15.75+((weight-1)*1.25);
}
else if(service == 2){
value = 13.75+((weight-1)*1.00);
}
else value = 7.00+((weight-1)*0.50);
println("$"+value);
}
}
void setup(){
int score = 60;
gradeCal(score);
}
void gradeCal(int s){
println("Score = "+s);
print("Grade : ");
if(s>=80 && s<=100) println("A");
else if(s>=70 && s<80) println("B");
else if(s>=55 && s<70) println("C");
else if(s>=40 && s<55) println("D");
else if(s>=0 && s<40) println("F");
else println("-"); //for error
}
//*****Leap Year*****
void setup(){
int year = 1800;
leapYear(year);
}
void leapYear(int y){
println("Year = "+y);
if( y%400==0 || (y%4==0 && !(y%100==0)) )
println("Leap Year");
else println("Not Leap Year");
}
//*****power-of-ten*****
void setup(){
int powerTen = 18;
powerOfTen(powerTen);
}
void powerOfTen(int p){
println("Power-of-ten = "+p);
print("Number = ");
if(p>=100){
print("Googol");
if(p>100) println("++");
}
else if(p>=30){
print("Nonillion");
if(p>30) println("++");
}
else if(p>=21){
print("Sextillion");
if(p>21) println("++");
}
else if(p>=18){
print("Quintillion");
if(p>18) println("++");
}
else if(p>=15){
print("Quadrillion");
if(p>15) println("++");
}
else if(p>=12){
print("Trillion");
if(p>12) println("++");
}
else if(p>=9){
print("Billion");
if(p>9) println("++");
}
else if(p>=6){
print("Million");
if(p>6) println("++");
}
else{
print("--");
}
}
//*****Delivery-Charge*****
void setup(){
int packaging = 2; // (1)letter
// (2)box
int service = 1; // (1)Next-Day-Priority
// (2)Next-Day-Standard
// (3)2-Day
float weight = 11; // oz unit for letter
// pound unit for box
float value;
boolean error = false;
print("type of packaging = ");
if(packaging == 1) println("letter");
else if(packaging == 2) println("box");
else {
println("Error");
error = true;
}
print("service = ");
if(service == 1) println("Next-Day-Priority");
else if(service == 2) println("Next-Day-Standard");
else if(service == 3) println("2-Day");
else {
println("Error");
error = true;
}
print("Weight = "+weight+" ");
if(packaging == 1) println("oz");
else if(packaging == 2) println("pound");
//Calculation
print("The charge = ");
if(error == true) println("Error");
else if(packaging == 1){
if(service == 1){
if(weight <= 8) println("$12.00");
else println("Error : Over Load");
}
else if(service == 2){
if(weight <= 8) println("$10.50");
else println("Error : Over Load");
}
else println("not available");
}
else if(packaging == 2){
if(service == 1){
value = 15.75+((weight-1)*1.25);
}
else if(service == 2){
value = 13.75+((weight-1)*1.00);
}
else value = 7.00+((weight-1)*0.50);
println("$"+value);
}
}
Lab3_movie
int posX=100,posY=100;
int speed=1,assist=1;
boolean hold=false;
void draw(){
size(250,250);
background(#FF7700); //red
draw_movie();
if(hold) saber();
}
void draw_movie(){
strokeWeight(3);
stroke(100); //lnColorGray
fill(0); //colorBlack
quad(posX-95,posY+115,posX+145,posY+115,posX+109,posY+19,posX-59,posY+19); //wing
arc(posX+25,posY-90,550,455,HALF_PI-PI/7,HALF_PI+PI/7); //wing
quad(posX-53,posY+15,posX+103,posY+15,posX+75,posY+125,posX-25,posY+125); //face
arc(posX+25,posY-10,160,160,PI-PI/8,TWO_PI+PI/8); //head
quad(posX+37,posY+21,posX+90,posY+21,posX+145,posY+115,posX+112,posY+15);
quad(posX+13,posY+21,posX-40,posY+21,posX-95,posY+115,posX-63,posY+15);
arc(posX+75,posY+20,75,60,PI,TWO_PI); //R-eyebrow
arc(posX-25,posY+20,75,60,PI,TWO_PI); //L-eyebrow
fill(255); //colorWhite
ellipse(posX+55,posY+45,70,35); //R-eye
ellipse(posX-5,posY+45,70,35); //L-eye
fill(0);
triangle(posX-25,posY+125,posX+75,posY+125,posX+25,posY+65); //mouth
stroke(255); //lnColorWhite
line(posX-9,posY+108,posX-9,posY+125);
line(posX+8,posY+88,posX+8,posY+125);
line(posX+25,posY+80,posX+25,posY+125);
line(posX+42,posY+88,posX+42,posY+125);
line(posX+59,posY+108,posX+59,posY+125);
stroke(100);
fill(255);
rect(posX+13,posY+65,25,15); //nose
fill(0);
rect(posX+15,posY-92,20,145);
quad(posX+15,posY+53,posX+35,posY+53,posX+38,posY+65,posX+13,posY+65);
arc(posX+25,posY+125,100,40,0,PI); //chin
fill(255);
ellipse(posX+70,posY+125,10,10);
ellipse(posX-20,posY+125,10,10);
posX+=speed;
posX %= 250;
}
void saber(){
strokeWeight(14);
stroke(#FF0000);
line(posX-95,225,posX-95,20);
strokeWeight(8);
stroke(255);
line(posX-95,220,posX-95,23);
strokeWeight(3);
stroke(100);
fill(200);
rect(posX-100,225,10,25);
}
void mouseClicked(){
if(mouseButton==RIGHT){
assist*=(-1);
speed+=assist;
}
if(mouseButton==LEFT){
if(hold==true) hold=false;
else hold=true;
}
}
int speed=1,assist=1;
boolean hold=false;
void draw(){
size(250,250);
background(#FF7700); //red
draw_movie();
if(hold) saber();
}
void draw_movie(){
strokeWeight(3);
stroke(100); //lnColorGray
fill(0); //colorBlack
quad(posX-95,posY+115,posX+145,posY+115,posX+109,posY+19,posX-59,posY+19); //wing
arc(posX+25,posY-90,550,455,HALF_PI-PI/7,HALF_PI+PI/7); //wing
quad(posX-53,posY+15,posX+103,posY+15,posX+75,posY+125,posX-25,posY+125); //face
arc(posX+25,posY-10,160,160,PI-PI/8,TWO_PI+PI/8); //head
quad(posX+37,posY+21,posX+90,posY+21,posX+145,posY+115,posX+112,posY+15);
quad(posX+13,posY+21,posX-40,posY+21,posX-95,posY+115,posX-63,posY+15);
arc(posX+75,posY+20,75,60,PI,TWO_PI); //R-eyebrow
arc(posX-25,posY+20,75,60,PI,TWO_PI); //L-eyebrow
fill(255); //colorWhite
ellipse(posX+55,posY+45,70,35); //R-eye
ellipse(posX-5,posY+45,70,35); //L-eye
fill(0);
triangle(posX-25,posY+125,posX+75,posY+125,posX+25,posY+65); //mouth
stroke(255); //lnColorWhite
line(posX-9,posY+108,posX-9,posY+125);
line(posX+8,posY+88,posX+8,posY+125);
line(posX+25,posY+80,posX+25,posY+125);
line(posX+42,posY+88,posX+42,posY+125);
line(posX+59,posY+108,posX+59,posY+125);
stroke(100);
fill(255);
rect(posX+13,posY+65,25,15); //nose
fill(0);
rect(posX+15,posY-92,20,145);
quad(posX+15,posY+53,posX+35,posY+53,posX+38,posY+65,posX+13,posY+65);
arc(posX+25,posY+125,100,40,0,PI); //chin
fill(255);
ellipse(posX+70,posY+125,10,10);
ellipse(posX-20,posY+125,10,10);
posX+=speed;
posX %= 250;
}
void saber(){
strokeWeight(14);
stroke(#FF0000);
line(posX-95,225,posX-95,20);
strokeWeight(8);
stroke(255);
line(posX-95,220,posX-95,23);
strokeWeight(3);
stroke(100);
fill(200);
rect(posX-100,225,10,25);
}
void mouseClicked(){
if(mouseButton==RIGHT){
assist*=(-1);
speed+=assist;
}
if(mouseButton==LEFT){
if(hold==true) hold=false;
else hold=true;
}
}
Lab3_song
int limit=0;
int white=255;
int light_brown=#F7DEA7;
color screen;
color Line=255;
boolean dropNote=false;
int noteY=0;
void draw(){
size(350,185);
background(screen);
limit++;
limit %= 180;
draw_song();
if(dropNote){
note();
if(noteY>200){
dropNote=false;
noteY=0;
}
}
}
void draw_song(){
int posX=100;
posX+=limit;
noStroke();
//draw"THE"
fill(Line);
rect(posX-25,10,70,30); //blank"THE"
fill(screen);
rect(posX-25,15,7,25);
rect(posX-13,15,7,25); //T
rect(posX,10,15,12);
rect(posX,27,15,13); //H
rect(posX+20,10,3,30);
rect(posX+28,15,17,7);
rect(posX+28,27,17,8); //E
triangle(posX+33,10,posX+45,45,posX+45,10);
//draw"SCRIPT"
fill(Line);
arc(45,75,60,60,HALF_PI,TWO_PI);
arc(45,131,70,70,HALF_PI+PI,TWO_PI+HALF_PI); //S
arc(130,105,110,110,QUARTER_PI+PI/32,TWO_PI-QUARTER_PI-PI/32); //C
rect(165,50,20,10);
rect(165,105,20,10);
arc(185,82.5,60,65,3*PI/2,5*PI/2);
quad(170,115,185,115,215,147,215,163); //R
rect(220,50,10,120); //I
rect(235,50,10,120);
rect(245,50,20,10);
rect(245,105,20,10);
arc(265,82.5,60,65,3*PI/2,5*PI/2); //P
quad(265,50,330,50,335,60,265,60);
rect(300,50,10,120); //T
fill(screen);
arc(45,76,40,40,HALF_PI,TWO_PI);
arc(45,131,50,50,HALF_PI+PI,TWO_PI+HALF_PI); //S
arc(130,105,90,90,QUARTER_PI,TWO_PI-QUARTER_PI); //C
triangle(147,50,155,80,155,50);
arc(185,82.5,40,45,3*PI/2,5*PI/2); //R
quad(220,65,230,60,230,65,220,70); //I
arc(265,82.5,40,45,3*PI/2,5*PI/2); //P
triangle(220,170,310,130,310,170);
fill(Line);
rect(155,50,10,97); //R
}
void note(){
fill(Line);
ellipse(mouseX,noteY,15,15);
stroke(Line);
strokeWeight(3);
line(mouseX+6,noteY,mouseX+6,noteY-35);
line(mouseX+6,noteY-30,mouseX+13,noteY-10);
line(mouseX+13,noteY-10,mouseX+12,noteY-5);
noteY++;
}
void mouseClicked(){
if(mouseButton==RIGHT){
white*=-1;
Line += white;
screen += light_brown;
light_brown*=-1;
}
else if(mouseButton==LEFT){
dropNote=true;
}
}
int white=255;
int light_brown=#F7DEA7;
color screen;
color Line=255;
boolean dropNote=false;
int noteY=0;
void draw(){
size(350,185);
background(screen);
limit++;
limit %= 180;
draw_song();
if(dropNote){
note();
if(noteY>200){
dropNote=false;
noteY=0;
}
}
}
void draw_song(){
int posX=100;
posX+=limit;
noStroke();
//draw"THE"
fill(Line);
rect(posX-25,10,70,30); //blank"THE"
fill(screen);
rect(posX-25,15,7,25);
rect(posX-13,15,7,25); //T
rect(posX,10,15,12);
rect(posX,27,15,13); //H
rect(posX+20,10,3,30);
rect(posX+28,15,17,7);
rect(posX+28,27,17,8); //E
triangle(posX+33,10,posX+45,45,posX+45,10);
//draw"SCRIPT"
fill(Line);
arc(45,75,60,60,HALF_PI,TWO_PI);
arc(45,131,70,70,HALF_PI+PI,TWO_PI+HALF_PI); //S
arc(130,105,110,110,QUARTER_PI+PI/32,TWO_PI-QUARTER_PI-PI/32); //C
rect(165,50,20,10);
rect(165,105,20,10);
arc(185,82.5,60,65,3*PI/2,5*PI/2);
quad(170,115,185,115,215,147,215,163); //R
rect(220,50,10,120); //I
rect(235,50,10,120);
rect(245,50,20,10);
rect(245,105,20,10);
arc(265,82.5,60,65,3*PI/2,5*PI/2); //P
quad(265,50,330,50,335,60,265,60);
rect(300,50,10,120); //T
fill(screen);
arc(45,76,40,40,HALF_PI,TWO_PI);
arc(45,131,50,50,HALF_PI+PI,TWO_PI+HALF_PI); //S
arc(130,105,90,90,QUARTER_PI,TWO_PI-QUARTER_PI); //C
triangle(147,50,155,80,155,50);
arc(185,82.5,40,45,3*PI/2,5*PI/2); //R
quad(220,65,230,60,230,65,220,70); //I
arc(265,82.5,40,45,3*PI/2,5*PI/2); //P
triangle(220,170,310,130,310,170);
fill(Line);
rect(155,50,10,97); //R
}
void note(){
fill(Line);
ellipse(mouseX,noteY,15,15);
stroke(Line);
strokeWeight(3);
line(mouseX+6,noteY,mouseX+6,noteY-35);
line(mouseX+6,noteY-30,mouseX+13,noteY-10);
line(mouseX+13,noteY-10,mouseX+12,noteY-5);
noteY++;
}
void mouseClicked(){
if(mouseButton==RIGHT){
white*=-1;
Line += white;
screen += light_brown;
light_brown*=-1;
}
else if(mouseButton==LEFT){
dropNote=true;
}
}
Lab3_book
int wink;
float spin;
void draw(){
size(300,400);
background(0); //colorBlack
draw_book();
if(keyPressed){
if(key==CODED){
if(keyCode==LEFT) spin+=PI/32;
else if(keyCode==RIGHT) spin-=PI/32;
}
}
fill(255);
text("Pressed LEFT or RIGHT arrow.",75,350);
fill(0);
}
void draw_book(){
int posX=155, posY=150;
if(frameCount%50<=25) wink=1;
else wink=0;
//bones
translate(155,150);
rotate(spin);
fill(255); //colorWhite
noStroke();
beginShape();
vertex(-90,-110);
vertex(110,90);
vertex(110,110);
vertex(90,110);
vertex(-110,-90);
vertex(-110,-110);
endShape();
beginShape();
vertex(90,-110);
vertex(-110,90);
vertex(-110,110);
vertex(-90,110);
vertex(110,-90);
vertex(110,-110);
endShape();
ellipse(-100,-120,30,30);
ellipse(-120,-100,30,30);
ellipse(100,-120,30,30);
ellipse(120,-100,30,30);
ellipse(120,100,30,30);
ellipse(100,120,30,30);
ellipse(-100,120,30,30);
ellipse(-120,100,30,30);
rotate(-spin);
translate(-155,-150);
//skull & hat
stroke(0);
strokeWeight(4);
ellipse(posX,posY+90,80,90);
fill(145,55,25); //colorBrown
arc(posX,posY,170,170,PI+PI/16,TWO_PI-PI/16);
fill(255,210,50); //colorYellow
arc(posX,posY,170,170,PI+PI/7,TWO_PI-PI/7);
arc(posX,posY+30,320,115,PI+PI/5,TWO_PI-PI/5);
fill(255); //colorWhite
arc(posX,posY,170,170,0,PI);
arc(posX,posY,170,30,PI,TWO_PI);
//detail
fill(0);
ellipse(posX,posY+60,20,20); //nose
ellipse(posX+35,posY+25,50,50*wink); //R-eye
ellipse(posX-35,posY+25,50,50*wink); //L-eye
noFill();
arc(posX,posY,195,195,HALF_PI-PI/8,HALF_PI+PI/8);
arc(posX,posY,220,220,HALF_PI-PI/8+PI/48,HALF_PI+PI/8-PI/48);
line(posX-20,posY+85,posX-23,posY+105);
line(posX,posY+85,posX,posY+110);
line(posX+20,posY+85,posX+23,posY+105);
//book
strokeWeight(3);
stroke(100); //lncolorGray
arc(5,400,16,50,HALF_PI,3*PI/2);
line(8,0,8,375);
line(8,375,300,375);
line(7,380,300,380);
line(6,385,300,385);
line(5,390,300,390);
line(4,395,300,395);
wink++;
}
float spin;
void draw(){
size(300,400);
background(0); //colorBlack
draw_book();
if(keyPressed){
if(key==CODED){
if(keyCode==LEFT) spin+=PI/32;
else if(keyCode==RIGHT) spin-=PI/32;
}
}
fill(255);
text("Pressed LEFT or RIGHT arrow.",75,350);
fill(0);
}
void draw_book(){
int posX=155, posY=150;
if(frameCount%50<=25) wink=1;
else wink=0;
//bones
translate(155,150);
rotate(spin);
fill(255); //colorWhite
noStroke();
beginShape();
vertex(-90,-110);
vertex(110,90);
vertex(110,110);
vertex(90,110);
vertex(-110,-90);
vertex(-110,-110);
endShape();
beginShape();
vertex(90,-110);
vertex(-110,90);
vertex(-110,110);
vertex(-90,110);
vertex(110,-90);
vertex(110,-110);
endShape();
ellipse(-100,-120,30,30);
ellipse(-120,-100,30,30);
ellipse(100,-120,30,30);
ellipse(120,-100,30,30);
ellipse(120,100,30,30);
ellipse(100,120,30,30);
ellipse(-100,120,30,30);
ellipse(-120,100,30,30);
rotate(-spin);
translate(-155,-150);
//skull & hat
stroke(0);
strokeWeight(4);
ellipse(posX,posY+90,80,90);
fill(145,55,25); //colorBrown
arc(posX,posY,170,170,PI+PI/16,TWO_PI-PI/16);
fill(255,210,50); //colorYellow
arc(posX,posY,170,170,PI+PI/7,TWO_PI-PI/7);
arc(posX,posY+30,320,115,PI+PI/5,TWO_PI-PI/5);
fill(255); //colorWhite
arc(posX,posY,170,170,0,PI);
arc(posX,posY,170,30,PI,TWO_PI);
//detail
fill(0);
ellipse(posX,posY+60,20,20); //nose
ellipse(posX+35,posY+25,50,50*wink); //R-eye
ellipse(posX-35,posY+25,50,50*wink); //L-eye
noFill();
arc(posX,posY,195,195,HALF_PI-PI/8,HALF_PI+PI/8);
arc(posX,posY,220,220,HALF_PI-PI/8+PI/48,HALF_PI+PI/8-PI/48);
line(posX-20,posY+85,posX-23,posY+105);
line(posX,posY+85,posX,posY+110);
line(posX+20,posY+85,posX+23,posY+105);
//book
strokeWeight(3);
stroke(100); //lncolorGray
arc(5,400,16,50,HALF_PI,3*PI/2);
line(8,0,8,375);
line(8,375,300,375);
line(7,380,300,380);
line(6,385,300,385);
line(5,390,300,390);
line(4,395,300,395);
wink++;
}
Lab3_flying bird
float cloudX=0;
float plus=1;
void draw(){
size(500,500);
background(#00AAFF);
cloud();
translate(mouseX,mouseY);
strokeWeight(1.5);
bird();
}
void bird(){
rotate(PI/5);
fill(#FF0000);
ellipse(0,-25,10,20); //hair
ellipse(-10,-25,10,20);
rotate(-PI/5);
wing();
ellipse(0,0,50,50); //body
fill(#FFFF00);
arc(0,0,50,50,PI/4,3*PI/4);
fill(255);
ellipse(-10,-5,15,10); //left eye
fill(0);
ellipse(-10,-5,5,5);
fill(255);
ellipse(10,-5,15,10); //right eye
fill(0);
ellipse(10,-5,5,5);
triangle(0,0,-10,10,10,10); //beak
}
void wing(){
float roll;
if((frameCount%50)<=25) roll=PI/16;
else roll=-PI/16;
rotate(roll);
ellipse(-30,0,50,20); //left wing
rotate(-2*roll);
ellipse(30,0,50,20); //right wing
rotate(roll);
}
void cloud(){
noStroke();
fill(255);
ellipse(510-cloudX,100,100,30);
ellipse(30+cloudX,175,120,60);
ellipse(450-cloudX,300,75,50);
ellipse(100+cloudX,275,85,45);
ellipse(350-cloudX,405,215,140);
stroke(0);
cloudX+=plus;
if (cloudX>=450) plus*=-1;
else if (cloudX<=-50) plus*=-1;
}
float plus=1;
void draw(){
size(500,500);
background(#00AAFF);
cloud();
translate(mouseX,mouseY);
strokeWeight(1.5);
bird();
}
void bird(){
rotate(PI/5);
fill(#FF0000);
ellipse(0,-25,10,20); //hair
ellipse(-10,-25,10,20);
rotate(-PI/5);
wing();
ellipse(0,0,50,50); //body
fill(#FFFF00);
arc(0,0,50,50,PI/4,3*PI/4);
fill(255);
ellipse(-10,-5,15,10); //left eye
fill(0);
ellipse(-10,-5,5,5);
fill(255);
ellipse(10,-5,15,10); //right eye
fill(0);
ellipse(10,-5,5,5);
triangle(0,0,-10,10,10,10); //beak
}
void wing(){
float roll;
if((frameCount%50)<=25) roll=PI/16;
else roll=-PI/16;
rotate(roll);
ellipse(-30,0,50,20); //left wing
rotate(-2*roll);
ellipse(30,0,50,20); //right wing
rotate(roll);
}
void cloud(){
noStroke();
fill(255);
ellipse(510-cloudX,100,100,30);
ellipse(30+cloudX,175,120,60);
ellipse(450-cloudX,300,75,50);
ellipse(100+cloudX,275,85,45);
ellipse(350-cloudX,405,215,140);
stroke(0);
cloudX+=plus;
if (cloudX>=450) plus*=-1;
else if (cloudX<=-50) plus*=-1;
}
Lab3_battery
int posX=35, posY=30;
float resize=150; //changeable
float charge=100;
boolean charging=false;
void draw() {
size(350,250);
background(130,120,240); //light_blue
batteryTank();
positive();
negative();
if(charging){
charge++;
draw_lightning();
}
else if(charge<=20) draw_exclamation();
if(charge>=100){
charge=100;
charging=false;
}
}
void batteryTank(){
float chargeW;
fill(255);
textSize(resize/10);
text("Battery: "+charge+"%",posX+resize/100*25*2.25,posY+resize/100*125);
//tank
strokeWeight(3);
fill(130); //gray
rect(posX,posY,resize/100*80*2.25,resize/100*100,resize/100*5*2.25);
rect(posX+resize/100*80*2.25,posY+resize/100*30,resize/100*3*2.25,resize/100*40);
fill(150);
rect(posX+resize/100*2.5*2.25,posY,resize/100*75*2.25,resize,resize/100*2*2.25);
//power
chargeW=charge/100*resize/100*75*2.25;
fill(#38E82C); //green
rect(posX+resize/100*2.5*2.25,posY,chargeW,resize,resize/100*2*2.25);
}
void positive(){
noStroke();
fill(#DE1F1F); //red
rect(posX+1.75*resize,posY+resize,resize/10,resize*0.4);
rect(posX-75*resize/500+1.75*resize,posY+75*resize/500+resize,resize*0.4,resize/10);
stroke(0);
}
void negative(){
noStroke();
fill(#1752CE); //blue
rect(posX-75*resize/500+0.1*resize,posY+75*resize/500+resize,resize*0.4,resize/10);
stroke(0);
}
void draw_lightning(){
noStroke();
fill(#FFE000);
beginShape();
vertex(posX+resize*0.9,posY+resize/2-resize*0.35); //posX+resize*0.9 = 105 ,,, posY+resize/2
vertex(posX+resize*0.9,posY+resize/2-resize*0.07);
vertex(posX+resize*0.9+resize/10,posY+resize/2-resize*0.07);
vertex(posX+resize*0.9,posY+resize/2+resize*0.35);
vertex(posX+resize*0.9,posY+resize/2+resize*0.07);
vertex(posX+resize*0.9-resize/10,posY+resize/2+resize*0.07);
endShape();
stroke(0);
}
void draw_exclamation(){
noStroke();
fill(#FF0000);
if(frameCount%40>20){
quad(posX+resize-resize/6,posY+resize/2-resize/5,posX+resize-resize/30,posY+resize/2-resize/5,
posX+resize-resize/15,posY+resize/2+resize/15,posX+resize-resize/7.5,posY+resize/2+resize/15);
rect(posX+resize-resize/7.5,posY+resize/2+resize/7.5,resize/15,resize/15);
}
stroke(0);
}
void mouseMoved(){
if(!charging){
charge-=0.5;
if(charge<=0) charge=0;
}
}
void mouseClicked(){
charging=true;
}
float resize=150; //changeable
float charge=100;
boolean charging=false;
void draw() {
size(350,250);
background(130,120,240); //light_blue
batteryTank();
positive();
negative();
if(charging){
charge++;
draw_lightning();
}
else if(charge<=20) draw_exclamation();
if(charge>=100){
charge=100;
charging=false;
}
}
void batteryTank(){
float chargeW;
fill(255);
textSize(resize/10);
text("Battery: "+charge+"%",posX+resize/100*25*2.25,posY+resize/100*125);
//tank
strokeWeight(3);
fill(130); //gray
rect(posX,posY,resize/100*80*2.25,resize/100*100,resize/100*5*2.25);
rect(posX+resize/100*80*2.25,posY+resize/100*30,resize/100*3*2.25,resize/100*40);
fill(150);
rect(posX+resize/100*2.5*2.25,posY,resize/100*75*2.25,resize,resize/100*2*2.25);
//power
chargeW=charge/100*resize/100*75*2.25;
fill(#38E82C); //green
rect(posX+resize/100*2.5*2.25,posY,chargeW,resize,resize/100*2*2.25);
}
void positive(){
noStroke();
fill(#DE1F1F); //red
rect(posX+1.75*resize,posY+resize,resize/10,resize*0.4);
rect(posX-75*resize/500+1.75*resize,posY+75*resize/500+resize,resize*0.4,resize/10);
stroke(0);
}
void negative(){
noStroke();
fill(#1752CE); //blue
rect(posX-75*resize/500+0.1*resize,posY+75*resize/500+resize,resize*0.4,resize/10);
stroke(0);
}
void draw_lightning(){
noStroke();
fill(#FFE000);
beginShape();
vertex(posX+resize*0.9,posY+resize/2-resize*0.35); //posX+resize*0.9 = 105 ,,, posY+resize/2
vertex(posX+resize*0.9,posY+resize/2-resize*0.07);
vertex(posX+resize*0.9+resize/10,posY+resize/2-resize*0.07);
vertex(posX+resize*0.9,posY+resize/2+resize*0.35);
vertex(posX+resize*0.9,posY+resize/2+resize*0.07);
vertex(posX+resize*0.9-resize/10,posY+resize/2+resize*0.07);
endShape();
stroke(0);
}
void draw_exclamation(){
noStroke();
fill(#FF0000);
if(frameCount%40>20){
quad(posX+resize-resize/6,posY+resize/2-resize/5,posX+resize-resize/30,posY+resize/2-resize/5,
posX+resize-resize/15,posY+resize/2+resize/15,posX+resize-resize/7.5,posY+resize/2+resize/15);
rect(posX+resize-resize/7.5,posY+resize/2+resize/7.5,resize/15,resize/15);
}
stroke(0);
}
void mouseMoved(){
if(!charging){
charge-=0.5;
if(charge<=0) charge=0;
}
}
void mouseClicked(){
charging=true;
}
กันยายน 01, 2558
Lab3_balloon(lecture)
void draw(){
size(150,400);
background(255);
draw_balloon();
}
void draw_balloon(){
int posY=mouseY;
color ball;
if(mouseY<=50){
posY=50;
ball=#00FF00;
}
else if(mouseY>=300){
posY=300;
ball=#FF0000;
}
else ball=255;
strokeWeight(1.5);
fill(ball);
line(width/2,posY,width/2,posY+100);
ellipse(width/2,posY,50,50);
}
size(150,400);
background(255);
draw_balloon();
}
void draw_balloon(){
int posY=mouseY;
color ball;
if(mouseY<=50){
posY=50;
ball=#00FF00;
}
else if(mouseY>=300){
posY=300;
ball=#FF0000;
}
else ball=255;
strokeWeight(1.5);
fill(ball);
line(width/2,posY,width/2,posY+100);
ellipse(width/2,posY,50,50);
}
Lab2_book
int wink=1;
void setup(){
size(300,400);
frameRate(3);
}
void draw(){
background(0); //colorBlack
draw_book();
}
void draw_book(){
int posX=155, posY=150;
wink %= 2;
//bones
fill(255); //colorWhite
noStroke();
beginShape();
vertex(posX-90,posY-110);
vertex(posX+110,posY+90);
vertex(posX+110,posY+110);
vertex(posX+90,posY+110);
vertex(posX-110,posY-90);
vertex(posX-110,posY-110);
endShape();
beginShape();
vertex(posX+90,posY-110);
vertex(posX-110,posY+90);
vertex(posX-110,posY+110);
vertex(posX-90,posY+110);
vertex(posX+110,posY-90);
vertex(posX+110,posY-110);
endShape();
ellipse(posX-100,posY-120,30,30);
ellipse(posX-120,posY-100,30,30);
ellipse(posX+100,posY-120,30,30);
ellipse(posX+120,posY-100,30,30);
ellipse(posX+120,posY+100,30,30);
ellipse(posX+100,posY+120,30,30);
ellipse(posX-100,posY+120,30,30);
ellipse(posX-120,posY+100,30,30);
//skull & hat
stroke(0);
strokeWeight(4);
ellipse(posX,posY+90,80,90);
fill(145,55,25); //colorBrown
arc(posX,posY,170,170,PI+PI/16,TWO_PI-PI/16);
fill(255,210,50); //colorYellow
arc(posX,posY,170,170,PI+PI/7,TWO_PI-PI/7);
arc(posX,posY+30,320,115,PI+PI/5,TWO_PI-PI/5);
fill(255); //colorWhite
arc(posX,posY,170,170,0,PI);
arc(posX,posY,170,30,PI,TWO_PI);
//detail
fill(0);
ellipse(posX,posY+60,20,20); //nose
ellipse(posX+35,posY+25,50,50*wink); //R-eye
ellipse(posX-35,posY+25,50,50*wink); //L-eye
noFill();
arc(posX,posY,195,195,HALF_PI-PI/8,HALF_PI+PI/8);
arc(posX,posY,220,220,HALF_PI-PI/8+PI/48,HALF_PI+PI/8-PI/48);
line(posX-20,posY+85,posX-23,posY+105);
line(posX,posY+85,posX,posY+110);
line(posX+20,posY+85,posX+23,posY+105);
//book
strokeWeight(3);
stroke(100); //lncolorGray
arc(5,400,16,50,HALF_PI,3*PI/2);
line(8,0,8,375);
line(8,375,300,375);
line(7,380,300,380);
line(6,385,300,385);
line(5,390,300,390);
line(4,395,300,395);
wink++;
}
void setup(){
size(300,400);
frameRate(3);
}
void draw(){
background(0); //colorBlack
draw_book();
}
void draw_book(){
int posX=155, posY=150;
wink %= 2;
//bones
fill(255); //colorWhite
noStroke();
beginShape();
vertex(posX-90,posY-110);
vertex(posX+110,posY+90);
vertex(posX+110,posY+110);
vertex(posX+90,posY+110);
vertex(posX-110,posY-90);
vertex(posX-110,posY-110);
endShape();
beginShape();
vertex(posX+90,posY-110);
vertex(posX-110,posY+90);
vertex(posX-110,posY+110);
vertex(posX-90,posY+110);
vertex(posX+110,posY-90);
vertex(posX+110,posY-110);
endShape();
ellipse(posX-100,posY-120,30,30);
ellipse(posX-120,posY-100,30,30);
ellipse(posX+100,posY-120,30,30);
ellipse(posX+120,posY-100,30,30);
ellipse(posX+120,posY+100,30,30);
ellipse(posX+100,posY+120,30,30);
ellipse(posX-100,posY+120,30,30);
ellipse(posX-120,posY+100,30,30);
//skull & hat
stroke(0);
strokeWeight(4);
ellipse(posX,posY+90,80,90);
fill(145,55,25); //colorBrown
arc(posX,posY,170,170,PI+PI/16,TWO_PI-PI/16);
fill(255,210,50); //colorYellow
arc(posX,posY,170,170,PI+PI/7,TWO_PI-PI/7);
arc(posX,posY+30,320,115,PI+PI/5,TWO_PI-PI/5);
fill(255); //colorWhite
arc(posX,posY,170,170,0,PI);
arc(posX,posY,170,30,PI,TWO_PI);
//detail
fill(0);
ellipse(posX,posY+60,20,20); //nose
ellipse(posX+35,posY+25,50,50*wink); //R-eye
ellipse(posX-35,posY+25,50,50*wink); //L-eye
noFill();
arc(posX,posY,195,195,HALF_PI-PI/8,HALF_PI+PI/8);
arc(posX,posY,220,220,HALF_PI-PI/8+PI/48,HALF_PI+PI/8-PI/48);
line(posX-20,posY+85,posX-23,posY+105);
line(posX,posY+85,posX,posY+110);
line(posX+20,posY+85,posX+23,posY+105);
//book
strokeWeight(3);
stroke(100); //lncolorGray
arc(5,400,16,50,HALF_PI,3*PI/2);
line(8,0,8,375);
line(8,375,300,375);
line(7,380,300,380);
line(6,385,300,385);
line(5,390,300,390);
line(4,395,300,395);
wink++;
}
Lab2_movie
int posX=100,posY=100;
int speed=1,assist=1;
void draw(){
size(250,250);
background(#FA2B2B); //red
draw_movie();
}
void draw_movie(){
strokeWeight(3);
stroke(100); //lnColorGray
fill(0); //colorBlack
quad(posX-95,posY+115,posX+145,posY+115,posX+109,posY+19,posX-59,posY+19); //wing
arc(posX+25,posY-90,550,455,HALF_PI-PI/7,HALF_PI+PI/7); //wing
quad(posX-53,posY+15,posX+103,posY+15,posX+75,posY+125,posX-25,posY+125); //face
arc(posX+25,posY-10,160,160,PI-PI/8,TWO_PI+PI/8); //head
quad(posX+37,posY+21,posX+90,posY+21,posX+145,posY+115,posX+112,posY+15);
quad(posX+13,posY+21,posX-40,posY+21,posX-95,posY+115,posX-63,posY+15);
arc(posX+75,posY+20,75,60,PI,TWO_PI); //R-eyebrow
arc(posX-25,posY+20,75,60,PI,TWO_PI); //L-eyebrow
fill(255); //colorWhite
ellipse(posX+55,posY+45,70,35); //R-eye
ellipse(posX-5,posY+45,70,35); //L-eye
fill(0);
triangle(posX-25,posY+125,posX+75,posY+125,posX+25,posY+65); //mouth
stroke(255); //lnColorWhite
line(posX-9,posY+108,posX-9,posY+125);
line(posX+8,posY+88,posX+8,posY+125);
line(posX+25,posY+80,posX+25,posY+125);
line(posX+42,posY+88,posX+42,posY+125);
line(posX+59,posY+108,posX+59,posY+125);
stroke(100);
fill(255);
rect(posX+13,posY+65,25,15); //nose
fill(0);
rect(posX+15,posY-92,20,145);
quad(posX+15,posY+53,posX+35,posY+53,posX+38,posY+65,posX+13,posY+65);
arc(posX+25,posY+125,100,40,0,PI); //chin
fill(255);
ellipse(posX+70,posY+125,10,10);
ellipse(posX-20,posY+125,10,10);
posX+=speed;
posX %= 250;
}
void mouseClicked(){
assist*=(-1);
speed+=assist;
}
int speed=1,assist=1;
void draw(){
size(250,250);
background(#FA2B2B); //red
draw_movie();
}
void draw_movie(){
strokeWeight(3);
stroke(100); //lnColorGray
fill(0); //colorBlack
quad(posX-95,posY+115,posX+145,posY+115,posX+109,posY+19,posX-59,posY+19); //wing
arc(posX+25,posY-90,550,455,HALF_PI-PI/7,HALF_PI+PI/7); //wing
quad(posX-53,posY+15,posX+103,posY+15,posX+75,posY+125,posX-25,posY+125); //face
arc(posX+25,posY-10,160,160,PI-PI/8,TWO_PI+PI/8); //head
quad(posX+37,posY+21,posX+90,posY+21,posX+145,posY+115,posX+112,posY+15);
quad(posX+13,posY+21,posX-40,posY+21,posX-95,posY+115,posX-63,posY+15);
arc(posX+75,posY+20,75,60,PI,TWO_PI); //R-eyebrow
arc(posX-25,posY+20,75,60,PI,TWO_PI); //L-eyebrow
fill(255); //colorWhite
ellipse(posX+55,posY+45,70,35); //R-eye
ellipse(posX-5,posY+45,70,35); //L-eye
fill(0);
triangle(posX-25,posY+125,posX+75,posY+125,posX+25,posY+65); //mouth
stroke(255); //lnColorWhite
line(posX-9,posY+108,posX-9,posY+125);
line(posX+8,posY+88,posX+8,posY+125);
line(posX+25,posY+80,posX+25,posY+125);
line(posX+42,posY+88,posX+42,posY+125);
line(posX+59,posY+108,posX+59,posY+125);
stroke(100);
fill(255);
rect(posX+13,posY+65,25,15); //nose
fill(0);
rect(posX+15,posY-92,20,145);
quad(posX+15,posY+53,posX+35,posY+53,posX+38,posY+65,posX+13,posY+65);
arc(posX+25,posY+125,100,40,0,PI); //chin
fill(255);
ellipse(posX+70,posY+125,10,10);
ellipse(posX-20,posY+125,10,10);
posX+=speed;
posX %= 250;
}
void mouseClicked(){
assist*=(-1);
speed+=assist;
}
Lab2_song
int limit=0;
int white=255;
int light_brown=#F7DEA7;
color screen;
color line=255;
void draw(){
size(350,185);
background(screen);
limit++;
limit %= 180;
draw_song();
}
void draw_song(){
int posX=100;
posX+=limit;
noStroke();
//draw"THE"
fill(line);
rect(posX-25,10,70,30); //blank"THE"
fill(screen);
rect(posX-25,15,7,25);
rect(posX-13,15,7,25); //T
rect(posX,10,15,12);
rect(posX,27,15,13); //H
rect(posX+20,10,3,30);
rect(posX+28,15,17,7);
rect(posX+28,27,17,8); //E
triangle(posX+33,10,posX+45,45,posX+45,10);
//draw"SCRIPT"
fill(line);
arc(45,75,60,60,HALF_PI,TWO_PI);
arc(45,131,70,70,HALF_PI+PI,TWO_PI+HALF_PI); //S
arc(130,105,110,110,QUARTER_PI+PI/32,TWO_PI-QUARTER_PI-PI/32); //C
rect(165,50,20,10);
rect(165,105,20,10);
arc(185,82.5,60,65,3*PI/2,5*PI/2);
quad(170,115,185,115,215,147,215,163); //R
rect(220,50,10,120); //I
rect(235,50,10,120);
rect(245,50,20,10);
rect(245,105,20,10);
arc(265,82.5,60,65,3*PI/2,5*PI/2); //P
quad(265,50,330,50,335,60,265,60);
rect(300,50,10,120); //T
fill(screen);
arc(45,76,40,40,HALF_PI,TWO_PI);
arc(45,131,50,50,HALF_PI+PI,TWO_PI+HALF_PI); //S
arc(130,105,90,90,QUARTER_PI,TWO_PI-QUARTER_PI); //C
triangle(147,50,155,80,155,50);
arc(185,82.5,40,45,3*PI/2,5*PI/2); //R
quad(220,65,230,60,230,65,220,70); //I
arc(265,82.5,40,45,3*PI/2,5*PI/2); //P
triangle(220,170,310,130,310,170);
fill(line);
rect(155,50,10,97); //R
}
void mouseClicked(){
//line
white*=-1;
line += white;
//screen
screen += light_brown;
light_brown*=-1;
}
int white=255;
int light_brown=#F7DEA7;
color screen;
color line=255;
void draw(){
size(350,185);
background(screen);
limit++;
limit %= 180;
draw_song();
}
void draw_song(){
int posX=100;
posX+=limit;
noStroke();
//draw"THE"
fill(line);
rect(posX-25,10,70,30); //blank"THE"
fill(screen);
rect(posX-25,15,7,25);
rect(posX-13,15,7,25); //T
rect(posX,10,15,12);
rect(posX,27,15,13); //H
rect(posX+20,10,3,30);
rect(posX+28,15,17,7);
rect(posX+28,27,17,8); //E
triangle(posX+33,10,posX+45,45,posX+45,10);
//draw"SCRIPT"
fill(line);
arc(45,75,60,60,HALF_PI,TWO_PI);
arc(45,131,70,70,HALF_PI+PI,TWO_PI+HALF_PI); //S
arc(130,105,110,110,QUARTER_PI+PI/32,TWO_PI-QUARTER_PI-PI/32); //C
rect(165,50,20,10);
rect(165,105,20,10);
arc(185,82.5,60,65,3*PI/2,5*PI/2);
quad(170,115,185,115,215,147,215,163); //R
rect(220,50,10,120); //I
rect(235,50,10,120);
rect(245,50,20,10);
rect(245,105,20,10);
arc(265,82.5,60,65,3*PI/2,5*PI/2); //P
quad(265,50,330,50,335,60,265,60);
rect(300,50,10,120); //T
fill(screen);
arc(45,76,40,40,HALF_PI,TWO_PI);
arc(45,131,50,50,HALF_PI+PI,TWO_PI+HALF_PI); //S
arc(130,105,90,90,QUARTER_PI,TWO_PI-QUARTER_PI); //C
triangle(147,50,155,80,155,50);
arc(185,82.5,40,45,3*PI/2,5*PI/2); //R
quad(220,65,230,60,230,65,220,70); //I
arc(265,82.5,40,45,3*PI/2,5*PI/2); //P
triangle(220,170,310,130,310,170);
fill(line);
rect(155,50,10,97); //R
}
void mouseClicked(){
//line
white*=-1;
line += white;
//screen
screen += light_brown;
light_brown*=-1;
}
สมัครสมาชิก:
ความคิดเห็น (Atom)







