Illustratorで集中線を描画してみました。
// 集中線を作成するIllustratorスクリプト
function createSpeedLines() {
if (app.documents.length == 0) {
alert("ドキュメントが開かれていません。");
return;
}
var doc = app.activeDocument;
var artboard =
doc.artboards[doc.artboards.getActiveArtboardIndex()];
var abBounds = artboard.artboardRect;
// アートボード中心座標
var centerX = (abBounds[0] + abBounds[2]) / 2;
var centerY = (abBounds[1] + abBounds[3]) / 2;
// ユーザー入力
var lineCount =
parseInt(prompt("線の本数を入力:", "100"), 10);
if (isNaN(lineCount) || lineCount < 1) return;
var minLength =
parseFloat(prompt("線の最小長さ (mm):", "50"));
var maxLength =
parseFloat(prompt("線の最大長さ (mm):", "200"));
if (isNaN(minLength) || isNaN(maxLength) ||
minLength >= maxLength) return;
var strokeWidth = parseFloat(prompt("線の太さ (pt):", "1"));
if (isNaN(strokeWidth) || strokeWidth <= 0) return;
var group = doc.groupItems.add(); // まとめるためのグループ
for (var i = 0; i < lineCount; i++) {
var angle = Math.random() * 360; // 0°〜360°のランダムな角度
var length = minLength + Math.random() *
(maxLength - minLength); // ランダムな長さ
// 角度をラジアンに変換
var rad = angle * (Math.PI / 180);
// 終点の座標を計算
var endX = centerX + Math.cos(rad) * length;
var endY = centerY + Math.sin(rad) * length;
// 線を作成
var line = doc.pathItems.add();
line.setEntirePath([[centerX, centerY], [endX, endY]]);
line.stroked = true;
line.strokeWidth = strokeWidth;
line.filled = false;
line.move(group, ElementPlacement.PLACEATEND);
}
alert("集中線を作成しました!");
}
createSpeedLines();
実行して、各パラメーターの値を入力すれば描画が実行されます。
デフォルト設定の処理結果です。
ここで右上のようなオブジェをアートブラシ登録し・・・
作成した集中線に指定すれば上のようなイメージを簡単に作成出来ます。