JavaScript+canvasで七色のボード効果を実現 example_javascriptスキル

WBOY
リリース: 2016-05-16 15:15:01
オリジナル
1557 人が閲覧しました

この記事の例では、JavaScript+キャンバスで 7 色のボード効果を実現する方法について説明します。参考のために皆さんと共有してください。詳細は次のとおりです:

レンダリングは次のとおりです:

html:

<canvas id="canvas" class="canvas" width="600" height="600"></canvas>

ログイン後にコピー

CSS:

html,body{margin: 0;padding: 0}
.canvas{display: block; margin-left:auto;margin-right:auto;margin-top: 50px;}

ログイン後にコピー

javascript:

var disk = [
    {
      area:[{x:0,y:0},{x:600,y:0},{x:300,y:300}],
      color:"#CBF263"
    },
    {
      area:[{x:0,y:0},{x:0,y:600},{x:300,y:300}],
      color:"#5CB6D0"
    },
    {
      area:[{x:0,y:600},{x:300,y:600},{x:150,y:450}],
      color:"#FE9CCD"
    },
    {
      area:[{x:150,y:450},{x:300,y:300},{x:450,y:450},{x:300,y:600}],
      color:"#A696C3"
    },
    {
      area:[{x:300,y:600},{x:600,y:600},{x:600,y:300}],
      color:"#FBC421"
    },
    {
      area:[{x:600,y:300},{x:600,y:0},{x:450,y:150},{x:450,y:450}],
      color:"#FF5061"
    },
    {
      area:[{x:450,y:450},{x:450,y:150},{x:300,y:300}],
      color:"#FDEA11"
    }
]
window.onload = function(){
    var canvasDom = document.getElementById("canvas");
    var ctx = canvasDom.getContext("2d");
    drawDisk(disk,ctx)
}
function drawDisk(disk,ctx){
    for(var i = 0;i<disk.length;i++){
      ctx.beginPath();
      ctx.moveTo(disk[i].area[0].x,disk[i].area[0].y);
      for(var j = 1;j<disk[i]["area"].length;j++){
        ctx.lineTo(disk[i].area[j].x,disk[i].area[j].y);
      }
      ctx.closePath();
      ctx.fillStyle = disk[i]["color"];
      ctx.fill();
    }
}

ログイン後にコピー

JavaScript 関連のコンテンツに興味のある読者は、このサイトの特別トピック「JavaScript アニメーションの特殊効果とテクニックのまとめ」、「JavaScript 拡張テクニックのまとめ」を参照してください。 🎜>"、"JavaScript のモーションエフェクトとテクニックのまとめ"、"JavaScript 算術演算の使い方まとめ"、"JavaScript オブジェクト指向入門チュートリアル"

この記事が JavaScript プログラミングのすべての人に役立つことを願っています。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート