題外話,本來對grasshopper有看沒有懂,在這次工作營應該是有稍許進步了,
不過完全不知道要拿來幹麻,感覺一坨拉股的東西都同時在學,
但在事務所我還是在用skp畫爽爽................
CCC說在接下來這一年要確立自己出去定位要在哪裡,
我到現在還是很茫然,所以才會什麼都想學,不求精但至少要會基本,
出去至少不會丟淡江臉,但學那麼多到底要幹麻啊!!!
我覺得林昭翰才是真的大智大慧. :-x
anyway,讓我們再開始一起學processing吧!
今天要說的是課本p69-78的Vertices(vertex的複數)
基本上它的觀念跟coreldraw的多線工具一樣
就是以一堆點 的先後順序接起來 你可以選擇要不要把線聚合成色塊
或是單純就讓它是一條很多節點的線
它基本的架構如下
beginShape() 開始連線
vertex(x,y) 諸多的節點(vertax 1, vertax 2, vertax 3, vertax 4 ........)
endShape() 結束連線
size(200,200);
background(255);
strokeWeight(2);
smooth();
beginShape();
vertex(20,20); //點01
vertex(100,20); //點02
vertex(100,100); //點03
vertex(20,100); //點04
endShape();
//saveFrame("p072-1-##.jpg");
//可以看到當我給四個點的時候,它會依先後順序把它接成一條線
background(255);
strokeWeight(2);
fill(255,0,0);
smooth();
beginShape();
vertex(20,20); //點01
vertex(100,20); //點02
vertex(100,100); //點03
vertex(20,100); //點04
endShape(CLOSE);
//saveFrame("p072-1-##.jpg");
//而如果我在endShape內填入CLOSE,則它會自動把起點跟終點連起來變成一色塊
而endShape內可以填東西的話,beginShape內一定也可以
而beginShape內可以填的東西有POINTS,LINES,TRIANGLES,QUADS等等
詳情請參照課本p73 簡單範例如下,只要更換上面程式裡beginShape內的指令即可
beginShape(POINTS);
至於p75-78則是在講曲線跟貝茲曲線,
我個人覺得現階段是用不太到,所以請自己看囉,
也不難,只是設定控制點有些麻煩,可參照p76
透過之前學過的無ㄟ伯ㄟ,我們可以畫出以下的圖,
自己試完之後反白即有解答.
size(200,200);
background(255);
stroke(255);
strokeWeight(0.1);
smooth();
background(255);
stroke(255);
strokeWeight(0.1);
smooth();
for(int i = 1; i <= 100; i += 1){
beginShape(QUAD_STRIP);
fill(random(255),random(255),random(255),20);
vertex(i/2000 + random(200),i/2000 + random(200));
vertex(i/2000 + random(200),i/2000 + random(200));
vertex(i/2000 + random(200),i/2000 + random(200));
vertex(i/2000 + random(200),i/2000 + random(200));
endShape();
}
beginShape(QUAD_STRIP);
fill(random(255),random(255),random(255),20);
vertex(i/2000 + random(200),i/2000 + random(200));
vertex(i/2000 + random(200),i/2000 + random(200));
vertex(i/2000 + random(200),i/2000 + random(200));
vertex(i/2000 + random(200),i/2000 + random(200));
endShape();
}
//saveFrame("p072-2-##.jpg");
Try it. :)