水曜日, 3月 04, 2026

3Dプリンタ遊び 02 
初プリントで痛恨のミス

取りあえずプリント・・・
で、テストプリントを兼ねてデフォルトで入っているスクレバーを印刷することにしました。

キャリブレーションは自動なので本当に楽です。で、プリント結果は見事に色々と失敗の塊となりました。まずサンプルで入っていたPLAフィラメントの白が足りず、スタンドが中途半端でオワコン。気を取り直して同時購入していたグレーのPETGフィラメントでプリントするもプレートとの定着が甘くて一部分が崩壊。取りあえず添付されていたブレードと組み合わせるも、ビス穴が合わずにヤスリがけをすることに・・・。実はこのとき大きなミスを犯していました(>_<)。

※白はPLA、グレーはPETG

後日、ビス穴が合わなかったのは取り付け方が逆だったことに気がつき、本体を白に変更し、マグネットを100均で購入して完了です。ちなみに上位機種にはマグネットが付属しているようです。

ところで、気になる騒音ですが、起動時の「ピ〜」が少し気になりますが、隣家に影響するような音ではありません。実際のプリント音ですが、ヘッドの近くで測ると60〜65dBA程度。5m程離れれば50dBA程なので問題は全くありません。夜でも部屋のドア閉めればセーフでした。

TCDW8695 
見つからずにちょっとプチパニックになって

路上で・・・某会員カードが見つからずにちょっとプチパニックになって10分後、それはスマホ用アプリに変更されていたことに気がつき、不審者丸出しの苦笑い・・・(^o^)汗

火曜日, 3月 03, 2026

Let's start JavaScript 99 
HTMLにてクリックでランダムに画像が切り替え

表示画像をクリックで用意した画像からランダム表示させます。

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>ランダム画像切り替え</title>
<style>
body {
background: lightcyan;
color: darkgray;
}

img {
width: 400px;
cursor: pointer;
}
</style>
</head>
<body>
<center>
<img id="randomImage" src="pic/pic01.jpg"
    alt="クリックで画像切替">
<h4>The character I created</h4>

<script>
const images = [
"pic/pic01.jpg",
"pic/pic02.jpg",
"pic/pic03.jpg",
"pic/pic04.jpg",
"pic/pic05.jpg"
];

const img = document.getElementById("randomImage");

img.addEventListener("click", () => {
const randomIndex =
        Math.floor(Math.random() * images.length);
img.src = images[randomIndex];
});
</script>
</center>
</body>
</html>

picフォルダーに用意したs画像

実行直後はpic01.jpgを表示

画像をクリックでランダムに切り替わります。

TCDW8694 
出費がかさむ罰ゲームを完了しました

オーブンレンジが不安定。調べると同じトラブルが多い機種と判明するもリコールになっていない事の不思議。納得いかないけど修理を依頼して出費がかさむ罰ゲームを完了しました。

月曜日, 3月 02, 2026

Googleスプレッドシートで翻訳が可能

Googleスプレッドシートで翻訳が可能でした。ちょっとビックリ。

こんな感じです。

Google翻訳を利用しているので長文も問題ないです。

具体的な記述は上の様になります。

TCDW8693 
キャンプや秘密基地ごっこは好きです

Cute Baby Alien 015(^o^)
かわいいクマさんはPCの中だけ・・・。
想像の中でのクマさんは可愛いけれど、現実は・・・。本当に自然と共存したければ裸で山にこもるしかないですね。キャンプや秘密基地ごっこは好きですが、山ごもりは嫌です(^o^)

日曜日, 3月 01, 2026

JavaScriptでAI遊び 88 
Illustratorで複数オブジェクトの間隔を統一

Illustratorで複数オブジェクトの間隔を指定数で統一します。

/*
Illustrator Script
選択したオブジェクト間の隙間を指定値で統一 。
*/

if (app.documents.length === 0) {
alert("ドキュメントがありません");
exit();
}

var sel = app.activeDocument.selection;

if (sel.length < 2) {
alert("2つ以上のオブジェクトを選択してください");
exit();
}

// mm → pt 変換係数
var MM_TO_PT = 2.83464567;

// 隙間入力(mm)
var gapMM =
    prompt("オブジェクト間の隙間(mm)を入力してください", "5");
if (gapMM === null || isNaN(gapMM)) {
alert("正しい数値を入力してください");
exit();
}
var gap = Number(gapMM) * MM_TO_PT;

// 方向選択
var isHorizontal =
    confirm("横方向に整列しますか?\nOK:横 / キャンセル:縦");

// 位置順でソート
sel.sort(function(a, b) {
var ab = a.geometricBounds;
var bb = b.geometricBounds;
return isHorizontal ? ab[0] - bb[0] : bb[1] - ab[1];
});

// 基準位置
var pos = isHorizontal
? sel[0].geometricBounds[0] // left
: sel[0].geometricBounds[1]; // top

// 整列処理
for (var i = 0; i < sel.length; i++) {
var item = sel[i];
var b = item.geometricBounds;
var w = b[2] - b[0];
var h = b[1] - b[3];

if (isHorizontal) {
item.left = pos;
pos += w + gap;
} else {
item.top = pos;
pos -= h + gap;
}
}

上の様にサイズの異なる複数のオブジェクトの間隔を統一したい場合は[ウィンドウ]>[整列]>[水平方向中央に整列]を思い浮かべますが・・・


オブジェクトの中心で間隔を設定してしまい、隙間は同じにはなりません。

そこで今回のスクリプトを使い、間隔を指定すれば・・・


左端のオブジェクトを軸に同じ間隔で再配置されます。

形状がバラバラでも大丈夫です。

間隔を指定すれば・・・


左端のオブジェクトを軸に同じ間隔で再配置されます。

TCDW8692 
今だけカニカマ増量なら許せますね

スーパーで見かけた「カップヌードル 今だけ謎肉増量」に思わず絶句(^o^)。自虐ネタですかね〜。個人的には「カップヌードル 今だけカニカマ増量」なら許せますね。でも買わなかったけど(^o^)

土曜日, 2月 28, 2026

3Dプリンタ遊び 01 
導入と準備、環境設定

Bambu Lab A1 miniを購入したので、奮戦記の始まりです。専用ソフトBambu Studio編も近日スタート予定です。

3Dプリンタ遊び

組立は恐ろしく簡単です。取りあえず騒音は気にならないと聞いていたので振動対策だけは綿密に調整しました、

ということで、設置にあたり、振動対策で上の様な環境にセッティングしました。
A:滑り止めシート
B:合板
C:両面テープ
D:高反発ウレタン クッション材
E:スポンジゴム

あとは元箱ダンボールの底を抜いて被せれば(※)簡易ケースに早変わりという貧乏ネタです。
スプールホルダーを外さないと無理です。

フィラメントはPLAではなくて、PETGをゲッとしました。特に大きな理由はなく、単に高速と言うだけでポチりました。同時に3Dプリンターフィラメント保管バッグ真空キットも購入しました。そのうち専用ケースですね。ちなみに写真には入っていませんが、シリカゲルを入れています。

TCDW8691 
2年しか持たなかった感じですね。本体買い換えです。

仕事部屋ではコーヒーをこぼすことが多かったので水筒に替えたのですが・・・4年前に購入した水筒のパッキンが劣化したので交換したくても、既にメーカーには在庫無し・・・というか、検索に引っかからないのでゲームオーバー。2年前に一度交換していましたが、2年しか持たなかった感じですね。本体買い換えです。しかし、4年前に購入した直後に本体製造中止になっていたとしても、パーツのパッキンが4年でアウト・・・ちょっと、あんまりかも。