Bruce Chang
- Problem Set #1
|
Part 1
|
p1.dbn |
paper 0
pen 100
line 20 10 80 90
|
|
Create a program to draw a carefully chosen one line on a paper of your choice.
|
Part 2
|
![](p2a.gif) ![](p2b.gif) p2.dbn |
paper 0
pen 100
//3 images generated by setting x=0,-3,7
set x 7
//mouth
line (30+x) 30 (70-x) 30
//right eye
line (40-x/2) (70-x/2) (40+x/2) (60+x/2)
//left eye
line (60+x/2) (70-x/2) (60-x/2) (60+x/2)
//Many facial expressions are generated
//by controlling one variable. Give me
//more lines and more variables :)
|
|
Create a program that uses one variable as a means to control a set of 3 lines. Capture 3 instances of the graphic (A,B,C).
|
Part 3
|
p3.dbn |
paper 0
repeat y 30 80
{
pen (y*2-50)
line (y-10) y y (y-10)
}
//assumed "single filled triangle" to be
//"1 filled triangle" and not
//"solid-color triangle"
|
|
Create a program to draw a single filled rectangle. Again, choose carefully.
|
Part 4
|
p4.dbn |
paper 0
set x 10
set z 90
repeat y 30 70
{
pen z
line x y z y
set x (x+1)
set z (z-1)
}
//assumed "single filled triangle" to be
//"1 filled triangle" and not
//"solid-color triangle"
//shaded isosceles
|
|
Create a program to draw a single filled triangle. Use your good judgement.
|
Part 5
|
p5.dbn |
paper 0
repeat y 40 (-6)
{
pen (y+30)
line 5 40 (55+y) (y+40)
}
//assumed "single filled triangle" to be
//"1 filled triangle" and not
//"solid-color triangle"
//shaded scalene with no edge parallel to
//image boundary
|
|
Think of all the ways you can draw a filled triangle, and choose one. Utilize the properties of the drawing method you choose, to create a single filled triangle.
|
Part 6
|
p6.dbn |
Paper 100
set [50 53] 0
set [47 51] 0
set [53 51] 0
set [48 48] 0
set [52 48] 0
//possible emotions:
//focused
//reserved/shy
//"pent"-up anger
|
|
Set 5 dots on a paper of your choice. Evoke an emotion with your choice in placement of dots.
|
Part 7
|
p7.dbn |
Paper 100
repeat v 1 10
{
set [(v*3+20) (v*10)] 20
}
repeat w 1 10
{
set [(w*(-3)+80) (w*10)] 20
}
repeat x 1 10
{
set [(x*(-13)+80) (x*11)] 20
}
repeat y 1 10
{
set [(y*11-9) 66] 20
}
repeat z 1 10
{
set [(z*13+20) (z*11)] 20
}
//Frustrated because I can't use floats.
//otherwise, I could get more dots per
//line segment.
|
|
Create a representational picture (i.e. something that looks like something) using just 8 (at maximum) dotted lines.
|
Part 8
|
p8.dbn |
repeat x 0 100
{
repeat y 0 100
{
set [x y] ((x-50)*(x-50)/8+(y-50)*(y-50)/16)
}
}
//nested loop that covers all 100^2 pixels
//and generates a shaded ellipse
|
|
Using a nested loop, fill the entire field with the value of some calculation that can be appreciated. Do not use the Line command.
|
Part 9
|
p9.dbn |
Paper 75
repeat x 0 50
{
repeat y 0 50
{
set [(x*x/16) (y*y/8-x)] ((x*x/32)+(y*y/12))
}
}
//bi-directional exponential growth and
//bi-directional gradient
|
|
Using a nested loop, create a stippled pattern of dots that can be enjoyed for its complexity. Do not use the Line command.
|
Part 10
|
p10.dbn |
paper 100
repeat x 0 10
{
repeat y 0 50
{
pen (x+4*y/3)
line (x*30) 0 (y+2*x) 100
}
}
//pages of a book (w/o text) :)
|
|
Using the Line command, and a (few) nested loop, create an image that evokes a three-dimensional feeling through shading.
|