結論から言うと、ChatGPTでCADのスクリプトを自動で書ける場合があるようです。
以下に述べますが、AutoCAD、FreeCAD、3DCAD(Vectorworksおよびライノセラス)の3つを調べてみました。VectorworksだけChatGPT4で作成されているようで、ほか2つはChatGPT3.5のようです。
まずはAutoCADですが、以下の動画でアヴニールCADシステムズさんがスクリプトの作成にトライされております。
これまで全く知らなかったのですが、AutoCADは、AutoLispというLisp言語で書かれております。
Lisp言語は、かなり古いプログラミング言語であり、関数型言語となっております。演算等が、(+ 1 1)などポーランド記法で書かれるのが特徴ですね((+ 1 1)というのは、1+1の意)。
Lispにも種類があり、Common Lispの中のSBCL(Steel Bank Common Lisp)など種類があり、以下はSBCLの例です。
話がそれましたが、何回か修正しつつも、最終的にはアヴニールCADシステムズさんの指示どおりに、ChatGPT3.5が作図していました。動かす人間の方の側に基礎知識が求められるとおっしゃっていました。
次にFreeCADですが、以下の動画でまきび技術研究所さんが挑戦されています。スクリプトはなんとPythonのようですね、
星形の図形の描画を指示されていましたが、ChatGPT3.5がちょくちょく間違うようで都度修正されていました。少し複雑な図形の描画は、かなり指示を工夫しないと難しいかも知れません。
FreeCADのインストールと環境設定は以下になります。
FreeCAD 操作をPythonスクリプトとして記録して、それを実行することもできるようです。
いつも行う操作は記録して、その記録したスクリプトに手を加えて使いまわすのがいいかも知れません。ChatGPTと上手く使い分けることができれば、かなり楽になりそうです。
最後に3DCADですが、Vectorworksはパスカル言語とPython、ライノセラスはPythonやC#をスクリプトとしているそうです(ちなみにBlenderはPythonだそうです)。3DCADに種類があること自体知りませんでしたが、以下の動画でCAD ON / キャドオンさんが、ChatGPT4でサッカーボールの作成に挑戦されています。
やはりちょくちょく修正されてましたね。的確な設定とシチュエーションが必要であり、修正は前提ではありますが、レイアウトなどへ利用が進んでいくのではと、CAD ON / キャドオンさんは述べておられました。
余談ですが、パスカル言語は手続き型言語 であり、アルゴリズム(計算手順 )の記述がしやすく、逐次、条件分岐、繰り返しによる構造化プログラミングに適しています。すべての変数はデータ型を宣言する必要があり、データ型の種類も多いのですが、Pythonのようなオブジェクト指向プログラミングではないのが特徴です。
また、C#はマイクロソフトが開発したプログラミング言語で、C#は、C言語やC++と名前が似ているものの、全く別のプログラミング言語です。Windows向けの実行環境「.NET Framework」上で動作し、Javaと同様に「オブジェクト指向」を採用しています。特に、ゲーム開発エンジン「Unity」で、C#が唯一のサポート言語として採用されていることが有名ですね。
以上のように、まだ課題はあるようですが、CADのような設計関連でも、今後ChatGPTの利用が広まっていくものと予想されます。今後の動向を注視していきたいですね。