Commit Graph

84 Commits

Author SHA1 Message Date
ebad30ce4d Implement Virtual Stick scaling with modular ResizeGizmo architecture
Refactored ResizeGizmo into modular structure:
- ResizeGizmo.ts: Main implementation with Virtual Stick scaling
- enums.ts: HandleType and HandleState enums
- types.ts: TypeScript interfaces
- index.ts: Barrel exports

Implemented Virtual Stick scaling approach:
- Fixed-length virtual stick extends from controller forward
- Scaling based on distance ratio in mesh local space
- World-to-local coordinate transforms for proper rotation handling
- Smooth continuous scaling during drag (no rounding)
- Snap to 0.1 increments on grip release
- Face handles: round only scaled axis
- Corner handles: round uniformly on all axes

Fixed scaling oscillation issues:
- Freeze handle position updates during active scaling
- Prevents feedback loop between scaling and handle positioning
- Use absoluteRotationQuaternion for proper handle rotation

Added WebXRDefaultExperience parameter to constructor for proper controller integration with manual ray casting in world space.

Added test shortcuts:
- Ctrl+Shift+T: Create test entities (sphere and box)
- Ctrl+Shift+X: Clear all entities

Wired Close button to dispose active ResizeGizmo.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-16 11:43:17 -06:00
100c5e612c Move exit XR button to toolbox class
Refactored exit XR button creation from rigplatform to toolbox for better organization and UI cohesion.

- Add setXR() methods to DiagramManager, DiagramMenuManager, and Toolbox to pass WebXRDefaultExperience after initialization
- Create setupXRButton() in Toolbox class that creates button when entering XR
- Position button at bottom-right of toolbox (x: 0.5, y: -0.35, z: 0)
- Use Y-axis rotation (Math.PI) for correct orientation within toolbox coordinate system
- Scale button to 0.2 for appropriate size
- Remove button creation code from rigplatform

Exit button now moves with toolbox and is logically grouped with other UI elements.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-13 06:57:35 -06:00
9d5234b629 Added webxr exit button 2025-02-14 11:01:27 -06:00
4e6c3a63d0 Updated config page. 2024-08-30 12:43:19 -05:00
5d3cad0def Reintegrated VR compnent. 2024-08-30 12:43:19 -05:00
60758ed84d Removed dead code. 2024-08-30 12:43:19 -05:00
e0d85a6a3d Added stl person to toolbox. 2024-06-17 11:33:24 -05:00
d08e86e92f Added websocket presence. 2024-06-14 09:38:16 -05:00
648876c06b fixed some race conditions. 2024-06-11 16:16:57 -05:00
3d3f73c259 added row level AES encryption. 2024-06-10 15:52:45 -05:00
7315e3397a Refactored some larger classses...added enhanced map capability. 2024-06-03 08:34:48 -05:00
06333e9123 Refactored things to be closer together in domain. 2024-05-31 19:38:30 -05:00
63d1e627ad Added more logging. 2024-05-30 10:23:51 -05:00
f26aa01211 Added Orphan connection cleanup and logging. 2024-05-30 10:08:04 -05:00
6ec28efe78 Updated way that connections are previewed. 2024-05-30 09:22:32 -05:00
cdaff97614 small change to formatting/fixed problem with mesh removal removing shared materials. 2024-05-29 09:13:06 -05:00
e85adc1386 Updated basic grab/drop. 2024-05-28 15:33:44 -05:00
bbe54dc3e3 Added background noise. Refactor customEnvironment.ts 2024-05-08 07:55:42 -05:00
01874b9e9e Slight simplification refactor (no functional change) 2024-05-07 19:40:16 -05:00
3ade3d4d6a Slight simplification refactor (no functional change) 2024-05-07 19:33:06 -05:00
08569de94d Fixed left controller typo. 2024-05-02 05:49:14 -05:00
d864c2e562 Fixed left controller typo. 2024-05-01 13:38:04 -05:00
b788b64df5 Fixed Circular Dependency. 2024-05-01 08:34:25 -05:00
d82df88296 Added Image upload component. 2024-04-29 13:39:05 -05:00
2f29b0a2de Moved loggers out of global module scope. 2024-04-28 09:03:20 -05:00
36e4b04957 updated menu positioning, added b-button to enable resetting positions. 2024-04-24 14:24:22 -05:00
c81dd8c24a Added Diagram Menu Manager. 2024-04-23 10:38:29 -05:00
e30bca5090 Refactor digramManager observer mask, updated logger in controllerbase. 2024-04-23 09:10:26 -05:00
b2c5c85d7e Updated click menu to use Html Button. Added Scale feature. 2024-04-20 06:56:42 -05:00
469d4a5116 DefaultScene static method to be upper case...added webGPU support (disabled as there appears to be a bug). 2024-04-17 08:18:35 -05:00
a1248a2e34 Refactored scene to use DefaultScene. 2024-04-16 11:14:32 -05:00
d7e812d253 Removed sounds, beginning to refactor how sound interactions are handled. 2024-04-16 10:03:57 -05:00
6e5afa2dac updated text label position on connections. added nullcheck for modify event. 2024-04-15 11:23:10 -05:00
cabc38ce09 Simplified interactions, changed menu interactions for changing entities. 2024-04-12 07:04:02 -05:00
2d3855621e refactored controllers and diagram manager. 2024-04-09 15:01:35 -05:00
618c0013ee split out react UI 2024-02-06 15:11:29 -06:00
72bdbf3ffa Removed some unused code. Optimized export bundle. Started building diagram selector menu. 2023-11-10 13:19:28 -06:00
237b127686 Removed some unused code. Optimized export bundle. 2023-11-09 08:04:13 -06:00
97e58928ed Added Pouchdb persistance manager. 2023-10-12 10:58:50 -05:00
7366b7e856 Updated text labels to be two sided and removed emissive. 2023-09-08 13:59:44 -05:00
717a5c6151 cleaned up warnings. 2023-09-05 19:30:15 -05:00
16f9f7f92c Removed console.log 2023-08-24 16:35:52 -05:00
559108281f updated config and some looping observables. 2023-08-24 15:51:05 -05:00
50c972eb97 Initial web worker commit. 2023-08-24 14:13:29 -05:00
f44b2129c8 decomposed functions. 2023-08-23 14:15:44 -05:00
88668c3d64 Fixed code inspections. 2023-08-23 08:04:49 -05:00
c945423954 Refactored into pure functions for key diagram manager functionality. 2023-08-23 07:44:09 -05:00
be8306141f Fixed up color selector. 2023-08-22 16:28:45 -05:00
23bce14635 cleaned up a bit. 2023-08-22 14:55:49 -05:00
3954619d60 Fixed up config and color change events. 2023-08-22 14:38:09 -05:00