Commit Graph

39 Commits

Author SHA1 Message Date
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
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
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
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
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
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
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
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
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
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
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
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
b2d5cd19d4 feat: Prevent Tab key from moving focus outside active viewport tools 2026-02-16 18:51:57 -07:00
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
0f43715c6b refactor: Migrate ViewportWidget to shader-based OpenGL rendering (FFP disabled)
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
2026-02-15 13:03:37 -07:00
af121ce6eb refactor: Extract camera logic to Camera class
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
2026-02-15 12:03:41 -07:00
8424097127 feat: Implement in-viewport sketch plane selection
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
2026-02-15 11:09:28 -07:00
6e5a819c42 feat: Add horizontal/vertical line snapping with visual indicator
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
2026-02-14 22:26:38 -07:00
6e64856f23 feat: Add vertex snapping and draw line endpoints
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
2026-02-14 22:16:14 -07:00
d3cb5e36f9 feat: Add origin snap for sketch points and preview
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
2026-02-14 22:04:21 -07:00
0030908d6d feat: Implement chained line drawing with Esc key exit
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
2026-02-14 21:57:55 -07:00
91f1a0e02a refactor: Use SVG for cursor rendering
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
2026-02-14 21:35:09 -07:00
94d04c7002 feat: Render active sketch tool icon at cursor position
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
2026-02-14 20:50:25 -07:00
8e1ab54cb5 feat: Add interactive sketch line drawing to viewport
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
2026-02-14 19:19:13 -07:00
fa5852b8db refactor: Introduce ApplicationController to centralize logic
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
2026-02-13 17:29:04 -07:00
87c354f79d chore: Adjust default window size and viewport orientation 2026-02-13 17:29:00 -07:00
57cca5c392 fix: Correct default camera X rotation for isometric view
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
2026-02-09 18:18:28 -07:00
083a64505c feat: Set default viewport camera to isometric view
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
2026-02-09 18:16:49 -07:00
b0a32940b0 fix: Rename camera state members to avoid name conflicts
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
2026-02-09 18:13:41 -07:00
7955af77be feat: Animate camera transitions for sketch mode
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
2026-02-09 18:11:36 -07:00
eea8099bd2 feat: Hide sketch grid when saving a sketch
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
2026-02-09 18:08:42 -07:00
6e335ef724 refactor: Refactor feature browser, move to top-left, and increase font size
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
2026-02-09 17:36:45 -07:00
c6f82a04e8 feat: Implement floating feature browser in viewport with transparent background
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
2026-02-09 17:33:01 -07:00
ec658360a6 feat: Add sketch creation with plane selection, oriented grid and labeled axes
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
2026-02-09 16:51:15 -07:00
fbfb496930 chore: Remove initial test cube drawing
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
2026-02-09 16:18:46 -07:00
732a7bd428 refactor: Extract view cube rendering to dedicated class
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
2026-02-09 16:04:40 -07:00
be35ae3196 feat: Render view cube labels as OpenGL textures
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
2026-02-09 16:01:00 -07:00
6198236db3 feat: Add top-right viewport view cube with axis and face labels
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
2026-02-09 15:57:03 -07:00
9584471932 feat: Render 3D cube with camera controls (zoom, pan, rotate)
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
2026-02-09 15:51:37 -07:00