การสร้างรูปทรงแบบ custom ด้วย HTML5 Canvas เราใช้การสร้างเส้นแบบ path จากนั้นปิดเส้นด้วยเมธอด closePath(). เราสามารถใช้เมธอด lineTo(), arcTo(), quadraticCurveTo() หรือ bezierCurveTo() ร่วมด้วยหลายๆแบบก็ได้ครับ.
ตัวอย่าง : แทคที่ใช้
1 | < canvas height = "200" id = "myCanvas" width = "578" ></ canvas > |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | var canvas = document.getElementById( 'myCanvas' ); var context = canvas.getContext( '2d' ); // begin custom shape context.beginPath(); context.moveTo(170, 80); context.bezierCurveTo(130, 100, 130, 150, 230, 150); context.bezierCurveTo(250, 180, 320, 180, 340, 150); context.bezierCurveTo(420, 150, 420, 120, 390, 100); context.bezierCurveTo(430, 40, 370, 30, 340, 50); context.bezierCurveTo(320, 5, 250, 20, 250, 50); context.bezierCurveTo(200, 5, 150, 20, 170, 80); // complete custom shape context.closePath(); context.lineWidth = 5; context.strokeStyle = 'blue' ; context.stroke(); |
ผลลัพธ์ที่ได้คือ
การวาดรูปทรงสี่เหลี่ยม
การวาดรูปสี่เหลี่ยมใน HTML5 Canvas เราใช้เมธอด rect(x,y,width,height) โดยมีการกำหนดจุดเริ่มต้น แนวแกน x และ y พร้อมกับใส่ความกว้าง และ ความสูง.
1 2 3 4 5 6 7 8 9 10 | var canvas = document.getElementById( 'myCanvas' ); var context = canvas.getContext( '2d' ); context.beginPath(); context.rect(188, 50, 200, 100); context.fillStyle = 'yellow' ; context.fill(); context.lineWidth = 7; context.strokeStyle = 'black' ; context.stroke(); |
ผลลัพธ์ที่ได้คือ
การวาดรูปทรงกลม
การสร้างรูปทรงวงกลมใน HTML5 Canvas เราจะใช้เมธอด arc() โดยกำหนดจุดกึ่งกลางแนวแกน x และ y จากนั้นใส่มุมเรเดียนเริ่มต้นที่ 0, มุมเรดีนยสิ้นสุดที่ 2 * PI, กำหนดการสร้างวนทวนเข้มเป็น false.
ตัวอย่าง : การวาดรูปทรงกลม
1 2 3 4 5 6 7 8 9 10 11 12 13 | var canvas = document.getElementById( 'myCanvas' ); var context = canvas.getContext( '2d' ); var centerX = canvas.width / 2; var centerY = canvas.height / 2; var radius = 70; context.beginPath(); context.arc(centerX, centerY, radius, 0, 2 * Math.PI, false ); context.fillStyle = 'green' ; context.fill(); context.lineWidth = 5; context.strokeStyle = '#003300' ; context.stroke(); |
ผลลัพธ์ที่ได้คือ
ในส่วนของการสร้างรูปทรงครึ่งวงกลมใน HTML5 Canvas เราจะใช้เมธอด arc() เหมือนกับการสร้างวงกลม โดยกำหนดจุดกึ่งกลางแนวแกน x และ y จากนั้นใส่มุมเรเดียนเริ่มต้นที่ 0, มุมเรดีนยสิ้นสุดที่ PI, กำหนดการสร้างวนทวนเข้มเป็น false.
1 2 3 4 5 6 7 8 9 10 11 | var canvas = document.getElementById( 'myCanvas' ); var context = canvas.getContext( '2d' ); context.beginPath(); context.arc(288, 75, 70, 0, Math.PI, false ); context.closePath(); context.lineWidth = 5; context.fillStyle = 'red' ; context.fill(); context.strokeStyle = '#550000' ; context.stroke(); |
ผลลัพธ์ที่ได้คือ
อ้างอิง : ที่นี่
0 comments:
Post a Comment