表示しているファイルの中にサイズと色違いの円を100個描画させます。
CMYK版
/* cmyk_circle100 */
function randomCMYKColor() {
// ランダムなCMYKカラーを生成
var color = new CMYKColor();
color.cyan = Math.random() * 100;
color.magenta = Math.random() * 100;
color.yellow = Math.random() * 100;
color.black = Math.random() * 0;
//Blackを利用するとダークな結果になるので利用していません
return color;
}
function createRandomCircles(numCircles, minSize, maxSize) {
var doc = app.activeDocument;
// ドキュメントのアートボードの範囲を取得
var artboard =
doc.artboards[doc.artboards.getActiveArtboardIndex()];
var abRect = artboard.artboardRect;
var abLeft = abRect[0];
var abTop = abRect[1];
var abRight = abRect[2];
var abBottom = abRect[3];
for (var i = 0; i < numCircles; i++) {
// ランダムな円のサイズを決定
var size = minSize + Math.random() * (maxSize - minSize);
// ランダムな位置を決定(アートボード内)
var x = abLeft + Math.random() * (abRight - abLeft - size);
var y = abTop - Math.random() * (abTop - abBottom - size);
// 新しい円を作成
var circle = doc.pathItems.ellipse(y, x, size, size);
// 円にランダムなCMYK色を設定
circle.fillColor = randomCMYKColor();
circle.stroked = false; // 線なし
}
}
if (app.documents.length > 0) {
var numCircles = 100;
var minSize = 20; // 円の最小サイズ
var maxSize = 100; // 円の最大サイズ
createRandomCircles(numCircles, minSize, maxSize);
} else {
alert("ドキュメントを開いてください。");
}
/* cmyk_circle100 */
実行結果 A
実行結果 B