 tannerandaider
|
fa6e4662a6
|
fix: Generate faces for sketch objects and fix tool preview state
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-18 12:11:06 -07:00 |
|
 tannerandaider
|
a7ad78e103
|
fix: Correct coordinate system for sketch plane geometry and rendering
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-18 12:11:06 -07:00 |
|
 tannerandaider
|
0798cd2a6c
|
fix: Correct sketch face rendering, orientation, and complex wire generation
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-18 12:11:06 -07:00 |
|
 tannerandaider
|
ce6975cc44
|
feat: Add Blinn-Phong shading for faces
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-18 12:10:59 -07:00 |
|
 tannerandaider
|
b9860f3de0
|
fix: Prevent crash from failed sketch geometry creation
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 18:12:08 -07:00 |
|
 tannerandaider
|
6e729183ef
|
fix: Update OpenCASCADE triangulation API usage
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 17:57:13 -07:00 |
|
 tannerandaider
|
d5d430e80d
|
fix: Add edges to wire builder individually
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 17:56:15 -07:00 |
|
 tannerandaider
|
95b4db5191
|
feat: Render OpenCASCADE faces in viewport
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 17:54:59 -07:00 |
|
 tannerandaider
|
e2dfdf1600
|
feat: Generate faces from closed sketch wires
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-17 17:52:17 -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 |
|
 tannerandaider
|
8febc50fec
|
fix: Correct dimensioning arc direction and align text angle snapping
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-16 19:50:09 -07:00 |
|
 tannerandaider
|
c9c1b38f45
|
fix: Redefine angle dimension quadrant snapping
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-16 19:47:03 -07:00 |
|
 tannerandaider
|
c117ff3a8a
|
fix: Adjust angle dimension arc direction on quadrant snap
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-16 19:31:23 -07:00 |
|
 tannerandaider
|
34cecc38d5
|
fix: Apply typed dimensions/angles on mouse click for lines
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-16 19:26:58 -07:00 |
|
 tannerandaider
|
2f7d2a4189
|
fix: Ensure angle dimension arrows always point outward
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-16 19:24:01 -07:00 |
|
 tannerandaider
|
1fb211cc34
|
feat: Highlight active dimension input blue by default
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-16 19:21:12 -07:00 |
|
tanner
|
b2d5cd19d4
|
feat: Prevent Tab key from moving focus outside active viewport tools
|
2026-02-16 18:51:57 -07:00 |
|
 tannerandaider
|
d89b7e42bc
|
fix: Resolve variable redeclaration and font metrics scope in paintGL
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-16 17:45:05 -07:00 |
|
 tannerandaider
|
9d72fe2155
|
feat: Add editable angle dimensions to line drawing
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-16 17:42:05 -07:00 |
|
 tannerandaider
|
93282fce52
|
feat: Implement interactive dimension input for line drawing
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-16 17:23:35 -07:00 |
|
tanner
|
a18435bb15
|
style: Reduce radius of unattached sketch vertices
|
2026-02-16 17:04:13 -07:00 |
|
 tannerandaider
|
ec75ab41c5
|
style: Render unattached sketch vertices as filled circles with outline
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-16 16:51:11 -07:00 |
|
 tannerandaider
|
aaaf9a44ff
|
feat: Billboard unattached sketch vertices
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-16 16:48:31 -07:00 |
|
 tannerandaider
|
bc2e84a537
|
fix: Replace qPi() with M_PI to resolve build error
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-16 16:45:59 -07:00 |
|
 tannerandaider
|
f842555582
|
style: Render unattached sketch vertices as unfilled circles
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-16 16:45:22 -07:00 |
|
 tannerandaider
|
a980ad52be
|
fix: Replace QMap with std::map for custom comparator support
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-16 16:41:59 -07:00 |
|
 tannerandaider
|
1ebe10dcee
|
feat: Render unattached sketch vertices as circles
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-16 16:40:22 -07:00 |
|
 tannerandaider
|
97bb3466f8
|
fix: Add and emit toolDeactivated signal in ViewportWidget
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-16 16:29:41 -07:00 |
|
 tannerandaider
|
ba4f63a994
|
feat: Connect toolDeactivated signal to reset active tool
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-16 16:28:51 -07:00 |
|
 tannerandaider
|
8231ab49c2
|
fix: Use QOpenGLExtraFunctions for glBindVertexArray
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-16 16:16:33 -07:00 |
|
 tannerandaider
|
7010c60b34
|
fix: Restore OpenGL VAO binding after drawing sketch grid
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-16 16:14:18 -07:00 |
|
tanner
|
0ed62153b0
|
Project settings
|
2026-02-15 13:42:44 -07:00 |
|
 tannerandaider
|
63447fff90
|
fix: Destroy OpenGL resources before context cleanup
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
|
2026-02-15 13:17:24 -07:00 |
|