このプロジェクトについて
vCADは、「カーネルファースト」アーキテクチャで設計されたオープンソースのクロスプラットフォームなパラメトリックコンピュータ支援設計(CAD)アプリケーションです。このプロジェクトは、Windows、macOS、Linux向けのフル機能デスクトップアプリケーションや、3Dプリンティングに特化したiPadOS向けクライアントなど、複数のフロントエンドを支える堅牢なコアを提供することを目指しています。
このソフトウェアは、幾何カーネルにOpenCASCADE Technology(OCCT)を活用し、レンダリングにはbgfxを使用しています。デスクトップ版のユーザーインターフェースはQt 6.8 LTSで構築されています。主要なアーキテクチャ上の特徴は、ビルドスクリプトによって強制される厳格なレイヤリングシステムであり、コアカーネルがQtやSwiftUIなどのUIフレームワークから独立していることを保証します。この設計により、同じコアを互換性の問題なく異なるプラットフォーム向けにコンパイルできます。
主な機能は次のとおりです。
- **パラメトリックモデリング**:スケッチ、フィーチャー、パラメトリック拘束をサポートします。
- **トポロジカルネーミング**:編集時のモデル整合性を維持するための高度なトポロジカルネーミング戦略を実装しています。
- **ドキュメント管理**:自由なアンドゥ/リドゥ履歴と再計算エンジンを備えた永続的なドキュメント構造を特徴とします。
- **データキャッシュ**:効率的なデータ管理のために、assetlibのDocument Data Cache(DDC)上に2層キャッシュを利用します。
- **ファイル交換**:STEP、IGES、STLを含む業界標準フォーマットをサポートします。
- **拡張性**:スクリプティングとプラグイン開発のための安定したC Application Binary Interface(ABI)とPythonバインディングを提供します。
このプロジェクトは現在活発に開発されており、マイルストーンM1(カーネルラッパーとトポロジカルネーミング)およびM2(ドキュメント管理、DDC、ファイルI/O)は完了済みとされています。レンダラーとQtシェルに焦点を当てたマイルストーンM3は進行中です。コードベースには、C++単体テスト、C ABIを介したRust受け入れテスト、Pythonバインディングテストを含む5段階の包括的なテストが含まれています。
vCADのビルドには、CMake 3.24以上、依存関係のためのvcpkgチェックアウト、そしてオプションでPythonバインディング用のpybind11が必要です。このプロジェクトは、異なるオペレーティングシステム間での安定性を確保するために、厳格な依存関係管理とバージョンピン留めを重視しています。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.