手绘vs码绘 动态对比
生活随笔
收集整理的這篇文章主要介紹了
手绘vs码绘 动态对比
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
用手繪和碼繪兩種方式創作“運動”主題的作品,并作出對比
手繪圖:
碼繪圖:
比較
技法:不考慮美觀的話手繪比較方便,可以怎么想怎么做,而碼繪卻比較復雜,需要轉換為代碼。
工具:手繪可以用筆,數位板等等,碼繪是代碼和編程工具
理念:手繪怎么想怎么畫,碼繪需要轉換思維,用數學的思想考慮
創作體驗:手繪更加友好輕松,畫了會馬上呈現效果,而碼繪卻只能面對代碼,需要運行才知道效果
呈現效果:對沒有手繪功底的人來說,碼繪呈現效果會更好,在動態圖形中,手繪很難表現,而碼繪卻可以表現出各種各樣的動態效果,碼繪的創作能力更高。
載體:手繪為紙,電腦屏幕;碼繪載體是電腦屏幕
應用:手繪可用于靜態繪畫,更容易表現精細細節,而碼繪更擅長動態幾何圖形的表現,可用于動畫,游戲,動圖,動圖界面展示等等方面,適用范圍很廣。
碼繪實現
var l=500; var w=500; var d=100; var px=l/2; var py=w/2; var px1=l/3; var py1=w/3; var Vx=-3; var Vy=-10; var Vx1=-16; var Vy1=13;// 函數setup() : 準備階段 function setup() {createCanvas(l,w); }// 函數draw():作畫階段 function draw() { background(200);//用for循環畫多個背景太極圖案for(var col=0;col<5;col++) // 畫8列{for(var row =0;row<5;row++) // 畫6行{var x = col*100; // x坐標為i的70倍,即X方向間隔為70像素var y = row*100; // y坐標為i的60倍,即Y方向間隔為60像素taiji(x,y,50);} } //兩個大太極圖案的碰撞taiji(px,py,d);taiji(px1,py1,d);//pxy碰撞檢測px+=Vx;py+=Vy;if(px>width-d/2||px<0+d/2){Vx*=-1;}if(py>height-d/2||py<0+d/2){Vy*=-1;}taiji(px1,py1,d);//pxy1碰撞檢測px1+=Vx1;py1+=Vy1;if(px1>width-d/2||px1<0+d/2){Vx1*=-1;}if(py1>height-d/2||py1<0+d/2){Vy1*=-1;}s=sqrt((px-px1)*(px-px1)+(py-py1)*(py-py1));//pxy和pxy1碰撞檢測if(s<d){Vx1*=-1;Vy1*=-1;Vx*=-1;Vy*=-1;}}//畫太極的函數 function taiji(px,py,d) {fill(255); arc(px, py, d, d, 0, PI, OPEN);fill(0); arc(px, py, d, d, PI, 2*PI, OPEN); fill(0); arc(px-d/4, py, d/2, d/2, 0, PI, OPEN); fill(255); arc(px+d/4, py, d/2, d/2, PI, 2*PI, OPEN); fill(255);// 填充白色 ellipse(px-d/4,py,d/7,d/7); // 畫圓形 fill(0);// 填充白色 ellipse(px+d/4,py,d/7,d/7); // 畫圓形}總結
以上是生活随笔為你收集整理的手绘vs码绘 动态对比的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 东大18秋计算机基础在线作业3,东大18
- 下一篇: 基于SpringBoot+VUE(PC端