Interactive CAD Applications
Interactive CAD on Top of ClassCAD
ClassCAD is often perceived as a non-interactive, backend-oriented CAD system.
While this is true by design, it does not mean that ClassCAD cannot power interactive CAD applications.
Instead, ClassCAD deliberately separates interaction from CAD execution.
Separation of Responsibilities
In an interactive ClassCAD-based system, responsibilities are clearly split:
-
Client Application
- Handles user interaction
- Manages UI state
- Translates user actions into API calls
-
ClassCAD
- Executes CAD logic deterministically
- Maintains the CAD model state
- Guarantees consistency and reproducibility
This separation allows interactive experiences without compromising automation, stability, or scalability.
Interaction Through APIs
Interactive behavior is implemented by repeatedly calling ClassCAD APIs:
- A user performs an action (e.g. create feature, modify parameter)
- The client application issues an API request
- ClassCAD updates the CAD model
- The updated model state is returned
- The client refreshes its visualization
From ClassCAD’s perspective, there is no difference between:
- an automated workflow
- a scripted pipeline
- an interactive UI-driven session
All interactions are API-driven.
Example: buerligons
buerligons is an interactive, web-based CAD application developed by AWV Informatik AG.
It demonstrates that:
- Interactive CAD editors can be built on top of ClassCAD
- No internal or privileged APIs are required
- The same API wrappers are used as by any other client
- ClassCAD remains fully headless and backend-focused
buerligons is not part of ClassCAD itself.
It is an independent client application that validates the architectural approach in a real-world scenario.
Why This Matters
This architecture enables:
- Web-based CAD editors
- Domain-specific CAD tools
- Highly customized user experiences
- Interactive configuration and modeling systems
without turning the CAD engine itself into an interactive application.
Summary
ClassCAD does not compete with traditional interactive CAD tools.
Instead, it enables interactive CAD applications to be built in a controlled, API-driven way.
Interactivity lives in the client.
CAD logic lives in ClassCAD.