À propos du projet
vCAD est une application de conception assistée par ordinateur (CAO) paramétrique, open source et multiplateforme, conçue selon une architecture « kernel-first ». Le projet vise à fournir un noyau robuste pouvant prendre en charge plusieurs interfaces, notamment une application de bureau complète pour Windows, macOS et Linux, ainsi qu'un client spécialisé pour iPadOS dédié à l'impression 3D.
Le logiciel s'appuie sur OpenCASCADE Technology (OCCT) pour son noyau géométrique et utilise bgfx pour le rendu. L'interface utilisateur de la version bureau est construite avec Qt 6.8 LTS. Une caractéristique architecturale clé est le système de couches strict imposé par les scripts de build, garantissant que le noyau reste indépendant des frameworks d'interface comme Qt ou SwiftUI. Cette conception permet de compiler le même noyau pour différentes plateformes sans problèmes de compatibilité.
Les capacités principales incluent :
- **Modélisation paramétrique** : prise en charge de l'esquisse, des fonctions et des contraintes paramétriques.
- **Dénomination topologique** : mise en œuvre de stratégies avancées de dénomination topologique pour préserver l'intégrité du modèle lors des modifications.
- **Gestion de documents** : structure de document persistante avec historique d'annulation/rétablissement gratuit et moteur de recalcul.
- **Cache de données** : utilisation d'un cache à deux niveaux au-dessus du Document Data Cache (DDC) d'assetlib pour une gestion efficace des données.
- **Échange de fichiers** : prise en charge des formats standards de l'industrie, notamment STEP, IGES et STL.
- **Extensibilité** : fourniture d'une interface binaire applicative (ABI) C stable et de liaisons Python pour le scripting et le développement de plugins.
Le projet est actuellement en développement actif, les jalons M1 (enveloppe du noyau et dénomination topologique) et M2 (gestion de documents, DDC et E/S de fichiers) étant marqués comme terminés. Le jalon M3, axé sur le moteur de rendu et l'enveloppe Qt, est en cours. La base de code comprend des tests complets répartis sur cinq niveaux, notamment des tests unitaires C++, des tests d'acceptation Rust via l'ABI C et des tests de liaisons Python.
La compilation de vCAD nécessite CMake 3.24+, un checkout vcpkg pour les dépendances, et éventuellement pybind11 pour les liaisons Python. Le projet met l'accent sur une gestion rigoureuse des dépendances et un verrouillage des versions pour garantir la stabilité sur différents systèmes d'exploitation.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.