Wordにてコピペなどで行間が揃わない時の対処法です。
月曜日, 3月 30, 2026
TCDW8721
フルカラーの3Dプリンタ欲しくなって
Cute Baby Alien 022(^o^)
3Dプリント版は既に公開していますが、本来のイメージはこんな感じです。やっぱりフルカラーの3Dプリンタ欲しくなってしまいました。お仕事沢山受けないと・・・。
ラベル:
3D,
Cute Baby Alien,
modo,
TCDW
日曜日, 3月 29, 2026
3Dプリンタ遊び 07
フィラメントのカスはパテに使えるか?
上手くいけばオリジナルの型を作成・・・ということで100均でシリコン製のクッキー用の型をゲット。シリコンは熱に強いですからね。
ただし、この子はとってもデリートな構造なので・・・
フィラメントは熱に弱いので段ボールで支えを作成しました。
こんな感じになります。もちろん、これは下になる部分です。
この日のためにフィラメントのカスは溜め込んでいました。
しかし、結果は残念な展開に・・・右のPETGは高温用なのでちょっと無理ゲーでした。左のPLAは良い感じ一歩手前といったところで、細部のパテには使えそうですが型に流し込むのは現実的ではないですね。
※Bambu Lab 高速 PETGを使用(グレー)
※ELEGOO PLAを使用(グレー)
ラベル:
3D,
Bambu Lab,
Do It Yourself
土曜日, 3月 28, 2026
Blender Study Notes 71
スパイラルで巻き貝のイメージを作成
以前もネタにしましたが、今回は円錐系の巻き貝イメージです。
Blender Study Notes 56 巻き貝のようなスパイラル形状の作り 2025/4/23
モデリングにあたりアドオンツールを使います。Extra Curve Objects または Extra Mesh Objects(以前のバージョンでは Add Curve: Extra Objects)をインストールします。インストールと言ってもデフォルトで組み込まれているのでファイルを指定するだけです。
[プリファレンス]>[エクステンションを入手]で[Extra]と検索し、[Extra Curve Objects]をインストールします。
最新バージョンはこんな感じです。
※Blenderのバージョンは5.1.0
インストールが完了したら、[オブジェクトモード]>[追加]>[メッシュ]>[円]にて正円を作図し・・・
[オブジェクトモード]>[カーブ]>[Spirals]>[Spheric]を選ぶと・・・

このようなイメージができあがるので、画面左下のオプションをクリックし・・・

パラメーターを調整します。
続いて[データ]をクリックし・・・
[ジオメトリ]の[深度]を調整し[端をフィル]にチェックを入れます。
あとは、頂上のポイントを幾つか選択し[G]キーで位置調整後にmacOSの場合は[option S]、Windowsの場合は[alt S]で厚みを尖らせます。
これで円錐型の巻き貝風イメージが出来上がります。
色々調整し、続けてオブジェクトモードでオブジェクトを選択し[右クリック]>[変換]>[カーブ]にて[ターゲット]を[メッシュ]に設定すれば・・・
メッシュ状他愛の変換されます。

あとは擬人化してキャラクターの完成です。
けっして「う○ち」ではありません(^o^)
Blender 5.1.0
※ELEGOO PLAを使用(グレー)
ラベル:
3D,
Bambu Studio,
Blender,
Blender Study Notes
金曜日, 3月 27, 2026
JavaScriptでAI遊び 91
Illustratorで線幅と線形状を指定変更(改訂版2)
改訂版2も普通に[線]パレットで処理出来るので意味ないですが・・・
今回は[pt/mm、破線間隔]を指定できるようにしました。
また、前回までは[キャンセル]が出来なかった点を解決しました。
main();
function main() {
if (app.documents.length === 0) {
alert("ドキュメントがありません");
return;
}
var doc = app.activeDocument;
var sel = doc.selection;
if (!sel || sel.length === 0) {
alert("パスを選択してください");
return;
}
// ===============================
// 単位変換
// ===============================
function toPt(val, unit) {
if (unit === "mm") return val * 2.83464567;
return val;
}
// ===============================
// UI
// ===============================
var dlg = new Window("dialog", "ストローク詳細設定");
dlg.orientation = "column";
dlg.alignChildren = "left";
dlg.add("statictext", undefined, "単位");
var unitList = dlg.add("dropdownlist", undefined, ["pt", "mm"]);
unitList.selection = 0;
dlg.add("statictext", undefined, "線幅");
var weightInput = dlg.add("edittext", undefined, "2");
weightInput.characters = 6;
dlg.add("statictext", undefined, "線種");
var typeList = dlg.add("dropdownlist",
undefined, ["実線", "破線", "二重線"]);
typeList.selection = 0;
dlg.add("statictext", undefined, "破線:線分長");
var dashInput = dlg.add("edittext", undefined, "4");
dashInput.characters = 6;
dlg.add("statictext", undefined, "破線:間隔");
var dashGapInput = dlg.add("edittext", undefined, "2");
dashGapInput.characters = 6;
dlg.add("statictext", undefined, "二重線の間隔");
var doubleGapInput = dlg.add("edittext", undefined, "2");
doubleGapInput.characters = 6;
dlg.add("statictext", undefined, "線端(Cap)");
var capList = dlg.add("dropdownlist",
undefined, ["丸", "角", "四角"]);
capList.selection = 0;
dlg.add("statictext", undefined, "線角(Join)");
var joinList = dlg.add("dropdownlist",
undefined, ["丸", "角", "ベベル"]);
joinList.selection = 0;
var btns = dlg.add("group");
btns.add("button", undefined, "OK", { name: "ok" });
btns.add("button", undefined, "キャンセル", { name: "cancel" });
if (dlg.show() !== 1) {
return; // ← ここで安全終了
}
// ===============================
// 値取得 & チェック
// ===============================
var unit = unitList.selection.text;
var strokeWeight = toPt(parseFloat(weightInput.text), unit);
var dashLength = toPt(parseFloat(dashInput.text), unit);
var dashGap = toPt(parseFloat(dashGapInput.text), unit);
var doubleGap = toPt(parseFloat(doubleGapInput.text), unit);
if (isNaN(strokeWeight) || strokeWeight <= 0) {
alert("線幅が不正です");
return;
}
var strokeType = typeList.selection.text;
var capStyle = StrokeCap.ROUNDENDCAP;
if (capList.selection.text === "角") capStyle =
StrokeCap.BUTTENDCAP;
if (capList.selection.text === "四角") capStyle =
StrokeCap.PROJECTINGENDCAP;
var joinStyle = StrokeJoin.ROUNDENDJOIN;
if (joinList.selection.text === "角") joinStyle =
StrokeJoin.MITERENDJOIN;
if (joinList.selection.text === "ベベル") joinStyle =
StrokeJoin.BEVELENDJOIN;
// ===============================
// 処理
// ===============================
for (var i = 0; i < sel.length; i++) {
if (!(sel[i] instanceof PathItem)) continue;
var p = sel[i];
p.stroked = true;
p.strokeWidth = strokeWeight;
p.strokeCap = capStyle;
p.strokeJoin = joinStyle;
// ---- 実線 ----
if (strokeType === "実線") {
p.strokeDashes = [];
}
// ---- 破線 ----
if (strokeType === "破線") {
p.strokeDashes = [dashLength, dashGap];
}
// ---- 二重線 ----
if (strokeType === "二重線") {
p.strokeDashes = [];
var outer = p.duplicate();
outer.strokeWidth = strokeWeight;
var offsetValue = strokeWeight + doubleGap;
var effectXML =
'<LiveEffect name="Adobe Offset Path">' +
'<Dict data="R mlim 4 R ofst ' + offsetValue + '"/>' +
'</LiveEffect>';
outer.applyEffect(effectXML);
}
}
alert("ストローク設定を適用しました");
}

実行すると表示されるパレットで設定をすればOKです。ちなみに前回までのソースでは[キャンセル]が出来なかった問題を解決しました。
ラベル:
Illustrator,
JavaScript
木曜日, 3月 26, 2026
Bambu Studio Lessons 06
座面が曲面の場合の対処方法(2)
読み込んだら・・・
慣れないうちは[回転(R)]にてこのくらいに回転させた方が後処理が楽かもしれませんが・・・
今回はそのままで処理します。まず[カット(C)]にてスライス位置を設定します。黄色いポチで角度を保ったまま上下できます。[カットを実行]したら・・・
カットした臀部を選択し[底面選択(F)]で底面としたい面をクリックすると・・・
その面が自動的に底面となります。
あとはプレートとに位置関係を調整し、プレビューで問題点がなければプリントです。
プリント結果はこんな感じです。
問題の接合部分はピッタリでした。ヤスリがけとサフで問題解決です・・・
ただし正面のおでこあたりは頂上になっていたので、色々面倒かも。でもパテとサフで対置できる範囲ですね。
※ELEGOO PLAを使用(グレー)
ラベル:
3D,
Bambu Studio
TCDW8717
破損してしまう危険性が生まれるので・・・
3Dプリンタで作ったキャラクターの保管に悩み始めました。私の場合、ほとんどは無造作に段ボール箱に入れていますが、部分的にデリケートな形状の場合は専用の容器を厚紙などで作成します。そうしないと破損してしまう危険性が生まれるので・・・。
ラベル:
3D,
Cute Baby Alien,
modo,
TCDW
登録:
コメント (Atom)









































