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

Navigation Cube should support Viewport.isContextRotationRequired. #1191

Open
bbastings opened this issue Jan 28, 2025 · 0 comments
Open

Navigation Cube should support Viewport.isContextRotationRequired. #1191

bbastings opened this issue Jan 28, 2025 · 0 comments
Assignees

Comments

@bbastings
Copy link
Contributor

bbastings commented Jan 28, 2025

Is your feature request related to a problem? Please describe.

Using "ACS Context Lock" makes it easier to work in a rotated coordinate system.

Let's say you want to work relative to a wing of a building (below) that isn't aligned to the design X/Y axes (or start drawing something new in a rotated coordinate system). You can define an ACS for the view for the new coordinate system you want to use.

You can define the ACS from another element or by points. An ACS can be named and saved/recalled (we don't have UI for this in iTwin currently).

Image 1: Top view showing the view's ACS and AccuDraw in its normal "Rotate Top" orientation.

Image

After enabling "ACS Context" lock for the view, now the standard AccuDraw rotations for Top, Front, and Side will be relative to the ACS and not the design axes. Same applies to the standard view rotations when using StandardViewTool from itwinjs-frontend.

Image 2: Top view showing AccuDraw after using it's Rotate Top shortcut with ACS Context lock enabled (AccuDraw Top now equals ACS Top).

Image

NOTE: We don't include StandardViewTool on the UI and instead want folks to click on a face of the Navigation Cube. The Navigation Cube currently doesn't support ACS Context lock (it should). Once the Navigation Cube supports ACS Context Lock, clicking on "Top" would get you the view shown below.

Image 3: View showing "Top" relative to ACS...

Image

Being able to use the ACS as the base rotation for both AccuDraw and the standard view rotations makes it so much easier to draw in a rotated coordinate system as "Top" now aligns the X and Y axes of AccuDraw (and/or the view) to the ACS so you don't have to keep specifying an angle for everything you draw. Especially helpful in 3d for sketching on faces of solids, etc.

Describe the Solution you'd like

Have Naviation Cube check Viewport.isContextRotationRequired and use the ACS rotation instead of the views. See AccuDraw.getStandardRotation.

Describe alternatives you've considered

No response

Additional context

This is something I could look at. Wanted to file this issue just to have a record and to raise awareness that this feature exists.

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

No branches or pull requests

1 participant