V-nasClairスクリプトを媒介としたAI-CIM連携の可能性検証
AIとPythonでV-nasClairスクリプトを生成し、土木構造物の3Dモデル、ソリッド化、数量確認、CIM連携へつなげる試行を整理します。
AI・Python・CADスクリプトによるCIMモデル初期生成の試行
1. はじめに
BIM/CIMの活用が進む中で、土木構造物の3Dモデル作成や属性付与、数量連携の重要性は年々高まっています。
一方で、実務の現場では、3Dモデル作成にはまだ多くの手作業が残っています。
2次元図面を読み取り、構造を理解し、部材を分解し、CAD上で形状を作成し、必要に応じて属性や数量へつなげていく。この一連の作業には、単なるCAD操作だけでなく、設計者としての構造理解が強く求められます。
今回、当社ではV-nasClairのスクリプト機能をきっかけとして、AIとCIMをどのように接続できるかを検証しました。
ここでいう「AIとCIMの接続」とは、AIにCIMモデル作成を丸投げするという意味ではありません。
設計者が持つ構造理解や設計条件をAIとの対話で整理し、それをPythonによるテンプレート生成ロジックへ変換し、最終的にV-nasClairスクリプトとして出力することで、CIMモデル作成の入口となる3Dモデルを自動生成できるかを確認する試みです。
言い換えると、今回の検証は次のような位置づけになります。
設計者の構造理解
↓
AIとの対話による部材分解・座標化
↓
Pythonによるテンプレート生成
↓
V-nasClairスクリプト出力
↓
V-nasClair上で3Dモデル化
↓
ソリッド化・数量確認
↓
i-ConCIM_Kit等による属性付与・IFC・CIM成果品化
今回の取り組みは、V-nasClairスクリプトを中間言語として、AIをCIMワークフローに接続する可能性の検証です。
2. 通常の3D CAD操作と今回の検証の違い
V-nasClairで3Dモデルを作成する場合、通常はCAD上で断面形状やポリラインを作図し、押し出し、スイープ、回転スイープなどの3D作成機能を使ってモデル化します。
実際にV-nasClairの3D演習チュートリアルでも、フーチングや竪壁のモデル化では、対象となるポリラインを選択し、「3Dホーム-3D作成-押し出し」コマンドを実行して、押し出し長さを指定する流れが示されています。
また、橋梁上部工のモデル化では、ポリライン化した要素に対して「3Dホーム-3D作成-スイープ」コマンドを実行する手順も示されています。
この通常ルートは、V-nasClair本来の3D CAD機能を使った標準的な作成方法です。
設計者が図面を確認しながら、形状を選択し、作成方向や延長を指定してモデル化できるため、個別形状への対応力があります。
一方で、樋門のように標準的な設計思想や部材構成を持つ構造物では、ある程度テンプレート化できる部分があります。
例えば、川裏翼壁であれば、底版、側壁、背面壁、立ち上がり壁といった部材構成があります。
川裏胸壁であれば、逆T式胸壁、貫通開口、かかと側補強巻立て部、つま先側角落とし、可とう継手位置といった構成があります。
このような構造物について、毎回CAD上で図形を選択し、押し出しやスイープを行うのではなく、寸法条件と設計ルールからスクリプトを生成できれば、CAD操作そのものを大きくショートカットできる可能性があります。
今回の検証は、まさにその可能性を確認するものでした。
通常の3D作成
CAD上で断面やポリラインを作図
↓
押し出し・スイープ等を実行
↓
人が形状を確認しながら3Dモデル化
今回の検証
標準的な構造をテンプレート化
↓
設計条件と寸法をパラメータ化
↓
AIが部材構成・座標ロジックを整理
↓
PythonがV-nasClairスクリプトを生成
↓
CAD操作を最小限にして3Dモデルの初期形状を作成
つまり、今回の取り組みは、通常のCAD操作を否定するものではありません。
むしろ通常操作でできることを前提に、テンプレート化できる構造物について、CAD操作自体をどこまで自動化・省力化できるかを確認する検証です。
3. AIに期待する役割
今回の検証を進める中で、AIの役割も整理できました。
AIにいきなり図面を丸ごと渡して、完全なCIMモデルを作らせることは現実的ではありません。
図面には設計者の前提知識や構造的な意味が多く含まれており、寸法値や線の意味をAIだけで正確に読み切ることには限界があります。
一方で、設計者が構造の意味を説明し、対象範囲を絞り、標準形状をテンプレート化したうえでAIに渡すと、AIは非常に有効に機能します。
AIに向いているのは、次のような作業です。
-
設計者の説明を構造ロジックとして整理する
-
部材構成を分解する
-
座標系を定義する
-
寸法条件をパラメータ化する
-
V-nasClairスクリプトの構成を考える
-
Pythonによる自動生成ロジックを作る
-
エラー原因を推定し、修正案を出す
-
派生形の考え方を整理する
AIに毎回スクリプトを直接書かせるよりも、AIと対話しながらPythonのテンプレート生成器を育てていく方が強いと考えています。
| 担当 | 役割 |
|---|---|
| AI | 設計者の構造理解を整理し、生成ロジックを考える |
| Python | 寸法パラメータから座標を計算し、V-nasClairスクリプトを自動出力する |
| V-nasClair | スクリプトを読み込み、3D形状を確認し、ソリッド化・数量確認を行う |
| i-ConCIM_Kit等 | 属性付与、IFC出力、BIM/CIM成果品化、積算連携へ接続する |
この役割分担により、AIは「CIMモデルを直接作る存在」ではなく、設計者の構造理解をPython生成ロジックへ変換する支援役になります。
4. Pythonテンプレート化の可能性
今回の検証で見えてきた重要な方向性が、Pythonによるテンプレート自動化です。
V-nasClairのスクリプトコマンド説明書には、DRAW_POLYGON、DRAW_COLUMN、DRAW_PRISM、DRAW_TRIANGLEPRISM、DRAW_PLANE2、DRAW_SURFACE などの3D部品系コマンドが整理されています。
これらのコマンドは、人間が手で書くには煩雑ですが、Pythonで座標計算を行い、自動生成する対象としては相性がよい命令列です。
例えば、樋門の川裏胸壁をテンプレート化する場合、次のような部材構成を固定できます。
-
逆T式胸壁本体
-
底版
-
たて壁
-
たて壁の貫通開口
-
かかと側補強巻立て部
-
つま先側角落とし柱
-
50mm×50mm角落とし溝
-
可とう継手または目地位置
-
必要に応じた法面勾配天端
今回の検証では、川裏胸壁を単なる「壁に管が貫通しているモデル」ではなく、逆T式胸壁本体、貫通開口、補強巻立て部、角落とし、可とう継手または目地位置を持つ構造として整理しました。
このように部材構成が整理できれば、Python側では次のような処理が可能になります。
-
管径や函体寸法から開口寸法を計算する
-
胸壁高、底版厚、前趾、後趾を計算する
-
部材ごとの座標点を生成する
-
円形部材を多角形近似する
-
三角形TINへ自動分割する
-
部材ごとにレイヤ名を自動付与する
-
V-nasClairの.scriptファイルを出力する
-
理論体積をCSV等で同時に出力する
ここまでできれば、AIは毎回スクリプト全文を書くのではなく、Pythonテンプレート生成器の設計・修正・派生形対応を支援する役割になります。
その意味で、今回の検証は 「AIにスクリプトを書かせる検証」から、「AIとPythonでスクリプト生成器を作る検証」へ発展できる可能性 を持っています。
5. サーフェスとソリッドの違い
今回の検証で特に重要だったのが、サーフェスとソリッドの違いです。
3D CAD上では、どちらも立体的に表示されます。
そのため、画面上で見ているだけでは同じような3Dモデルに見えることがあります。
しかし、実務で数量計算やBIM/CIM連携を考えると、この違いは非常に重要です。
画面上で3Dに見えるモデル ≠ 体積・重心・数量計算に使えるモデル
サーフェスやポリゴンは、外形や表面形状を確認するには有効です。
一方で、体積や重心を持つ数量対象として扱うためには、閉じた立体であるソリッドとして認識される必要があります。
今回の検証では、スクリプトで作成した3D形状が画面上では正しく見えていても、そのままでは体積を持つソリッド要素として扱えないケースがありました。
そこで、部材ごとに閉じた三角形TINを作成し、V-nasClair上でTINからソリッドへ変換する方法を検証しました。
有効だった流れは次のとおりです。
-
部材ごとに形状を分解する
-
各部材を閉じた三角形TINとして作成する
-
部材ごとにレイヤを分ける
-
V-nasClair上で部材ごとにTIN→ソリッド変換を行う
-
ソリッド要素として体積・重心を確認する
-
モデルツリーや数量計算へ展開する
この流れにより、川裏翼壁では底版、側壁、背面壁、立ち上がり壁を部材ごとにソリッド化し、体積確認まで行うことができました。
円形部材についても同様です。
丸管や円形開口は、矩形部材に比べて座標化や面の閉じ方が難しく、外周面、内周面、端部面をどのように構成するかが課題になります。
しかし、円を多角形近似し、外周面・内周面・端部面を三角形TINとして閉じることで、数量確認につながる道筋が見えてきました。
完全にスクリプトだけで最終ソリッドまで作る段階には課題が残ります。
それでも、スクリプトでソリッド化可能な下地TINを作成し、V-nasClair側でソリッド化するという中間解は、実務上かなり有効だと考えています。
6. CIMとの接続
CIMにおいては、形状だけでは十分ではありません。
部材階層、属性、材質、数量、積算連携、IFC出力などが必要になります。
i-ConCIM_Kitは、i-ConstructionとCIMのデータ交換ツールとして、J-LandXML/IFCファイルの入出力およびIFC属性付与を行うシステムとして説明されています。
また、IFC成果品作成手順書では、構造物モデルへ属性を付与し、階層形式のIFCモデルを作成する流れが説明されています。
IFC成果品作成手順書では、構造物モデルには属性を付与する必要があり、BIM/CIM取扱要領に基づき、階層分けを行って各段階に属性情報を付与することが説明されています。
さらに、作成した階層モデルは論理的なモデルであり、各ノードに図形要素を関連付ける必要があることも示されています。
今回作成した3DモデルはCIMそのものの完成形ではなく、CIMへ接続するための下地モデルと位置づけます。
| 担当 | 接続する工程 |
|---|---|
| V-nasClair | 3D形状、TIN、ソリッド、体積確認、モデルツリー |
| Python | テンプレート化された構造物の座標計算とスクリプト生成 |
| AI | 設計者の構造理解を整理し、Python生成ロジックを支援 |
| i-ConCIM_Kit | 属性付与、IFC出力、BIM/CIM成果品化、積算連携 |
また、BIM/CIM積算との関係では、IFC成果品作成手順書において、3Dモデルに積算連携用の属性を付与し、IFCへエクスポートし、IFC・XML変換ツールでXMLへ変換し、設計数量管理機能で開く流れが示されています。
この流れを考えると、今回の検証は次のように整理できます。
構造整理・コード生成支援 :AI
↓
テンプレート生成 :Python
↓
3D形状・体積 :V-nasClairソリッドモデル
↓
属性・IFC・積算連携 :i-ConCIM_Kit等
AIとCIMを直接つなぐのではなく、V-nasClairスクリプトとPythonを中間に置くことで、実務に近い形でCIMの入口を自動化できる可能性があります。
7. 検証対象としての樋門
今回の題材として扱ったのは、樋門の一部構造です。
川裏翼壁では、U型ます形状を対象に、底版、左右側壁、背面壁、函体側立ち上がり壁へ部材分解しました。
この第1基本形は、川裏側に設けるU型ます形状の翼壁について、AIによる形状理解、部材分解、座標化、V-nasClairスクリプト出力、実機確認までの基本パターンを確立するためのモデルとして整理しています。
さらに、天端勾配や切り欠きを持つ派生形についても検証しました。
単純な直方体だけでなく、法面に合わせた斜め天端や、角落としの50mm×50mm溝を持つ形状も、部材を適切に分割し、TINとして閉じることで作成できる見込みが立ちました。
川裏胸壁では、単なる壁ではなく、逆T式擁壁に近い構造として整理しました。
-
胸壁底版
-
胸壁たて壁
-
前趾、後趾
-
管または函体の貫通開口
-
かかと側補強巻立て部
-
つま先側角落とし柱
-
50mm×50mm角落とし溝
-
可とう継手または目地位置
-
必要に応じた法面勾配天端
この整理により、AIに「壁と管」だけを作らせるのではなく、構造的な意味を持った部材群としてモデル化することが重要であると分かりました。
8. この検証の特徴
今回の取り組みは、単なるAI活用でも、単なるCIM活用でも、単なるCAD自動化でもありません。
一般的には、これらは別々の領域として扱われがちです。
CADに強い人:
手操作・作図効率化・コマンド活用を考える
CIMに強い人:
属性・IFC・成果品・モデル活用を考える
AIに興味がある人:
文章生成・資料整理・コード生成を試す
プログラムに強い人:
PythonやAPIによる自動化を考える
今回の検証は、その境界領域にあります。
土木構造物の設計思想
↓
部材分解 → 座標化
↓
Pythonテンプレート化
↓
V-nasClairスクリプト生成
↓
TIN・サーフェス・ソリッドの検証
↓
体積・数量確認
↓
CIM属性・IFC成果品化への接続
重要なのは、AIにすべてを任せることではありません。
設計者が構造物の意味を理解し、その内容をAIに伝え、AIが座標化やテンプレート生成ロジックの整理を支援し、Pythonがスクリプトを出力し、V-nasClairで実機確認する。
この分担が、実務に近いAI活用だと考えています。
9. 今後の展望
今後の方向性としては、次のような展開が考えられます。
1. 樋門部材ごとのテンプレート化
川裏翼壁、川裏胸壁、函体、川表胸壁、川表翼壁などを順にテンプレート化する。
2. Python生成器の整備
寸法条件を入力すると、部材別TINモデルのV-nasClairスクリプトを自動出力する仕組みを作る。
3. 円形部材への対応
丸管、円形開口、補強巻立て部などを多角形近似とTINで安定して表現する。
4. 数量確認との接続
部材別ソリッド化、体積確認、モデルツリー登録、数量計算へつなげる。
5. 属性・IFCとの接続
i-ConCIM_Kit等を用いて、部材属性、材質、外部参照、BIM/CIM積算連携属性へ展開する。
6. AIとの対話による派生形対応
標準形から、切り欠き、法面勾配、流入水路、ウィング形状などへ展開する。
この流れが確立できれば、テンプレート化できる土木構造物については、CAD操作の一部をスクリプト生成に置き換え、CIMモデル作成の初期作業を大きく省力化できる可能性があります。
10. まとめ
今回の検証で見えてきたのは、AIにCIMモデルを直接作らせるという方向ではありません。
より現実的なのは、次の流れです。
設計者が構造を理解する
↓
AIが部材分解と座標ロジックを整理する
↓
Pythonがテンプレート生成器としてスクリプトを出力する
↓
V-nasClairが3D形状化・ソリッド化・数量確認を担う
↓
i-ConCIM_Kit等が属性付与・IFC・CIM成果品化へつなぐ
今回の取り組みを一文で表すなら、次のようになります。
テンプレート化できる土木構造物について、AIが設計者の構造理解をPython生成ロジックへ変換し、そのPythonがV-nasClairスクリプトを出力することで、CIMモデル作成の入口を自動化できるかを検証しました。
または、さらに短く言えば、
V-nasClairスクリプトを媒介として、AIとCIMを接続する可能性を検証した。
3Dモデル作成、数量確認、属性付与、IFC成果品化。
これらを一気に自動化することは簡単ではありません。
しかし、標準化・テンプレート化できる部分を見極め、AI、Python、V-nasClairスクリプト、CIMツールの役割を分けることで、実務に近い形でAIを建設コンサルタント業務へ組み込む道筋が見えてきました。
今回の検証は、完成されたシステムの紹介ではありません。
実務者が実際の構造物を題材に、AIとCADとCIMの境界を探った技術検証です。
だからこそ、AI活用の可能性だけでなく、限界や注意点も含めて、今後の実務改善につながる知見が得られたと考えています。