ランダムな位置にランダムな色で図形を作成し表示する

■プログラム説明(ソースコード説明)
 サンプルでは星形を指定された数だけ生成します。星形の形状と生成範囲などをプログラムの先頭で変数に入れておきます。このようにすると修正が楽になります。塗りの色をデフォルト色で指定しています。生成した後の星形のオブジェクトに対して指定することもできます。表示位置はtranslate()を使って図形を移動させます。

■ソースコード
r = 20; // 星型の外半径
rI = 10; // 星型の内半径
pt = 5; // 角の数(n角形)
pW = 600; // 星型を生成する範囲(横幅)
pH = 600; // 星型を生成する範囲(縦幅)
Num = 25; // 生成する数

myColor = new RGBColor();
cColor = new Color();

docObj = activeDocument;
docObj.defaultStroked = false;
for (i=0; i<Num; i++)
{
myColor.red = Math.floor(Math.random() * 256);
myColor.green = Math.floor(Math.random() * 256);
myColor.blue = Math.floor(Math.random() * 256);
cColor.rgb = myColor;
docObj.defaultFillColor = cColor;
x = Math.random() * pW;
y = Math.random() * pH;
pathObj = docObj.pathItems.star(0,0,r,rI,pt);
pathObj.translate(x,y);
}
redraw();


■使い方
1:星形を生成するドキュメントをアクティブ(最前面)にします。
2:ファイルメニューからスクリプトを実行します。
3:星形が25個描画されます。


■ポイント
 図形を生成した後に正しく画面描画が行われない場合があります。このような場合は以下の命令を図形を生成した後、または生成処理が終わった後に指定します。

redraw()

■実際のスクリプトをダウンロード(sample.js.zip)