第一步新建HTML文檔:
<html> <head> <style type="text/css"> /*設(shè)置body樣式*/ body{ overflow:hidden; background: black; } </style> </head> <!--設(shè)置屏幕背景黑色--> <body> <script src="js.js"></script> </body> </html>
第二步建一個(gè)js文檔:
//創(chuàng)建畫布 var mycanvas=document.createElement("canvas"); //設(shè)置樹的寬度和高度 mycanvas.width=1500; mycanvas.height=900; //繪制畫布的對象并設(shè)置為2D var context=mycanvas.getContext("2d"); //設(shè)置劃線的類型顏色 context.strokeStyle="#ff00ff"; //設(shè)置線的寬度 context.lineWidth=2; //將畫布添加到窗體上 document.body.appendChild(mycanvas); /////////////////////////////////////////// /*---------------畫圖部分----------------*/ /////////////////////////////////////////// //畫樹深度 var n=10; //設(shè)置初始角度 var th=-Math.PI/2; //設(shè)置初始位置 var x0=700; var y0=700; //調(diào)用繪圖函數(shù) draw(n-1,700,700,100,th); /*------------繪制樹的函數(shù)-------------------*/ function draw(n,x0,y0,length,th){//(畫樹深度,起始位置x0,y0,長度,度數(shù)) if(n==0) return; //計(jì)算線條末端坐標(biāo) var x1=x0+length*Math.cos(th); var y1=y0+length*Math.sin(th); //畫線 drawline(x0,y0,x1,y1); //畫子樹遞歸 draw(n-1,x1,y1,0.8*length*(Math.random()+0.4),th+(20+Math.random()*5)*Math.PI/180); draw(n-1,x1,y1,0.6*length*(Math.random()+0.5),th-(30+Math.random()*5)*Math.PI/180); } /*--------------繪制線段-----------------------*/ function drawline(x0,y0,x1,y1){ context.moveTo(x0,y0);//設(shè)置繪制的起點(diǎn) context.lineTo(x1,y1);//設(shè)置線段的末尾 context.stroke(); //繪制 }
最后的成果圖如下所示:
相關(guān)推薦:
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com