Skip to content
View hananiahhsu's full-sized avatar
🎯
Focusing
🎯
Focusing

Organizations

@OpenHubs @AliClouds @Open3DSearchEngine @Ludwigstrasse

Block or report hananiahhsu

Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
hananiahhsu/README.md

English | 中文 | 日本語 | Français | Deutsch | Español | Русский

SolidDesigner

A desktop parametric CAD platform focused on history-based solid modeling, extensible workbenches, and a commercial-grade architecture — powered by OpenCascade (OCCT).

Repo Issues Discussions

C++ CMake Qt OpenCascade

What it is

SolidDesigner is my long-term product line for building a next-generation CAD platform:

  • History-based modeling with a feature tree and deterministic regeneration
  • Workbenches (Part / Assembly / Sketch / Drawing / Simulation / BIM extensions) with a Ribbon-first UX
  • A clean separation of Model / Representation / Display / Render / UI layers to keep the system scalable

If you are looking for a practical, “industrial software” approach to a large CAD codebase (not a toy demo), this is the project.

Key capabilities (high level)

  • Parametric feature modeling: sketch → feature creation → edit/redefine → regen
  • Geometry kernel integration: OCCT B-Rep workflows (TopoDS / BRepBuilderAPI / Boolean / fillet, etc.)
  • Professional UI framework: workbench switching, Ribbon, dockable panels, multi-document/MDI layout
  • Document & persistence: container-based document architecture (e.g., .alice), versioning/upgrade pipeline concepts
  • Extensibility: interface-driven modules, plugin-ready runtime services

Exact feature coverage evolves quickly — please treat the SolidDesigner repo as the source of truth.

Start here

SolidDesigner preview

Architecture at a glance

SolidDesigner follows a layered architecture designed for large-scale evolution:

  • Core/Foundation: utilities, math/algorithms, plugin/event systems
  • Geometry: kernel interfaces + OCCT backend (and future alternatives)
  • Data/Model: document, object store, feature definitions, regen services
  • Representation/Display/Render: rep graph → display packages → render backends
  • UI: Qt/ADS-based docking, Ribbon, workbench lifecycle, command routing

This structure is intentionally similar to how mature CAD systems scale (Creo/NX/SolidWorks-class patterns), while still being pragmatic for an open codebase.


Roadmap direction (public)

  • Feature system maturity: stronger schemas, robust redefine, history edits, regen trace
  • TopoNaming/selection stability: stable references across feature edits
  • Assemblies: constraints/mates, large-assembly performance, lightweight reps
  • Drawings: view generation, hidden line removal, dimensions/annotations
  • Interoperability: STEP/IGES/STL pipelines (as features stabilize)
  • CAE/CAM hooks: mesh/analysis views and manufacturing-oriented workflows

Get involved

If you’re building CAD/CAE/BIM infrastructure and want to collaborate (architecture, kernel integration, UI systems, storage/versioning), open an issue or start a discussion.


Developer stats (optional)

GitHub Metrics

Contribution Graph


Notes

  • The English README is the canonical reference. Translations may lag behind.
  • This profile page is a product overview; detailed build instructions live in the SolidDesigner repository.

Pinned Loading

  1. Ludwigstrasse/SolidDesigner Ludwigstrasse/SolidDesigner Public

    CAD,CAE,TOPO

    C++ 14 13

  2. Ludwigstrasse/Skylark Ludwigstrasse/Skylark Public

    3D Visualization Tool

    3

  3. Ludwigstrasse/OpenCAD Ludwigstrasse/OpenCAD Public

    The open project aims to realize the function of all 2D & 3D application for industry area;

    C++ 20 14

  4. SmartMachines/OpenCAM SmartMachines/OpenCAM Public

    The OpenCAM aims at integrating the Design and production together,which combines CAD and CNC to seamlessly connect the whole procedure.

    C++ 15 7