水曜日, 7月 19, 2023

JavaScriptでAI遊び 05 
選択したオブジェクトをランダムに移動

選択したオブジェクトをランダムに移動してみます。

/* randum_move.jsx */
// ドキュメントオブジェクトの取得
var docm = app.activeDocument;

// 選択されたオブジェクトの取得
var selection = docm.selection;

// 移動範囲の設定
var moveRangeX = 200; // X方向の移動範囲
var moveRangeY = 200; // Y方向の移動範囲

// 選択されたオブジェクトをランダムに移動
for (var i = 0; i < selection.length; i++) {
var object = selection[i];

// X方向のランダムな移動量を生成
var moveX = Math.random() * moveRangeX - (moveRangeX / 2);
// Y方向のランダムな移動量を生成
var moveY = Math.random() * moveRangeY - (moveRangeY / 2);
// オブジェクトを移動
object.position = [object.position[0] + moveX, object.position[1] + moveY];
}

// ドキュメントを更新
docm.selection = null;
/* randum_move.jsx */

グループ化している4つのイラストを選択して実行すると・・・

処理結果1

処理結果2
Undoで元の状態に戻してから再実行

処理結果3
Undoで元の状態に戻してから再実行

取りあえずランダムは生きていますね。