Introduce NavigationMode enum.
This commit is contained in:
parent
d7db1442b2
commit
34a64b5d83
@ -54,6 +54,7 @@
|
||||
<div class="navigation_section">
|
||||
<div class="navigation_title">Enums</div>
|
||||
<div id="nav-FileSource" class="navigation_item"><a href="Enum_FileSource.html" target="_self">FileSource</a></div>
|
||||
<div id="nav-NavigationMode" class="navigation_item"><a href="Enum_NavigationMode.html" target="_self">NavigationMode</a></div>
|
||||
<div id="nav-ProjectionMode" class="navigation_item"><a href="Enum_ProjectionMode.html" target="_self">ProjectionMode</a></div>
|
||||
</div>
|
||||
|
||||
|
||||
@ -54,6 +54,7 @@
|
||||
<div class="navigation_section">
|
||||
<div class="navigation_title">Enums</div>
|
||||
<div id="nav-FileSource" class="navigation_item"><a href="Enum_FileSource.html" target="_self">FileSource</a></div>
|
||||
<div id="nav-NavigationMode" class="navigation_item"><a href="Enum_NavigationMode.html" target="_self">NavigationMode</a></div>
|
||||
<div id="nav-ProjectionMode" class="navigation_item"><a href="Enum_ProjectionMode.html" target="_self">ProjectionMode</a></div>
|
||||
</div>
|
||||
|
||||
|
||||
@ -54,6 +54,7 @@
|
||||
<div class="navigation_section">
|
||||
<div class="navigation_title">Enums</div>
|
||||
<div id="nav-FileSource" class="navigation_item"><a href="Enum_FileSource.html" target="_self">FileSource</a></div>
|
||||
<div id="nav-NavigationMode" class="navigation_item"><a href="Enum_NavigationMode.html" target="_self">NavigationMode</a></div>
|
||||
<div id="nav-ProjectionMode" class="navigation_item"><a href="Enum_ProjectionMode.html" target="_self">ProjectionMode</a></div>
|
||||
</div>
|
||||
|
||||
|
||||
@ -54,6 +54,7 @@
|
||||
<div class="navigation_section">
|
||||
<div class="navigation_title">Enums</div>
|
||||
<div id="nav-FileSource" class="navigation_item"><a href="Enum_FileSource.html" target="_self">FileSource</a></div>
|
||||
<div id="nav-NavigationMode" class="navigation_item"><a href="Enum_NavigationMode.html" target="_self">NavigationMode</a></div>
|
||||
<div id="nav-ProjectionMode" class="navigation_item"><a href="Enum_ProjectionMode.html" target="_self">ProjectionMode</a></div>
|
||||
</div>
|
||||
|
||||
|
||||
@ -54,6 +54,7 @@
|
||||
<div class="navigation_section">
|
||||
<div class="navigation_title">Enums</div>
|
||||
<div id="nav-FileSource" class="navigation_item"><a href="Enum_FileSource.html" target="_self">FileSource</a></div>
|
||||
<div id="nav-NavigationMode" class="navigation_item"><a href="Enum_NavigationMode.html" target="_self">NavigationMode</a></div>
|
||||
<div id="nav-ProjectionMode" class="navigation_item"><a href="Enum_ProjectionMode.html" target="_self">ProjectionMode</a></div>
|
||||
</div>
|
||||
|
||||
|
||||
@ -54,6 +54,7 @@
|
||||
<div class="navigation_section">
|
||||
<div class="navigation_title">Enums</div>
|
||||
<div id="nav-FileSource" class="navigation_item"><a href="Enum_FileSource.html" target="_self">FileSource</a></div>
|
||||
<div id="nav-NavigationMode" class="navigation_item"><a href="Enum_NavigationMode.html" target="_self">NavigationMode</a></div>
|
||||
<div id="nav-ProjectionMode" class="navigation_item"><a href="Enum_ProjectionMode.html" target="_self">ProjectionMode</a></div>
|
||||
</div>
|
||||
|
||||
|
||||
@ -54,6 +54,7 @@
|
||||
<div class="navigation_section">
|
||||
<div class="navigation_title">Enums</div>
|
||||
<div id="nav-FileSource" class="navigation_item"><a href="Enum_FileSource.html" target="_self">FileSource</a></div>
|
||||
<div id="nav-NavigationMode" class="navigation_item"><a href="Enum_NavigationMode.html" target="_self">NavigationMode</a></div>
|
||||
<div id="nav-ProjectionMode" class="navigation_item"><a href="Enum_ProjectionMode.html" target="_self">ProjectionMode</a></div>
|
||||
</div>
|
||||
|
||||
|
||||
@ -54,6 +54,7 @@
|
||||
<div class="navigation_section">
|
||||
<div class="navigation_title">Enums</div>
|
||||
<div id="nav-FileSource" class="navigation_item"><a href="Enum_FileSource.html" target="_self">FileSource</a></div>
|
||||
<div id="nav-NavigationMode" class="navigation_item"><a href="Enum_NavigationMode.html" target="_self">NavigationMode</a></div>
|
||||
<div id="nav-ProjectionMode" class="navigation_item"><a href="Enum_ProjectionMode.html" target="_self">ProjectionMode</a></div>
|
||||
</div>
|
||||
|
||||
|
||||
83
docs/Enum_NavigationMode.html
Normal file
83
docs/Enum_NavigationMode.html
Normal file
@ -0,0 +1,83 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html;charset=utf-8">
|
||||
<meta name="viewport" content="width=device-width, user-scalable=no">
|
||||
<link rel="icon" type="image/png" href="static/3dviewer_net_favicon.ico">
|
||||
|
||||
<title>Online 3D Viewer - NavigationMode</title>
|
||||
|
||||
<link rel="stylesheet" href="static/highlightjs/styles/github.min.css"/>
|
||||
<script src="static/highlightjs/highlight.min.js"></script>
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="static/style.css"/>
|
||||
<script type="text/javascript" src="static/script.js"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="navigation_toggle" class="navigation_toggle"><img id="navigation_icon" src="static/menu.svg"/></div>
|
||||
<div id="navigation" class="navigation thin_scrollbar">
|
||||
<div class="navigation_section">
|
||||
<div class="navigation_title">Pages</div>
|
||||
<div id="nav-Home" class="navigation_item"><a href="index.html" target="_self">Home</a></div>
|
||||
<div id="nav-GitHub" class="navigation_item"><a href="https://github.com/kovacsv/Online3DViewer" target="_blank">GitHub</a></div>
|
||||
</div>
|
||||
<div class="navigation_section">
|
||||
<div class="navigation_title">Engine Usage</div>
|
||||
<div id="nav-Installation" class="navigation_item"><a href="Page_Installation.html" target="_self">Installation</a></div>
|
||||
<div id="nav-Usage" class="navigation_item"><a href="Page_Usage.html" target="_self">Usage</a></div>
|
||||
<div id="nav-Migration Guide" class="navigation_item"><a href="Page_MigrationGuide.html" target="_self">Migration Guide</a></div>
|
||||
</div>
|
||||
<div class="navigation_section">
|
||||
<div class="navigation_title">Contribution</div>
|
||||
<div id="nav-Contribution Guidelines" class="navigation_item"><a href="Page_ContributionGuidelines.html" target="_self">Contribution Guidelines</a></div>
|
||||
<div id="nav-Environment Setup" class="navigation_item"><a href="Page_EnvironmentSetup.html" target="_self">Environment Setup</a></div>
|
||||
</div>
|
||||
<div class="navigation_section">
|
||||
<div class="navigation_title">Classes</div>
|
||||
<div id="nav-Camera" class="navigation_item"><a href="Class_Camera.html" target="_self">Camera</a></div>
|
||||
<div id="nav-EdgeSettings" class="navigation_item"><a href="Class_EdgeSettings.html" target="_self">EdgeSettings</a></div>
|
||||
<div id="nav-EmbeddedViewer" class="navigation_item"><a href="Class_EmbeddedViewer.html" target="_self">EmbeddedViewer</a></div>
|
||||
<div id="nav-EnvironmentSettings" class="navigation_item"><a href="Class_EnvironmentSettings.html" target="_self">EnvironmentSettings</a></div>
|
||||
<div id="nav-InputFile" class="navigation_item"><a href="Class_InputFile.html" target="_self">InputFile</a></div>
|
||||
<div id="nav-RGBAColor" class="navigation_item"><a href="Class_RGBAColor.html" target="_self">RGBAColor</a></div>
|
||||
<div id="nav-RGBColor" class="navigation_item"><a href="Class_RGBColor.html" target="_self">RGBColor</a></div>
|
||||
</div>
|
||||
<div class="navigation_section">
|
||||
<div class="navigation_title">Functions</div>
|
||||
<div id="nav-Init3DViewerElements" class="navigation_item"><a href="Function_Init3DViewerElements.html" target="_self">Init3DViewerElements</a></div>
|
||||
<div id="nav-Init3DViewerFromFileList" class="navigation_item"><a href="Function_Init3DViewerFromFileList.html" target="_self">Init3DViewerFromFileList</a></div>
|
||||
<div id="nav-Init3DViewerFromUrlList" class="navigation_item"><a href="Function_Init3DViewerFromUrlList.html" target="_self">Init3DViewerFromUrlList</a></div>
|
||||
<div id="nav-SetExternalLibLocation" class="navigation_item"><a href="Function_SetExternalLibLocation.html" target="_self">SetExternalLibLocation</a></div>
|
||||
</div>
|
||||
<div class="navigation_section">
|
||||
<div class="navigation_title">Enums</div>
|
||||
<div id="nav-FileSource" class="navigation_item"><a href="Enum_FileSource.html" target="_self">FileSource</a></div>
|
||||
<div id="nav-NavigationMode" class="navigation_item"><a href="Enum_NavigationMode.html" target="_self">NavigationMode</a></div>
|
||||
<div id="nav-ProjectionMode" class="navigation_item"><a href="Enum_ProjectionMode.html" target="_self">ProjectionMode</a></div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div id="main" class="main">
|
||||
<h1>NavigationMode</h1>
|
||||
<div class="description">Camera navigation mode.</div>
|
||||
<h2>Values</h2>
|
||||
<div class="parameter_header">
|
||||
<span class="parameter_name">FixedUpVector</span>
|
||||
</div>
|
||||
<div class="parameter_main">
|
||||
<div class="parameter_description">Fixed up vector.</div>
|
||||
</div>
|
||||
<div class="parameter_header">
|
||||
<span class="parameter_name">FreeOrbit</span>
|
||||
</div>
|
||||
<div class="parameter_main">
|
||||
<div class="parameter_description">Free orbit.</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<script type="text/javascript">Init ('NavigationMode')</script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@ -54,6 +54,7 @@
|
||||
<div class="navigation_section">
|
||||
<div class="navigation_title">Enums</div>
|
||||
<div id="nav-FileSource" class="navigation_item"><a href="Enum_FileSource.html" target="_self">FileSource</a></div>
|
||||
<div id="nav-NavigationMode" class="navigation_item"><a href="Enum_NavigationMode.html" target="_self">NavigationMode</a></div>
|
||||
<div id="nav-ProjectionMode" class="navigation_item"><a href="Enum_ProjectionMode.html" target="_self">ProjectionMode</a></div>
|
||||
</div>
|
||||
|
||||
|
||||
@ -54,6 +54,7 @@
|
||||
<div class="navigation_section">
|
||||
<div class="navigation_title">Enums</div>
|
||||
<div id="nav-FileSource" class="navigation_item"><a href="Enum_FileSource.html" target="_self">FileSource</a></div>
|
||||
<div id="nav-NavigationMode" class="navigation_item"><a href="Enum_NavigationMode.html" target="_self">NavigationMode</a></div>
|
||||
<div id="nav-ProjectionMode" class="navigation_item"><a href="Enum_ProjectionMode.html" target="_self">ProjectionMode</a></div>
|
||||
</div>
|
||||
|
||||
|
||||
@ -54,6 +54,7 @@
|
||||
<div class="navigation_section">
|
||||
<div class="navigation_title">Enums</div>
|
||||
<div id="nav-FileSource" class="navigation_item"><a href="Enum_FileSource.html" target="_self">FileSource</a></div>
|
||||
<div id="nav-NavigationMode" class="navigation_item"><a href="Enum_NavigationMode.html" target="_self">NavigationMode</a></div>
|
||||
<div id="nav-ProjectionMode" class="navigation_item"><a href="Enum_ProjectionMode.html" target="_self">ProjectionMode</a></div>
|
||||
</div>
|
||||
|
||||
|
||||
@ -54,6 +54,7 @@
|
||||
<div class="navigation_section">
|
||||
<div class="navigation_title">Enums</div>
|
||||
<div id="nav-FileSource" class="navigation_item"><a href="Enum_FileSource.html" target="_self">FileSource</a></div>
|
||||
<div id="nav-NavigationMode" class="navigation_item"><a href="Enum_NavigationMode.html" target="_self">NavigationMode</a></div>
|
||||
<div id="nav-ProjectionMode" class="navigation_item"><a href="Enum_ProjectionMode.html" target="_self">ProjectionMode</a></div>
|
||||
</div>
|
||||
|
||||
|
||||
@ -54,6 +54,7 @@
|
||||
<div class="navigation_section">
|
||||
<div class="navigation_title">Enums</div>
|
||||
<div id="nav-FileSource" class="navigation_item"><a href="Enum_FileSource.html" target="_self">FileSource</a></div>
|
||||
<div id="nav-NavigationMode" class="navigation_item"><a href="Enum_NavigationMode.html" target="_self">NavigationMode</a></div>
|
||||
<div id="nav-ProjectionMode" class="navigation_item"><a href="Enum_ProjectionMode.html" target="_self">ProjectionMode</a></div>
|
||||
</div>
|
||||
|
||||
|
||||
@ -54,6 +54,7 @@
|
||||
<div class="navigation_section">
|
||||
<div class="navigation_title">Enums</div>
|
||||
<div id="nav-FileSource" class="navigation_item"><a href="Enum_FileSource.html" target="_self">FileSource</a></div>
|
||||
<div id="nav-NavigationMode" class="navigation_item"><a href="Enum_NavigationMode.html" target="_self">NavigationMode</a></div>
|
||||
<div id="nav-ProjectionMode" class="navigation_item"><a href="Enum_ProjectionMode.html" target="_self">ProjectionMode</a></div>
|
||||
</div>
|
||||
|
||||
|
||||
@ -54,6 +54,7 @@
|
||||
<div class="navigation_section">
|
||||
<div class="navigation_title">Enums</div>
|
||||
<div id="nav-FileSource" class="navigation_item"><a href="Enum_FileSource.html" target="_self">FileSource</a></div>
|
||||
<div id="nav-NavigationMode" class="navigation_item"><a href="Enum_NavigationMode.html" target="_self">NavigationMode</a></div>
|
||||
<div id="nav-ProjectionMode" class="navigation_item"><a href="Enum_ProjectionMode.html" target="_self">ProjectionMode</a></div>
|
||||
</div>
|
||||
|
||||
|
||||
@ -54,6 +54,7 @@
|
||||
<div class="navigation_section">
|
||||
<div class="navigation_title">Enums</div>
|
||||
<div id="nav-FileSource" class="navigation_item"><a href="Enum_FileSource.html" target="_self">FileSource</a></div>
|
||||
<div id="nav-NavigationMode" class="navigation_item"><a href="Enum_NavigationMode.html" target="_self">NavigationMode</a></div>
|
||||
<div id="nav-ProjectionMode" class="navigation_item"><a href="Enum_ProjectionMode.html" target="_self">ProjectionMode</a></div>
|
||||
</div>
|
||||
|
||||
|
||||
@ -54,6 +54,7 @@
|
||||
<div class="navigation_section">
|
||||
<div class="navigation_title">Enums</div>
|
||||
<div id="nav-FileSource" class="navigation_item"><a href="Enum_FileSource.html" target="_self">FileSource</a></div>
|
||||
<div id="nav-NavigationMode" class="navigation_item"><a href="Enum_NavigationMode.html" target="_self">NavigationMode</a></div>
|
||||
<div id="nav-ProjectionMode" class="navigation_item"><a href="Enum_ProjectionMode.html" target="_self">ProjectionMode</a></div>
|
||||
</div>
|
||||
|
||||
|
||||
@ -54,6 +54,7 @@
|
||||
<div class="navigation_section">
|
||||
<div class="navigation_title">Enums</div>
|
||||
<div id="nav-FileSource" class="navigation_item"><a href="Enum_FileSource.html" target="_self">FileSource</a></div>
|
||||
<div id="nav-NavigationMode" class="navigation_item"><a href="Enum_NavigationMode.html" target="_self">NavigationMode</a></div>
|
||||
<div id="nav-ProjectionMode" class="navigation_item"><a href="Enum_ProjectionMode.html" target="_self">ProjectionMode</a></div>
|
||||
</div>
|
||||
|
||||
|
||||
@ -54,6 +54,7 @@
|
||||
<div class="navigation_section">
|
||||
<div class="navigation_title">Enums</div>
|
||||
<div id="nav-FileSource" class="navigation_item"><a href="Enum_FileSource.html" target="_self">FileSource</a></div>
|
||||
<div id="nav-NavigationMode" class="navigation_item"><a href="Enum_NavigationMode.html" target="_self">NavigationMode</a></div>
|
||||
<div id="nav-ProjectionMode" class="navigation_item"><a href="Enum_ProjectionMode.html" target="_self">ProjectionMode</a></div>
|
||||
</div>
|
||||
|
||||
|
||||
@ -65,7 +65,7 @@ import { ParameterListBuilder, ParameterListParser, CreateUrlBuilder, CreateUrlP
|
||||
import { ModelToThreeConversionParams, ModelToThreeConversionOutput, ThreeConversionStateHandler, ThreeNodeTree, ConvertModelToThreeObject } from './threejs/threeconverter.js';
|
||||
import { ThreeModelLoader } from './threejs/threemodelloader.js';
|
||||
import { ThreeColorConverter, ThreeLinearToSRGBColorConverter, ThreeSRGBToLinearColorConverter, HasHighpDriverIssue, GetShadingType, ConvertThreeColorToColor, ConvertColorToThreeColor, ConvertThreeGeometryToMesh, DisposeThreeObjects, ShadingType } from './threejs/threeutils.js';
|
||||
import { Camera, CameraIsEqual3D, ProjectionMode } from './viewer/camera.js';
|
||||
import { Camera, CameraIsEqual3D, NavigationMode, ProjectionMode } from './viewer/camera.js';
|
||||
import { GetIntegerFromStyle, GetDomElementExternalWidth, GetDomElementExternalHeight, GetDomElementInnerDimensions, GetDomElementClientCoordinates, CreateDomElement, AddDomElement, AddDiv, ClearDomElement, InsertDomElementBefore, InsertDomElementAfter, ShowDomElement, IsDomElementVisible, SetDomElementWidth, SetDomElementHeight, GetDomElementOuterWidth, GetDomElementOuterHeight, SetDomElementOuterWidth, SetDomElementOuterHeight, CreateDiv } from './viewer/domutils.js';
|
||||
import { EmbeddedViewer, Init3DViewerFromUrlList, Init3DViewerFromFileList, Init3DViewerElements } from './viewer/embeddedviewer.js';
|
||||
import { MouseInteraction, TouchInteraction, ClickDetector, Navigation, NavigationType } from './viewer/navigation.js';
|
||||
@ -296,6 +296,7 @@ export {
|
||||
ShadingType,
|
||||
Camera,
|
||||
CameraIsEqual3D,
|
||||
NavigationMode,
|
||||
ProjectionMode,
|
||||
GetIntegerFromStyle,
|
||||
GetDomElementExternalWidth,
|
||||
|
||||
@ -1,6 +1,18 @@
|
||||
import { CoordIsEqual3D } from '../geometry/coord3d.js';
|
||||
import { IsEqual } from '../geometry/geometry.js';
|
||||
|
||||
/**
|
||||
* Camera navigation mode.
|
||||
* @enum
|
||||
*/
|
||||
export const NavigationMode =
|
||||
{
|
||||
/** Fixed up vector. */
|
||||
FixedUpVector : 1,
|
||||
/** Free orbit. */
|
||||
FreeOrbit : 2
|
||||
};
|
||||
|
||||
/**
|
||||
* Camera projection mode.
|
||||
* @enum
|
||||
|
||||
@ -2,7 +2,7 @@ import { Coord2D, CoordDistance2D, SubCoord2D } from '../geometry/coord2d.js';
|
||||
import { CoordDistance3D, CrossVector3D, SubCoord3D, VectorAngle3D } from '../geometry/coord3d.js';
|
||||
import { DegRad, IsGreater, IsLower, IsZero } from '../geometry/geometry.js';
|
||||
import { ParabolicTweenFunction, TweenCoord3D } from '../geometry/tween.js';
|
||||
import { CameraIsEqual3D } from './camera.js';
|
||||
import { CameraIsEqual3D, NavigationMode } from './camera.js';
|
||||
import { GetDomElementClientCoordinates } from './domutils.js';
|
||||
|
||||
export class MouseInteraction
|
||||
@ -241,7 +241,7 @@ export class Navigation
|
||||
this.canvas = canvas;
|
||||
this.camera = camera;
|
||||
this.callbacks = callbacks;
|
||||
this.fixUpVector = true;
|
||||
this.navigationMode = NavigationMode.FixedUpVector;
|
||||
|
||||
this.mouse = new MouseInteraction ();
|
||||
this.touch = new TouchInteraction ();
|
||||
@ -282,14 +282,14 @@ export class Navigation
|
||||
this.onContext = onContext;
|
||||
}
|
||||
|
||||
IsFixUpVector ()
|
||||
GetNavigationMode ()
|
||||
{
|
||||
return this.fixUpVector;
|
||||
return this.navigationMode;
|
||||
}
|
||||
|
||||
SetFixUpVector (isFixUpVector)
|
||||
SetNavigationMode (navigationMode)
|
||||
{
|
||||
this.fixUpVector = isFixUpVector;
|
||||
this.navigationMode = navigationMode;
|
||||
}
|
||||
|
||||
GetCamera ()
|
||||
@ -522,14 +522,14 @@ export class Navigation
|
||||
let viewDirection = SubCoord3D (this.camera.center, this.camera.eye).Normalize ();
|
||||
let horizontalDirection = CrossVector3D (viewDirection, this.camera.up).Normalize ();
|
||||
|
||||
if (this.fixUpVector) {
|
||||
if (this.navigationMode === NavigationMode.FixedUpVector) {
|
||||
let originalAngle = VectorAngle3D (viewDirection, this.camera.up);
|
||||
let newAngle = originalAngle + radAngleY;
|
||||
if (IsGreater (newAngle, 0.0) && IsLower (newAngle, Math.PI)) {
|
||||
this.camera.eye.Rotate (horizontalDirection, -radAngleY, this.camera.center);
|
||||
}
|
||||
this.camera.eye.Rotate (this.camera.up, -radAngleX, this.camera.center);
|
||||
} else {
|
||||
} else if (this.navigationMode === NavigationMode.FreeOrbit) {
|
||||
let verticalDirection = CrossVector3D (horizontalDirection, viewDirection).Normalize ();
|
||||
this.camera.eye.Rotate (horizontalDirection, -radAngleY, this.camera.center);
|
||||
this.camera.eye.Rotate (verticalDirection, -radAngleX, this.camera.center);
|
||||
|
||||
@ -2,7 +2,7 @@ import { Coord3D, CoordDistance3D, SubCoord3D } from '../geometry/coord3d.js';
|
||||
import { DegRad, Direction, IsEqual } from '../geometry/geometry.js';
|
||||
import { ColorComponentToFloat } from '../model/color.js';
|
||||
import { ShadingType } from '../threejs/threeutils.js';
|
||||
import { Camera, ProjectionMode } from './camera.js';
|
||||
import { Camera, NavigationMode, ProjectionMode } from './camera.js';
|
||||
import { GetDomElementInnerDimensions } from './domutils.js';
|
||||
import { Navigation } from './navigation.js';
|
||||
import { ShadingModel } from './shadingmodel.js';
|
||||
@ -353,16 +353,16 @@ export class Viewer
|
||||
this.Render ();
|
||||
}
|
||||
|
||||
IsFixUpVector ()
|
||||
GetNavigationMode ()
|
||||
{
|
||||
return this.navigation.IsFixUpVector ();
|
||||
return this.navigation.GetNavigationMode ();
|
||||
}
|
||||
|
||||
SetFixUpVector (isFixUpVector)
|
||||
SetNavigationMode (navigationMode)
|
||||
{
|
||||
let oldCamera = this.navigation.GetCamera ();
|
||||
let newCamera = this.upVector.SetFixed (isFixUpVector, oldCamera);
|
||||
this.navigation.SetFixUpVector (isFixUpVector);
|
||||
let newCamera = this.upVector.SetFixed (navigationMode === NavigationMode.FixedUpVector, oldCamera);
|
||||
this.navigation.SetNavigationMode (navigationMode);
|
||||
if (newCamera !== null) {
|
||||
this.navigation.MoveCamera (newCamera, this.settings.animationSteps);
|
||||
}
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
import { GetFileExtension, TransformFileHostUrls } from '../engine/io/fileutils.js';
|
||||
import { InputFilesFromFileObjects, InputFilesFromUrls } from '../engine/import/importerfiles.js';
|
||||
import { ImportErrorCode, ImportSettings } from '../engine/import/importer.js';
|
||||
import { ProjectionMode } from '../engine/viewer/camera.js';
|
||||
import { NavigationMode, ProjectionMode } from '../engine/viewer/camera.js';
|
||||
import { RGBColor } from '../engine/model/color.js';
|
||||
import { Viewer } from '../engine/viewer/viewer.js';
|
||||
import { AddDiv, AddDomElement, ShowDomElement, SetDomElementOuterHeight, CreateDomElement, GetDomElementOuterWidth, GetDomElementOuterHeight } from '../engine/viewer/domutils.js';
|
||||
@ -675,9 +675,9 @@ export class Website
|
||||
AddSeparator (this.toolbar, ['only_full_width', 'only_on_model']);
|
||||
AddRadioButton (this.toolbar, ['fix_up_on', 'fix_up_off'], ['Fixed up vector', 'Free orbit'], 0, ['only_full_width', 'only_on_model'], (buttonIndex) => {
|
||||
if (buttonIndex === 0) {
|
||||
this.viewer.SetFixUpVector (true);
|
||||
this.viewer.SetNavigationMode (NavigationMode.FixedUpVector);
|
||||
} else if (buttonIndex === 1) {
|
||||
this.viewer.SetFixUpVector (false);
|
||||
this.viewer.SetNavigationMode (NavigationMode.FreeOrbit);
|
||||
}
|
||||
});
|
||||
AddSeparator (this.toolbar, ['only_full_width', 'only_on_model']);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user