Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add ViewHelper to JupyterCAD Editor #419

Closed
arjxn-py opened this issue Sep 16, 2024 · 1 comment · Fixed by #440
Closed

Add ViewHelper to JupyterCAD Editor #419

arjxn-py opened this issue Sep 16, 2024 · 1 comment · Fixed by #440
Milestone

Comments

@arjxn-py
Copy link
Member

This issue proposes the addition of a ViewHelper to the JupyterCAD editor. This would greatly enhance user experience by providing a 3D viewport gizmo that allows users to interactively control and view camera orientations.

The ViewHelper can offer users a visual and interactive tool to change views, similar to the feature demonstrated in this repository: three-viewport-gizmo. A working example can be found here: three-viewport-gizmo example.

Expected Behavior

  • A small interactive sphere-like gizmo should appear in the top or bottom-right corner of the JupyterCAD canvas.
  • Users should be able to click on faces, edges, and corners of the gizmo to change the view orientation (top, bottom, left, right, front, back).
  • The ViewHelper should remain fixed on the screen and should not be affected by camera movements such as panning, zooming, or rotating the 3D model in the main scene.
  • It should provide smooth transitions between camera views, enhancing navigation in complex 3D scenes.

Proposed Implementation

  • The three-viewport-gizmo library can be utilized to integrate the ViewHelper functionality within the JupyterCAD editor.
  • The gizmo should be rendered separately from the main 3D scene to avoid interference with the model itself, and it should be responsive to user interactions (clicks and pointer movements).
  • See the example on how this can be implemented: three-viewport-gizmo example.
@martinRenou
Copy link
Member

Thanks! This extension looks really good.

💯 on adding it to JupyterCAD

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants