HTML5畫布canvas隨機生成圓形和正方形
<!DOCTYPE html>
<html lang="en">
<head>
<title>TweetShirt</title>
<meta charset="utf-8">
<style type="text/css">
canvas {
border: 1px solid black;
}
</style>
<script>
window.onload = function() {
var button = document.getElementById("previewButton");
button.onclick = previewHandler;
function previewHandler() {
var canvas = document.getElementById("tshirtCanvas");
var context = canvas.getContext("2d");
fillBackgroundColor(canvas,context);
var selectObj = document.getElementById("shape");
var index = selectObj.selectedIndex;
var shape = selectObj[index].value;
//判斷是方形還是圓形
if (shape == "squares") {
for (var squares = 0; squares < 20; squares++){
drawSquare(canvas,context);
}
}else if(shape == "circles"){
for (var circles = 0; circles < 20; circles++){
drawCircle(canvas,context);
}
}
}
function fillBackgroundColor(canvas,context){
var selectObj = document.getElementById("backgroundColor");
var index = selectObj.selectedIndex;
var bgColor = selectObj.options[index].value;
context.fillStyle = bgColor;
context.fillRect(0,0,canvas.width,canvas.height);
}
//封裝方形
function drawSquare(canvas,context){
var w = Math.floor(Math.random() * 40);
var x = Math.floor(Math.random() * canvas.width);
var y = Math.floor(Math.random() * canvas.height);
context.fillStyle = "lightblue";
context.fillRect(x,y,w,w);
}
//封裝圓形
function drawCircle(canvas,context){
var radius = Math.floor(Math.random() * 40);
var x = Math.floor(Math.random() * canvas.width);
var y = Math.floor(Math.random() * canvas.height);
context.beginPath();
context.arc(x,y,radius,0,degreesToRadians(360),true);
context.fillStyle = "lightblue";
context.fill();
}
function degreesToRadians(degrees){
return (degrees * Math.PI)/180;
}
}
</script>
</head>
<body>
<canvas id="tshirtCanvas" width="600" height="200">
<p>Please update your brower to use TweetShirt</p>
</canvas>
<form>
<p>
<label for="backgroundColor">Select background color:</label>
<select id="backgroundColor">
<option value="white" selected="selected">White</option>
<option value="black">Black</option>
</select>
</p>
<p>
<label for="shape">Circles or squares?</label>
<select id="shape">
<option value="none" selected="selected">Neither</option>
<option value="circles">Circles</option>
<option value="squares">squares</option>
</select>
</p>
<p>
<input type="button" name="previewButton" id="previewButton" value="Preview">
</p>
</form>
</body>
</html>
相關文章
- canvas圓形隨機漂浮效果Canvas隨機
- html5畫布canvasHTMLCanvas
- html5中canvas繪製圓形HTMLCanvas
- html5利用canvas圓形和多邊形程式碼例項HTMLCanvas
- html5中canvas元素建立畫布介紹HTMLCanvas
- HTML5 Canvas使用路徑——繪製圓形HTMLCanvas
- canvas隨機生成星星(轉)Canvas隨機
- HTML5 Canvas(畫布)實戰程式設計初級篇:基本介紹和基礎畫布元素HTMLCanvas程式設計
- 瞭解canvas畫布Canvas
- canvas 繪製圓形Canvas
- 2D圓形隨機分佈隨機
- Tkinter (03) 畫布部件 CanvasCanvas
- canvas畫布效果程式碼Canvas
- canvas圓形時鐘效果Canvas
- HTML5畫布概述HTML
- HTML5畫布: clearRect()HTML
- WebAssembly Demo之Canvas中隨機運動圓球WebCanvas隨機
- HTML5的畫布:PathsHTML
- canvas簡單的畫布動畫 - KaiqisanCanvas動畫AI
- CSS和canvas標籤設定畫布尺寸區別CSSCanvas
- 自定義隨機顏色的圓形小球view隨手指移動隨機View
- SVG畫圓形進度條SVG
- Bitmap擷取中間正方形並取出圓形圖片
- HTML5的畫布:Stroke(筆觸)和Fill(填充)HTML
- HTML5怎樣建立畫布?HTML
- python生成隨機圖形驗證碼Python隨機
- 畫影圖形: SVG & Canvas 圖形對比SVGCanvas
- canvas畫布基本知識點總結Canvas
- 如何抓取canvas畫布中的圖片Canvas
- 使用canvas繪製圓形進度條Canvas
- canvas的簡單圓形進度條Canvas
- canvas實現的圓形時鐘效果Canvas
- Linux Shell 生成隨機數和隨機字串Linux隨機字串
- Canvas 畫圖 - 滑鼠移動圖形Canvas
- CSS與canvas屬性設定畫布尺寸CSSCanvas
- CSS 與 canvas 屬性設定畫布尺寸CSSCanvas
- HTML5使用canvas繪製圖形HTMLCanvas
- canvas圓形進度條註釋超全Canvas