月曜日, 7月 13, 2026

JavaScriptでAI遊び 99 
Illustratorで選択したオブジェクトのサイズをランダム変更

選択したオブジェクトのサイズをランダムに変更じます。

// 選択オブジェクトをランダムスケール

if (app.documents.length === 0) {
alert("ドキュメントを開いてください。");
} else {
var doc = app.activeDocument;

if (doc.selection.length === 0) {
alert("オブジェクトを選択してください。");
} else {

var minScale = parseFloat(prompt("最小倍率(%)", "50"));
if (isNaN(minScale)) exit();

var maxScale = parseFloat(prompt("最大倍率(%)", "200"));
if (isNaN(maxScale)) exit();

if (minScale > maxScale) {
var tmp = minScale;
minScale = maxScale;
maxScale = tmp;
}

function randomScale(min, max) {
return min + Math.random() * (max - min);
}

for (var i = 0; i < doc.selection.length; i++) {

var item = doc.selection[i];
var scale = randomScale(minScale, maxScale);

item.resize(
scale, // 水平
scale, // 垂直
true, // パターン変形
true, // グラデーション変形
false, // 線幅は維持
true, // 塗りパターン変形
scale // 線幅倍率
);
}

alert("ランダムスケール完了");
}
}

オブジェクトを選択し実行すると・・・

最小倍率を指定し・・・

最大倍率を指定するだけです。

このパレットが表示されたら完了です。

上は処理結果です。線幅も対応させる場合は、38行目を以下の様に変更すれば完了です。

false, // 線幅は維持
true, // 線幅も変更

※Illustratorのアップデートで不具合が出る場合があります。気がついた時点でデバッグするように心がけていますが、すぐに対応できないのでご容赦ください。

TCDW8826 
これが第四のトラブルだったのかも

昨日は、ちょっとしたトラブルで大工仕事をしたのですが、ニッパの戻しバネ部分に右人差し指を思いっきり挟み、左小指にちょっと火傷してしまいました。工具が入りにくい場所の作業はトラブルの元ですね。もしかしてこれが第四のトラブルだったのかも(>_<)・・・ということで第五に期待です(^o^)

日曜日, 7月 12, 2026

Let's start JavaScript 105 
キャラクタのスケールに合わせたサイズ調整

キャラクタのスケールに合わせたサイズ調整の計算機を作ってみました。以下のネタの発展系です(^o^)


<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>うさぎの高さ計算</title>
<style>
body {
background: black;
color: white;
}

input {
width: 80px;
margin: 5px;
}
</style>

</head>
<body>
<center>
<h3>うさぎの耳までの高さ計算</h3>

<p>
基準の頭までの高さ:
<input type="number" id="baseHead" value="100">
</p>

<p>
基準の耳までの高さ:
<input type="number" id="baseEar" value="140">
</p>

<hr>

<p>
新しい頭までの高さ:
<input type="number" id="newHead">
</p>

<button onclick="calculate()">計算</button>

<p id="result"></p>

<script>
function calculate() {
const baseHead =
        parseFloat(document.getElementById("baseHead").value);
const baseEar =
        parseFloat(document.getElementById("baseEar").value);
const newHead =
        parseFloat(document.getElementById("newHead").value);

if (isNaN(baseHead) || isNaN(baseEar) ||
        isNaN(newHead) || baseHead <= 0) {
document.getElementById("result").textContent =
            "正しい数値を入力してください。";
return;
}

const ratio = baseEar / baseHead;
const newEar = newHead * ratio;

document.getElementById("result").textContent =
`耳までの高さは ${newEar.toFixed(1)} です。`;
}
</script>
</center>
</body>
</html>

実行し、頭までの高さと耳までの高さ、新しい耳までの高さを入力して [計算]をクリックすれば・・・

答えが得られます。

TCDW8825 
階段の中央で一点を見つめて立っている人

Cute Baby Alien 048(^o^)
泳げないオタマジャクシ系・・・。
地下鉄の通路にある階段の中央で一点を見つめて立っている人に遭遇。何を見つめていたのだろう? 目線の先には天井があるだけ。垢舐めでも見えたのかな〜???

土曜日, 7月 11, 2026

Illustratorの無駄知識44 
円に対するジグザグの折り返しと結果

円に対するジグザグの折り返しと、その結果を整理しました。

調整するのは[折り返し]だけです。

左はデフォルトの円(アンカーポイント4)、右はアンカーポイントを追加してアンカーポイント8の状態で[折り返し]を[0]にした結果。

[折り返し]を[1]にした結果。

[折り返し]を[2]にした結果。

[折り返し]を[3]にした結果。

[折り返し]を[4]にした結果。

[折り返し]を[5]にした結果。

[折り返し]を[6]にした結果。

[折り返し]を[8]にした結果。

[折り返し]を[10]にした結果。

整理するとこんな感じです。アンカーポイントは[2]以降で落ち着きますね。

TCDW8824 
もう笑うしかなく、汗だくで頑張っています

ついに恐れていたことが・・・。リビングのエアコン、メイン冷蔵庫と故障トラブル続きでしたが、なんと10年前に買い換えた仕事部屋のエアコンが壊れました。もう笑うしかなく、汗だくで頑張っています。こうなったら4番目の故障が何か?を楽しみにする・・・かな(>_<)

金曜日, 7月 10, 2026

Blender Study Notes 76 
分割はナイフより平面でブーリアン

分割処理はナイフを使うよりも平面でブーリアン処理した方が簡単です。

用意したオブジェクトに対して・・・

[追加]>[メッシュ]>[平面]を追加し、サイズ調整してから・・・

必要に応じて角度調整します。平面がナイフの代わりです。

平面の位置が確定したら、オブジェクトを選択してから・・・

[モディファイアー]>[モディファイアーを追加]>[生成]>[ブーリアン]にて[オブジェクト]で[平面]を選択し、[差分]で・・・

切り取られます。

処理結果はこんな感じです。

もし切り取られた部分が欲しい場合は、お処理前のオブジェクトのコピーに対して、平面を180度回転させて処理を行うと、上図の様に逆が残ります。

平面を非表示とすれば・・・

両者の分断部分は全く目立ちません。

Blender 5.1.0

TCDW8823 
日よけは室内のカーテンで対処することに

早朝6時から仕事部屋のベランダに設置していた葦簀を撤去。早朝じゃないと日差しがきついですからね。結局、日よけは室内のカーテンで対処することにしました。しかし5年ほど放置していたので、ホラーでした(^o^)汗

木曜日, 7月 09, 2026

写真撮影時の必須アイテム「カラーチェッカー クラシック」を作成してみる

BlogやFacebookにアップする写真は,オートで正直適当に撮影していますが、仕事で関わる場合は神経を使います。ホワイトバランスにカラーチェッカー クラシックですね。

特にカラーチェッカー クラシックは本気で調達すると200万円ほどします。一般的なモノでも数万円ですね。実は昔購入した当時最安値のモノを紛失してしまったのでIllustratorで手作りしていました。

カラーチェッカー クラシック(ColorChecker Classic)の24色の基準値を確認する方法はいくつかありますが、
色管理やカメラプロファイル作成の分野では、BabelColor が公開している ColorChecker の測色データが事実上の標準としてよく使われおり、様々な情報収集ができます。

BabelColor の公開データは以下でダウンロード可能で・・・

以下のファイルが公開されています。

ColorChecker24_After_Nov2014.txt
ColorChecker24_Before_Nov2014.txt
Excel形式の測色データ
Lab、XYZ、sRGB、Adobe RGB
スペクトル反射率データ

私はD50のRGB値をIllustratorで設定して見ました。

厚手のマット紙にプリントすれば完成です。

TCDW8822 
これ女性専用バスじゃないよね〜

バス停でバスを待っていたら、なんとなく違和感を感じ、私の前後に並んでいる人を見たら、私以外がすべて女性でちょっと焦りました。これ女性専用バスじゃないよね〜、いやそんなバス無いって・・・。