immersive2/src/menus
Michael Mainguy 26b48b26c8 Implement WebXR resize gizmo with virtual stick scaling and extract adapter to integration layer
- Implement comprehensive WebXR resize gizmo system with three handle types:
  - Corner handles: uniform scaling (all axes)
  - Edge handles: two-axis planar scaling
  - Face handles: single-axis scaling
- Use "virtual stick" metaphor for intuitive scaling:
  - Fixed-length projection from controller to handle intersection
  - Distance-ratio based scaling from mesh pivot point
  - Works naturally with controller rotation and movement
- Add world-space coordinate transformations for VR rig parenting
- Implement manual ray picking for utility layer handle detection
- Add motion controller initialization handling for grip button
- Fix color persistence bug in diagram entities:
  - DiagramEntityAdapter now uses toDiagramEntity() converter
  - Store color in mesh metadata for persistence
  - Add dependency injection for loose coupling
- Extract DiagramEntityAdapter to integration layer:
  - Move from src/gizmos/ResizeGizmo/ to src/integration/gizmo/
  - Add dependency injection for mesh-to-entity converter
  - Keep ResizeGizmo pure and reusable without diagram dependencies
- Add closest color matching for missing toolbox colors
- Handle size now relative to bounding box (20% of avg dimension)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-13 17:52:23 -06:00
..
functions updated linting warnings, removed unused variables. 2024-08-03 19:16:32 -05:00
abstractMenu.ts Removed dead code. 2024-08-30 12:43:19 -05:00
clickMenu.ts refactored web interface, updated image update code. 2024-08-03 19:12:32 -05:00
configMenu.ts Refactor config naming and upgrade dependencies 2025-11-12 21:36:56 -06:00
connectionPreview.ts Remove debug console.log from render loop 2025-11-12 21:29:24 -06:00
groupMenu.ts refactored web interface, updated image update code. 2024-08-03 19:12:32 -05:00
inputFile.ts Added webxr exit button 2025-02-14 11:01:27 -06:00
ScaleMenu2.ts Implement WebXR resize gizmo with virtual stick scaling and extract adapter to integration layer 2025-11-13 17:52:23 -06:00