Illustratorで最小円の直径の間隔で蛇の目を作る。正円だけでなく楕円にも対応版。
数を指定しても煩雑になるので、ここでは元の円を含めて4つの円で作成する蛇の目マークを任意の楕円を選択して自動生成します。その際、最小円がそれぞれの楕円の垂直方向の間隔を同じとします。
結果、選択した楕円の垂直方向の直径Aに対して
2つ目の円の直径は(A÷7×5)、
3つ目の円の直径は(A÷7×3)、
一番小さい円の直径は(A÷7×1)
となります。
(function () {
var doc = app.activeDocument;
var sel = doc.selection;
if (sel.length !== 1 || sel[0].typename !==
"PathItem" || !sel[0].closed) {
alert("1つの楕円を選択してください。");
return;
}
var baseEllipse = sel[0];
var baseWidth = baseEllipse.width;
var baseHeight = baseEllipse.height;
var centerX = baseEllipse.position[0] + baseWidth / 2;
var centerY = baseEllipse.position[1] - baseHeight / 2;
var sizes = [5/7, 3/7, 1/7];
for (var i = 0; i < sizes.length; i++) {
var newWidth = baseWidth * sizes[i];
var newHeight = baseHeight * sizes[i];
var newEllipse = doc.pathItems.ellipse(
centerY + newHeight / 2,
centerX - newWidth / 2,
newWidth,
newHeight
);
newEllipse.stroked = true;
newEllipse.filled = false;
}
})();
実行結果です。正円にも対応します。