Sobre el proyecto
vCAD es una aplicación de Diseño Asistido por Computadora (CAD) paramétrico, multiplataforma y de código abierto, diseñada con una arquitectura "kernel-first". El proyecto tiene como objetivo proporcionar un núcleo robusto que pueda soportar múltiples frontends, incluida una aplicación de escritorio completa para Windows, macOS y Linux, así como un cliente especializado para iPadOS centrado en la impresión 3D.
El software utiliza OpenCASCADE Technology (OCCT) para su kernel geométrico y emplea bgfx para el renderizado. La interfaz de usuario de la versión de escritorio está construida con Qt 6.8 LTS. Una característica arquitectónica clave es el estricto sistema de capas impuesto por los scripts de compilación, que garantiza que el kernel central permanezca independiente de frameworks de UI como Qt o SwiftUI. Este diseño permite compilar el mismo núcleo para diferentes plataformas sin problemas de compatibilidad.
Las capacidades clave incluyen:
- **Modelado paramétrico**: Admite bocetos, operaciones y restricciones paramétricas.
- **Nombres topológicos**: Implementa estrategias avanzadas de nombres topológicos para mantener la integridad del modelo durante las ediciones.
- **Gestión de documentos**: Cuenta con una estructura de documento persistente con historial de deshacer/rehacer gratuito y un motor de recálculo.
- **Caché de datos**: Utiliza una caché de dos niveles sobre el Document Data Cache (DDC) de assetlib para una gestión eficiente de datos.
- **Intercambio de archivos**: Admite formatos estándar de la industria, incluidos STEP, IGES y STL.
- **Extensibilidad**: Proporciona una Interfaz Binaria de Aplicación (ABI) de C estable y enlaces de Python para scripting y desarrollo de plugins.
El proyecto se encuentra actualmente en desarrollo activo, con los hitos M1 (wrapper del kernel y nombres topológicos) y M2 (gestión de documentos, DDC y E/S de archivos) marcados como completados. El hito M3, centrado en el renderizador y el shell de Qt, está en progreso. La base de código incluye pruebas exhaustivas en cinco niveles, incluidas pruebas unitarias de C++, pruebas de aceptación de Rust a través de la ABI de C y pruebas de enlaces de Python.
La compilación de vCAD requiere CMake 3.24+, una copia de vcpkg para las dependencias y, opcionalmente, pybind11 para los enlaces de Python. El proyecto enfatiza una gestión rigurosa de dependencias y la fijación de versiones para garantizar la estabilidad en diferentes sistemas operativos.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.