RDA1は、内円の大きさ、内円までは青。
RDA1~RDA2までがグラデーション
RDA2の外は、黒です。rgb(0,0,0)です。
dx = x - VIEW_WIDTH / 2.0;
dy = y - VIEW_HEIGHT / 2.0;
rc = Math.sqrt(dx * dx + dy * dy);
if( ( rc > RAD1) && (rc < RAD2)) {
nBright = parseInt( 255 -( rc - RAD1) / (RAD2 -RAD1) * 255);
}
wkcolor = "rgb(0, " + nBright + "," + nBright + ")";
ctx.beginPath();
ctx.lineWidth = 1;
ctx.moveTo(x,y);
ctx.lineTo(x+1,y+1);
//全て座標を指定(ドット)
ctx.strokeStyle = wkcolor;
ctx.stroke();
xとyのループは、前話と同じです。
rc(半径)の算出の式が理解できれば円の描画の仕組みが分かります。