06.01.2013 Views

Learning Processing: A Beginner's Guide to Programming Images ...

Learning Processing: A Beginner's Guide to Programming Images ...

Learning Processing: A Beginner's Guide to Programming Images ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

236 <strong>Learning</strong> <strong>Processing</strong><br />

(�10,�10,�10)<br />

(�10,10,�10)<br />

vertex(–10,–10,–10); vertex(10,–10,–10); vertex( 10,10,–10); vertex( –10, 10,–10);<br />

vertex( 10,–10,–10); vertex(10, 10,–10); vertex(–10,10,–10); vertex(–10,–10,–10);<br />

vertex( 0, 0, 10); vertex( 0, 0, 10); vertex( 0, 0, 10); vertex( 0, 0, 10);<br />

fi g. 14.11<br />

Example 14-4: Pyramid using beginShape(TRIANGLES)<br />

void setup() {<br />

size(200,200,P3D);<br />

}<br />

void draw() {<br />

background(255);<br />

translate(100,100,0);<br />

drawPyramid(150);<br />

}<br />

void drawPyramid(int t) {<br />

stroke(0);<br />

// this pyramid has 4 sides, each drawn as a separate triangle<br />

// each side has 3 vertices, making up a triangle shape<br />

// the parameter " t " determines the size of the pyramid<br />

beginShape(TRIANGLES);<br />

fill(255,150);<br />

vertex(–t,–t,–t);<br />

vertex( t,-t,–t);<br />

vertex( 0, 0, t);<br />

fill(150,150);<br />

vertex( t,–t,–t);<br />

vertex( t, t,–t);<br />

vertex( 0, 0, t);<br />

fill(255,150);<br />

vertex( t, t,–t);<br />

vertex(–t, t,–t);<br />

vertex( 0, 0, t);<br />

y<br />

x<br />

BASE<br />

at<br />

z = �10<br />

(10,�10,�10)<br />

(10,10,�10)<br />

Connected <strong>to</strong><br />

APEX<br />

at<br />

z = 10<br />

(0,0,10)<br />

Since the pyramid’s vertices are drawn relative <strong>to</strong><br />

a centerpoint, we must call translate() <strong>to</strong> place the<br />

pyramid properly in the window.<br />

The function sets the vertices for the pyramid around<br />

the centerpoint at a fl exible distance, depending on the<br />

number passed in as an argument.<br />

Note that each polygon<br />

can have its own color.<br />

fi g. 14.12

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!