>_ DevTrendsja

言語

ホーム

言語

セクション

フロントエンド バックエンド モバイル DevOps AI / ML ゲーム開発 ブロックチェーン 組み込み セキュリティ
HTML

RevitモデルやDWG図面をブラウザで開き、専用ソフトなしで即座に見積もりを取得する方法

建設ソフトウェアは特殊な構造をしています。ユーザーあたり月額数百ドルもするAutodeskソリューションのような重厚な企業向けエコシステムから、2000年代初頭のインターフェースを持つ古いローカル見積プログラムまで、両極端が存在します。3Dモデル、図面、見積りを1つのシステムで組み合わせる必要がある場合、それまでは選択肢が非常に限られていました。

最近、OpenConstructionERPのリポジトリを探索していました。これはDWG図面や3D RevitまたはIFCモデルを取り込み、要素の物理パラメータを自動的に抽出して、数量表を生成するオープンソースのWebプラットフォームです。これらすべてがAGPL-3.0ライセンスのデスクトップアプリケーションまたはWebサービスとしてパッケージ化されています。

OpenConstructionERPインターフェース概要

このプロジェクトについて

OpenConstructionERPは、建設会社向けのモジュール式基盤として構想されました。作成者はこれをWordPressと比較し、ブログやオンラインストアではなく、建設アプリケーションを構築する場として位置づけています。

約160のモジュールが組み込まれています。各スペシャリストは独自のツールセットを取得します:積算者は単価と分類器を操作し、現場技術者は作業ログと欠陥記録を維持し、管理者は予算分析を確認します。

このプラットフォームは異なる国の見積基準に対応できます。DIN 276、NRM、MasterFormat、Domestic GESN、F ERがリストに含まれています。データベースには12万以上の готовых pricing itemsが組み込まれています。

実践における主な機能

最も興味深い部分は、システムがグラフィックファイルを金額や作業スケジュールに結びつける仕組みを見ることです。

CADとBIMからの自動数量拾い出し

通常、見積りをモデルに紐付けるにはRevitや専用ソフトウェアのインストールが必要です。ここでは、開発者は独自のDDC cad2data converterを使用しました。RVT、IFC、DWG、またはDGN形式のファイルをアップロードすると、Pythonバックエンドがそれを解析して要素に変換し、unified JSONに変換します。

ブラウザでは視覚的に表示されます:3Dビューアで壁をクリックするか、2D図面でポリラインをクリックすると、計算された面積または体積がすぐに適切な見積項目に追加されます。

BIM要素のグループバインディングと見積りの関連付け

数量表エディターと単価バインディング

見積エディターはキーボード中心の作業を考慮して設計されています。テーブルはAG Gridに基づいて構築されているため、1つのセルまたはマークアップを変更すると、階層全体が即座に再計算されます。

システムは42の検証ルールに従って数量表の品質を評価します。未入力の単価、空欄の単位、または重複した項目が見つかった場合は警告が表示されます。

数量表エディター

ニューラルネットワークの導入

開発者はゼロからAIを再発明しませんでした。代わりに、Claude、OpenAI、Gemini、DeepSeekなど、任意の プロバイダーをAPI経由で接続するためのレイヤーを作成しました。

モデルは2つのタスクに使用されます:

  • 単価データベースの検索。「コンクリート壁」などのクエリで、カタログ内の鉄筋間仕切りC30/37を見つけ出し、文字の照合だけでなく意味を理解します。
  • 建設現場の写真または仕様テキストからの見積書の草案。

現場写真からの見積書

インタラクティブグローブと現場管理

プロジェクトは実際の測量座標に紐付けできます。Cesiumベースの組み込み3D globusを通じて、现场平面図にはすべての建物、住戸販売状況、観察カード、安全インシデントが表示されます。

3Dプロジェクトグローブ

内部的动作

システムアーキテクチャは、古典的なPythonスタックと modern frontendを組み合わせています。

アーキテクチャとデータパイプラインの図

  • バックエンド:Python 3.12上のFastAPI。モジュールは起動時に自動的にロードされます。
  • フロントエンド:React 18、TypeScript、Vite、Tailwind CSS。インターフェースは29言語に翻訳されています。
  • データベース:PostgreSQL 16。ローカル実行時、システムは отдельных servicesを設定せずに自動的に埋め込みデータベースを起動します。
  • 検索:LanceDBベクトルデータベースで、セマンティック埋め込みベースの単価一致検索を行います。

ローカルマシンでのプロジェクトのデプロイは、ターミナルで文字通り1行で実行できます:

このコマンドは、FastAPIサーバーとバンドルされたReactフロントエンドの両方を含む単一パッケージをダウンロードします。起動後、準備ができたアプリケーションはブラウザで localhost:8080 に開きます。

ソースコードを詳しく知りたい人のために、熟悉されたワークフローがあります:

プラットフォームは、Excelスプレッドシートの分散や高額なサブスクリプションから脱却する必要がある場面で活用できます。

まず、内部の建設プロジェクト管理ポータルを自社管理下に展開したい開発者や元請業者にとって優れた出発点となります。

次に、建設向けソフトウェアを構築する開発チームにも役立ちます。BIMパーサー、図面ビューア、計算テーブルをゼロから書く代わりに、OpenConstructionERPを基盤として必要なモジュールを上に書くことができます。

コントリビューションのニュアンスに注意してください。セキュリティ上の理由から、リポジトリの作成者は外部からのpull requestを直接マージしません。バグを見つけた場合または機能を提案した場合、作成者は自分の環境で実装を書き直します。コードはAGPL-3.0で完全にオープンであり、商用ライセンスは別途販売されています。

OpenConstructionERPは成熟したエンジニアリングツールという印象を与えます。このプロジェクトは、設計者、積算者、施工現場間のデータ分断という業界の実質的な課題を解決しています。 pip による素早い起動と外国のクラウドへの依存がないため、検討に値する候補です。

関連プロジェクト