 tannerandaider
|
6d92349938
|
fix: Update Open CASCADE point conversion API in ApplicationController
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-03-03 16:33:21 -07:00 |
|
 tannerandaider
|
aa8127c5f8
|
fix: Update OpenCASCADE 2D/3D point conversion API in Snapping
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-03-03 16:31:33 -07:00 |
|
 tannerandaider
|
b75e355698
|
fix: Update OpenCASCADE API usage for 2D/3D geometry conversion
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-03-03 16:30:13 -07:00 |
|
 tannerandaider
|
4cebb8d552
|
fix: Adapt RectangleTool to updated Open CASCADE ElCLib API
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-03-03 16:25:59 -07:00 |
|
 tannerandaider
|
d7e9d784cc
|
fix: Correct ElCLib 2D/3D conversion function calls
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-03-03 16:22:31 -07:00 |
|
 tannerandaider
|
f942a424f3
|
fix: Correct ElCLib point conversion function names
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-03-03 16:20:07 -07:00 |
|
 tannerandaider
|
e37959ca89
|
refactor: Eliminate SketchPlane enum, use gp_Ax2 for all plane operations
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-03-03 16:18:36 -07:00 |
|
 tannerandaider
|
64ff7396c2
|
refactor: Use gp_Ax2 for camera plane orientation
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-03-03 16:09:38 -07:00 |
|
 tannerandaider
|
79c78f0601
|
refactor: Refactor LineTool to use gp_Ax2 for sketch plane operations
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-03-03 16:07:13 -07:00 |
|
 tannerandaider
|
96371b0aa6
|
refactor: Use gp_Ax2 for geometric calculations in RectangleTool
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-03-03 16:02:18 -07:00 |
|
 tannerandaider
|
e363595eb5
|
refactor: Use gp_Ax2 for all sketch plane calculations in CircleTool
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-03-03 15:58:17 -07:00 |
|
 tannerandaider
|
228540e095
|
refactor: Use gp_Ax2 for plane-agnostic snapping calculations and rendering
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-03-03 15:54:29 -07:00 |
|
 tannerandaider
|
e960c30b48
|
refactor: Use gp_Ax2 to define and draw SketchGrid planes
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-03-03 15:51:43 -07:00 |
|
 tannerandaider
|
0469853a2c
|
refactor: Adopt gp_Ax2 for sketch plane and geometry definition
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-03-03 15:46:26 -07:00 |
|
 tannerandaider
|
577fb5f846
|
refactor: Use gp_Ax2 for sketch plane definition and drawing
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-03-03 15:44:13 -07:00 |
|
 tannerandaider
|
08904feb1e
|
fix: Resolve type mismatch when adding wire to sketch
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-03-03 15:31:45 -07:00 |
|
 tannerandaider
|
125e97df50
|
feat: Create Open CASCADE shapes for sketch geometry
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-03-03 15:30:01 -07:00 |
|
tanner
|
f9cac02e06
|
Add file headers
|
2026-02-20 09:28:23 -07:00 |
|
tanner
|
05d35bbd86
|
Add GPLv3 license
|
2026-02-20 09:28:11 -07:00 |
|
 tannerandaider
|
2fb602c238
|
fix: Correct 2D axis label Y-position and set color to white
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-18 17:47:08 -07:00 |
|
 tannerandaider
|
48b547f4da
|
feat: Add X, Y, Z labels to ViewCube axes
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-18 17:44:09 -07:00 |
|
 tannerandaider
|
c0cb427cf1
|
Fix: Apply consistent Z-up to Y-up transformations for camera
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-18 17:11:21 -07:00 |
|
 tannerandaider
|
380c333002
|
fix: Align YZ plane angle reference to positive Y-axis
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-18 17:04:37 -07:00 |
|
 tannerandaider
|
d3f0216053
|
fix: Correct XY/XZ plane snapping and snap indicator drawing
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-18 16:59:35 -07:00 |
|
 tannerandaider
|
8ccc5e48e9
|
fix: Correct Z-up plane mapping for drawing tools on XY and XZ planes
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-18 16:56:23 -07:00 |
|
 tannerandaider
|
2f9e3fdbd6
|
refactor: Adjust XY and YZ selection plane positions and hit areas
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-18 16:47:16 -07:00 |
|
 tannerandaider
|
d0e85129bf
|
fix: Correct XY and XZ plane geometry and hit-testing
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-18 15:57:01 -07:00 |
|
 tannerandaider
|
471e7f2d9c
|
fix: Align sketch grid with Z-up coordinate system
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-18 15:48:56 -07:00 |
|
 tannerandaider
|
1436d30963
|
feat: Implement Z-up coordinate system for camera and sketches
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-18 15:45:57 -07:00 |
|
 tannerandaider
|
3506696624
|
feat: Display camera info in debug window
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-18 14:58:37 -07:00 |
|
 tannerandaider
|
45a00b845b
|
feat: Add debug window; accessible via Help menu and DEBUG env var
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-18 14:54:57 -07:00 |
|
 tannerandaider
|
2b9b54d5a5
|
build: Auto-generate resources.qrc from icons and shaders
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-18 13:07:49 -07:00 |
|
 tannerandaider
|
2333a7cdb5
|
fix: Emulate middle click with left + right mouse button for camera controls
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 17:29:58 -07:00 |
|
tanner
|
8a75dab453
|
Add README with build instructions
|
2026-02-17 17:28:32 -07:00 |
|
 tannerandaider
|
6396e49f9b
|
refactor: Revert home button color inversion logic
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 17:28:25 -07:00 |
|
tanner
|
22efad4684
|
style: Adjust ViewCube home button position
|
2026-02-17 17:28:25 -07:00 |
|
 tannerandaider
|
d40ae7e670
|
refactor: DRY home button rect calculation in ViewCube
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 17:28:25 -07:00 |
|
 tannerandaider
|
2fb73d91ef
|
feat: Invert home button icon color to white
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 17:28:25 -07:00 |
|
tanner
|
a6d46a8280
|
refactor: Update ViewCube home button icon and position
|
2026-02-17 17:28:12 -07:00 |
|
 tannerandaider
|
c28c080009
|
feat: Add animated home button to view cube to reset camera
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 16:56:25 -07:00 |
|
tanner
|
405e151f12
|
style: Increase default view cube opacity
|
2026-02-17 16:56:22 -07:00 |
|
 tannerandaider
|
5e20822df4
|
feat: Add translucent view cube with hover opacity effect
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 16:49:49 -07:00 |
|
 tannerandaider
|
34ecee0fa2
|
fix: Scale view cube size by device pixel ratio
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 16:44:54 -07:00 |
|
 tannerandaider
|
7010d221d0
|
fix: Correct OpenGL viewport scaling on high-DPI displays
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 16:42:01 -07:00 |
|
 tannerandaider
|
d43b49a12f
|
fix: Reset dimension properties when defining new circle
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 15:42:19 -07:00 |
|
 tannerandaider
|
2407957fb6
|
fix: Clear CircleTool dimension properties on activation
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 15:35:11 -07:00 |
|
 tannerandaider
|
8a90b17b1f
|
fix: Adjust v-axis for XY and XZ sketch planes to match preview
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 15:30:56 -07:00 |
|
 tannerandaider
|
e8aef2427b
|
fix: Correct CircleTool XY/XZ plane drawing logic
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 15:27:04 -07:00 |
|
 tannerandaider
|
2ab4bbf805
|
fix: Calculate circle radius from point distance
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 15:20:17 -07:00 |
|
 tannerandaider
|
7f6c01c8a0
|
feat: Implement circle drawing tool
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 15:15:24 -07:00 |
|
 tannerandaider
|
4b0a903052
|
feat: Implement CircleTool with diameter input and preview
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 15:08:57 -07:00 |
|
tanner
|
37399bd7c1
|
feat: Add CircleTool
|
2026-02-17 15:08:55 -07:00 |
|
 tannerandaider
|
9d9c658cda
|
fix: Correct QString to const char* for Qt property methods
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 15:00:08 -07:00 |
|
 tannerandaider
|
e1327b2caa
|
Refactor: Abstract dimension input and finalize creation logic to SketchTool
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 14:58:02 -07:00 |
|
 tannerandaider
|
d66f7aaf56
|
fix: Calculate shortest path for camera rotations
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 14:47:56 -07:00 |
|
 tannerandaider
|
64b48c7ed1
|
feat: Add limits for camera and pivot point distances
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 14:41:55 -07:00 |
|
 tannerandaider
|
7ce318b402
|
fix: Restore camera rotation and stabilize UI element scaling
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 13:58:58 -07:00 |
|
 tannerandaider
|
08820659d4
|
fix: Fix erratic camera distance during rotation
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 13:14:24 -07:00 |
|
 tannerandaider
|
94304bd2e3
|
feat: Add mouseReleaseEvent declaration
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 13:07:38 -07:00 |
|
 tannerandaider
|
88199a9d51
|
feat: Implement middle-mouse rotation around grid intersection with visual pivot
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 13:04:33 -07:00 |
|
tanner
|
68eeeb11ec
|
fix: Adjust camera distance text position in viewport
|
2026-02-17 13:04:30 -07:00 |
|
 tannerandaider
|
e00af9a8e3
|
feat: Scale axis length with grid size
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 12:53:16 -07:00 |
|
tanner
|
ef55eac997
|
feat: Adjust grid scaling thresholds and parameters
|
2026-02-17 12:53:14 -07:00 |
|
 tannerandaider
|
483b673229
|
feat: Display camera zoom level in viewport
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 12:39:24 -07:00 |
|
 tannerandaider
|
e8afc0a4b4
|
fix: Correct dynamic grid scaling based on camera distance
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 12:34:54 -07:00 |
|
 tannerandaider
|
1779725d53
|
feat: Implement dynamic sketch grid based on camera zoom
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 12:32:02 -07:00 |
|
tanner
|
b056ccbfec
|
style: Refine sketch grid line appearance
|
2026-02-17 12:31:59 -07:00 |
|
 tannerandaider
|
3a7cd78fb2
|
style: Lighten major grid lines and rename line vectors
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 12:25:08 -07:00 |
|
 tannerandaider
|
d274b4f59f
|
refactor: Move axis label drawing logic from ViewportWidget to SketchGrid
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 12:19:46 -07:00 |
|
 tannerandaider
|
a0dbc537cf
|
fix: Increase far clip plane for greater draw distance
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 12:19:46 -07:00 |
|
 tannerandaider
|
ddf6f6fd85
|
feat: Implement pixel-perfect camera panning
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 12:19:39 -07:00 |
|
 tannerandaider
|
f3a1f73f45
|
fix: Scale pan speed with zoom level for consistent movement
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 11:53:07 -07:00 |
|
 tannerandaider
|
3bb8d65fd4
|
feat: Adjust zoom speed based on distance for consistent feel
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 11:48:29 -07:00 |
|
 tannerandaider
|
6721caca9f
|
fix: Update Qt API usage for QWheelEvent and QMatrix4x4
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 11:37:42 -07:00 |
|
 tannerandaider
|
38e931bc79
|
feat: Implement mouse wheel zoom to cursor position
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 11:36:44 -07:00 |
|
 tannerandaider
|
a66dc50daf
|
refactor: Move camera mouse event handling to Camera class
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 11:34:25 -07:00 |
|
 tannerandaider
|
2e2f99f2c2
|
refactor: Move camera restore state animation to Camera
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 11:27:36 -07:00 |
|
 tannerandaider
|
f29f40277d
|
refactor: Move sketch mode camera animations to Camera class
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 11:26:41 -07:00 |
|
 tannerandaider
|
a5e8257eb4
|
build: Automate source file discovery for C++ sources in src/
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 11:22:08 -07:00 |
|
tanner
|
ec63a23247
|
feat: Add sketch, line, rectangle tools and snapping
|
2026-02-17 11:22:07 -07:00 |
|
 tannerandaider
|
d708ab9827
|
refactor: Extract snapping logic into dedicated Snapping class
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 11:19:29 -07:00 |
|
tanner
|
e86a775b46
|
feat: Add snapping functionality
|
2026-02-17 11:19:27 -07:00 |
|
 tannerandaider
|
9334508b67
|
fix: Ensure viewport updates and consistent key handling in drawing tools
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 11:09:42 -07:00 |
|
 tannerandaider
|
b93f6158ef
|
fix: Enable line tool functionality
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 11:02:54 -07:00 |
|
 tannerandaider
|
35cad74367
|
fix: Move line tool specific logic from ViewportWidget to LineTool
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 10:57:02 -07:00 |
|
 tannerandaider
|
2394727724
|
refactor: Move rectangle tool logic to RectangleTool class
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 10:53:02 -07:00 |
|
 tannerandaider
|
95a651b6b0
|
refactor: Move LineTool event handling to LineTool and add tool APIs
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 10:44:56 -07:00 |
|
 tannerandaider
|
d015d171ec
|
refactor: Move LineTool paintGL and paint2D logic to LineTool
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 10:38:51 -07:00 |
|
tanner
|
1584bfd5a0
|
fix: Deactivate active tool on Escape key press
|
2026-02-17 10:38:47 -07:00 |
|
 tannerandaider
|
3e2f464de9
|
refactor: Introduce SketchTool base class and derived tool skeletons
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 10:18:36 -07:00 |
|
 tannerandaider
|
e64755ea0c
|
feat: Make rectangle corners snappable
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 10:01:00 -07:00 |
|
 tannerandaider
|
b144efbe05
|
feat: Allow editable rectangle dimensions and fix Tab crash
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 09:57:36 -07:00 |
|
 tannerandaider
|
966ab037b5
|
fix: Connect rectangleAdded signal to ApplicationController
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 09:52:11 -07:00 |
|
 tannerandaider
|
246372b847
|
refactor: Implement Rectangle tool with snapping and dimensions
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-16 20:45:39 -07:00 |
|
 tannerandaider
|
2b455f57d4
|
fix: Set YZ plane line angle reference to horizontal
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-16 20:37:08 -07:00 |
|
 tannerandaider
|
ed88730edb
|
fix: Correctly place dimension labels based on angle difference
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-16 20:32:23 -07:00 |
|
 tannerandaider
|
7f304bf1f3
|
fix: Position linear dimension opposite angle to avoid overlap
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-16 20:28:17 -07:00 |
|
 tannerandaider
|
f5c7f6d326
|
fix: Normalize angle for dimension text to align with arc
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-16 20:23:39 -07:00 |
|
 tannerandaider
|
c43330fe5e
|
fix: Adjust chained line angle ref dir for free drawing
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-16 20:13:21 -07:00 |
|
 tannerandaider
|
9cacbf4e0e
|
fix: Correctly position angle dimension text in all quadrants
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-16 19:53:48 -07:00 |
|