
Assignment 3 involves implementing a parametric line function, a quadratic Bezier curve implementation, and a cubic Bezier curve implementation.
void setup(){
size(200,200);
background(0);
stroke(255);
}
void draw(){
parLine(10,10,190,50);
quadBesCurve(10,60,150,60,100,100);
cubBesCurve(10,90, 40, 120, 130, 90, 140, 140);
}
//Draws a line parametrically
void parLine(int x1, int y1, int x2, int y2){
for (float t=0;t<1;t=t+.001){
point(x1+t*(x2-x1),y1+t*(y2-21));
}
}
//Draws a quadratic Bezier curve
void quadBesCurve(int x1, int y1, int x2, int y2, int x3, int y3){
for (float t=0;t<1;t=t+.001){
point((sq(1-t)*x1+2*(1-t)*t*x2+sq(t)*x3),(sq(1-t)*y1+2*(1-t)*t*y2+sq(t)*y3));
}
}
//Draws a cubic Bezier curve
void cubBesCurve(int x1, int y1, int x2, int y2, int x3, int y3, int x4, int y4){
for (float t=0;t<1;t=t+.001){
point ((pow((1-t),3)*x1+3*sq(1-t)*t*x2+3*(1-t)*sq(t)*x3+pow(t,3)*x4),
(pow((1-t),3)*y1+3*sq(1-t)*t*y2+3*(1-t)*sq(t)*y3+pow(t,3)*y4));
}
}
<


