Fork of HakanSeven12/OpenCADStudio (GPL-3.0), patched for embedded job-scoped load/save integration with the CMMS.
- Rust 71.9%
- Fluent 26.7%
- WGSL 0.7%
- Max 0.3%
- HTML 0.1%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
orbit_active_viewport was writing cam.rotation*Z directly to view_direction, but yaw_pitch_to_quat(y,p)*Z has its Y component negated relative to the snap convention: (cos(p)*sin(y), -cos(p)*cos(y), sin(p)) vs (cos(p)*sin(y), +cos(p)*cos(y), sin(p)). This caused camera_for_viewport to reconstruct yaw = π - original_yaw, making every orbit appear reversed. Fix: negate Y when writing view_direction back. pan_active_viewport was using the paper-space camera to convert screen pixels to model-space delta. This gives wrong pan axes for tilted MSPACE views (e.g. front/side views where cam_up is Z, not Y). Fix: use camera_for_viewport so the pan axes match the 3-D view orientation, and update all three view_target components (X/Y/Z) for tilted views. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> |
||
| .github | ||
| assets | ||
| flatpak | ||
| src | ||
| .gitignore | ||
| build.rs | ||
| Cargo.lock | ||
| Cargo.toml | ||
| COMMANDS.md | ||
| LICENSE | ||
| README.md | ||
| ROADMAP.md | ||
H7CAD
A CAD application for 2D/3D drawing and design, built with Rust.
Features
- 2D drafting and 3D modeling
- DXF file import/export
- GPU-accelerated rendering via WebGPU
- Snap and annotation tools
- Modular ribbon interface (Home, Annotate, Insert, View, Manage)
Installation
Flatpak (Linux)
Download H7CAD.flatpak from the latest release, then:
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak install H7CAD.flatpak
flatpak run io.github.HakanSeven12.H7CAD
Build from Source
Requirements: Rust 1.75+
git clone https://github.com/HakanSeven12/H7CAD.git
cd H7CAD
cargo build --release
./target/release/H7CAD
License
GPL-3.0-only — see LICENSE