ここは個人の趣味のページです。
昭和49年生まれ、血液型B型、男。
名前は、かわ、kawa、d_kawakawa、cookiepuddingman、平行四辺形 などいろいろあります。
私がプログラミングを好むのは、プログラミングは私の「物づくり」に対する探求心と創造性を十分に満たしてくれるから、、です。
憧れに向かう、形にする。そんなわけで、この個人ページではプログラミングの話をすることが多いです。
ここの管理人、
AI の利用やめるってよ。
AI の問題点:
これらが向こう10年解決されないだろうと見込んで、やめることにしました。(2025年5月23日~)
私は AI に頼らず「自分の力」を大切にしたいです。
…とはいえ、人間は新しく見つけた技術を手放すということは基本的にやらないと思います。
だから私も後々 AI を利用することにはなると思います。
でも上記の問題点は確かなもので、将来 AI ロボが私の家の扉をコンコンと叩いて
「市からの要請で、お手伝いするため おうかがいしました」
と言うまでの間は、この AI 技術を導入せず、頑張ってみようと思います。
でもこの考え方、キツイと思うのでマネしなくていいです。


最近は Microsoft Excel の VBA というプログラミング言語で「図形の変換ツール」を作っています。
▼ こういう画面でプログラミングしていますね。
▼ Microsoft Excel で何か描いて、画面の「ボタン 6」を押すと、、
▼ インターネットブラウザ上で JavaScript で描画されます。
別途取り組んでいる「人体のプログラム」では「顔」をいろいろ作る必要があるんですが、

この顔を数値をポチポチ入力しながら作っていると大変なので、Excel でズバッと描いて、バシッと人体に挿入できたら楽だろうと、そういうコンタン(根端)です。

Excel 画面の「ボタン 6」を押すと、図形データが JavaScript に変換され、test.js みたいなファイル名のファイルへ落ちます。
ブラウザの更新ボタンを押せば、test.js を読み直すので、
「ボタン 6を押す、更新ボタンを押す」
…という簡単操作で実現されます。
これが内部的には結構大変で、Excel のプリセット図形というのは、見た目は単純でも、データとしては
『嵐のように』
ひどいことになっています。
▼Excel にはいろいろな図形がありますが、、
▼たとえばこの図形、「額縁」という名前ですけど、(名前はどうでもいいんだが)

▼ひもとくと、こんな感じ。意外と複雑です。
Excel で図形をいじっていて、ちょっと形を変えようと思って「頂点の編集」で、点を動かしたら次々と点が出てきて「いじりようがなかった」という結果にならなかったでしょうか。
その理由がコレ↑なんですね。1カ所に4個も5個も点が折り重なっています。
▼ ↑この図について、頂点の順番はどうなのかと探ったメモ
▼図形描画を使って把握しようとしたけど断念。これこそ嵐のようだ!

▼いろいろ苦労した結果の最終的なメモ。
点には種類があって、その種類の並びのパターンによって、「一筆書きが中断」されたり、「別の場所から再開」されたりと、変化します。
上図の下部に並ぶ「 L 」が線を引く、「 J 」が一筆書きを中断して別の場所へジャンプするという意味です。
その上には "33LC" とか "34Ln" とか並んでいますが、
33LC は「33番目の点。ラインを引く、"msoEditingCorner" という種類の点」という意味、
34Ln は「34番目の点。ラインを引く、種類が未設定 null である点」という意味です。
点の種類とは、たぶん、

これのことかなと思います。
| Excel 画面 | VBA |
|---|---|
| 頂点を中心にスムージングする | msoEditingSmooth |
| 頂点で線分を伸ばす | msoEditingAuto |
| 頂点を基準にする | msoEditingCorner |
…かなぁ。
このほか VBA の設定値として上記3つではなく「未設定 null」だと、ハンドル(上図の菱形図形の右端カドの2方向に伸びた白い■のついた棒)を動かすと、そのとき初めて未設定から「msoEditingSmooth」、「msoEditingAuto」、「msoEditingCorner」のいずれかの値に変化するみたいです。
以降(図形8種類のメモ)は私の徹夜の証です。夜を徹してと書いて徹夜です。
この図を解析。
研究、研究…
この図を解析。
Office で使われる「ドローデータのフォーマット」というものが Microsoft から資料公開されていないので、自分で解析します。

ある一つの図形について
「JavaScript で正しく再現できた!」
と思っても、他の図形では崩れていたりします。

だから崩れている図形を一つ一つ調べて、
地道に考えてプログラムしていきます。

↑図を見ると、簡単に色分けをしていますよね。
←解析すると、すべての図形が「一筆書き」で作られています。
一筆書きで、色分けをどうやって判定して塗るのか??
…を考えたときゾッとしました。
そこまでできない。。。。やりたくない。。。キガトオクナル

ノンノンノン☝☝☝ 大丈夫さ。
プリセットの図形だけが、「一筆書き&色分け」になっていて、ユーザーが作る図はそういう変態的な形式にはならないので、たぶんそんなに恐れることはないと思います。
徹夜したから疲れてるな。

こんな解析を一晩中続けて、朝の6時を過ぎてしまい、
もう51歳になったのに、そんな無茶なことはマズいよ、、と思った。

この図だけ、Microsoft のミスが2つありました。
点の種類が他と違うイレギュラーな順番で並んでいて、「ミスじゃないのか?」と思いました。プログラムの中で特別対応が必要でした。
また、同じ場所に点が複数置かれている場合、それらの点はすべて同じ座標値のはずですが、この図形だけある点に重なる2つの点がズレていました。
2番目の点 points : [ 200.2499, 1444.185 ],
19番目の点 points : [ 200.25, 1444.185 ],
このちょっとのズレにより、よーくみると線の太さがちょっと違っていました。
わずかな差でずれるんですよね。Excel のドローって。
たぶん日本全国1億人でこれを発見したユーザーは私一人だけ。1/100,000,000。
ワン・ハンドレッド・ミリオン。ぶんのいち。
つっ…つかれた…
せっかくなので、ちょっとやってみるか。どーかなー
▼「3Dお姉さん」は Excel で描かれているんですが、、
▼おー!これは、、

いけね、もっと疲れる。。。
わすれてたわ。
回転とかその他、「いろいろ図形を動かすプロパティ」があるんだった orz

(訪問者のどんなニーズと この記事がつながるか)
最近、Wi-Fi ルーターについてのニュースが目立っています…
目立っている、、と思ったんですけど、よくよくニュースを探してみると上記2点だけで、そんなに目立っているというほどではありませんでした。
ニュースを読んで、自分が使っている Wi-Fi ルーターの発売年を調べたら、