Feature Request: Improve Shape Move Tool
Summary
The current shape move tool could be enhanced to provide a more robust and user-friendly experience when moving selected shapes in the viewer.
Proposed Improvements
-
Axis Constraints:
Add support for axis constraints, allowing users to restrict movement to the X, Y, or Z axis as needed. This could be managed via a Move_options struct and respected throughout the move logic.
-
Interactive Distance Editing:
Enable users to interactively edit the distance moved along each axis. The tool should provide callbacks for each axis, enabling precise control and real-time feedback during the move operation.
-
Improved Plane Handling:
Estimate the move plane based on the center of the selected shapes to improve the accuracy and intuitiveness of the move operation.
-
Enhanced Finalization Logic:
Implement logic to check for completion based on axis constraints and user input, and finalize the move by baking the transformation into the geometry.
-
Reset and Cancel Support:
Add the ability to cancel or reset the move operation, reverting any transformations and restoring the previous state.
Documentation
- Update
usage.md:
Ensure that the new features and usage instructions for the improved move tool are clearly documented in usage.md. This should include:
- How to use axis constraints
- Steps for interactive distance editing
- How to reset or cancel a move operation
- Any new UI elements or shortcuts introduced
Impact
Implementing these changes would make the move tool more flexible and reliable, especially for users needing precise control over shape positioning in 3D space.
Feature Request: Improve Shape Move Tool
Summary
The current shape move tool could be enhanced to provide a more robust and user-friendly experience when moving selected shapes in the viewer.
Proposed Improvements
Axis Constraints:
Add support for axis constraints, allowing users to restrict movement to the X, Y, or Z axis as needed. This could be managed via a
Move_optionsstruct and respected throughout the move logic.Interactive Distance Editing:
Enable users to interactively edit the distance moved along each axis. The tool should provide callbacks for each axis, enabling precise control and real-time feedback during the move operation.
Improved Plane Handling:
Estimate the move plane based on the center of the selected shapes to improve the accuracy and intuitiveness of the move operation.
Enhanced Finalization Logic:
Implement logic to check for completion based on axis constraints and user input, and finalize the move by baking the transformation into the geometry.
Reset and Cancel Support:
Add the ability to cancel or reset the move operation, reverting any transformations and restoring the previous state.
Documentation
usage.md:Ensure that the new features and usage instructions for the improved move tool are clearly documented in
usage.md. This should include:Impact
Implementing these changes would make the move tool more flexible and reliable, especially for users needing precise control over shape positioning in 3D space.