@itwin/core-common 4.10.0-dev.8 → 5.0.0-dev.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +23 -1
- package/lib/cjs/BackendTypes.d.ts +0 -2
- package/lib/cjs/BackendTypes.d.ts.map +1 -1
- package/lib/cjs/BackgroundMapProvider.js +1 -1
- package/lib/cjs/BackgroundMapProvider.js.map +1 -1
- package/lib/cjs/BackgroundMapSettings.js +2 -2
- package/lib/cjs/BackgroundMapSettings.js.map +1 -1
- package/lib/cjs/BriefcaseTypes.js.map +1 -1
- package/lib/cjs/Code.d.ts +8 -0
- package/lib/cjs/Code.d.ts.map +1 -1
- package/lib/cjs/Code.js +8 -0
- package/lib/cjs/Code.js.map +1 -1
- package/lib/cjs/ColorDef.d.ts.map +1 -1
- package/lib/cjs/ColorDef.js +0 -3
- package/lib/cjs/ColorDef.js.map +1 -1
- package/lib/cjs/ConcurrentQuery.d.ts.map +1 -1
- package/lib/cjs/ContourDisplay.d.ts +216 -0
- package/lib/cjs/ContourDisplay.d.ts.map +1 -0
- package/lib/cjs/ContourDisplay.js +300 -0
- package/lib/cjs/ContourDisplay.js.map +1 -0
- package/lib/cjs/DisplayStyleSettings.d.ts +9 -0
- package/lib/cjs/DisplayStyleSettings.d.ts.map +1 -1
- package/lib/cjs/DisplayStyleSettings.js +16 -0
- package/lib/cjs/DisplayStyleSettings.js.map +1 -1
- package/lib/cjs/ECSqlReader.d.ts.map +1 -1
- package/lib/cjs/ECSqlReader.js +1 -10
- package/lib/cjs/ECSqlReader.js.map +1 -1
- package/lib/cjs/ElementMesh.js +2 -3
- package/lib/cjs/ElementMesh.js.map +1 -1
- package/lib/cjs/ElementProps.d.ts +25 -0
- package/lib/cjs/ElementProps.d.ts.map +1 -1
- package/lib/cjs/ElementProps.js +3 -3
- package/lib/cjs/ElementProps.js.map +1 -1
- package/lib/cjs/FeatureSymbology.d.ts +36 -5
- package/lib/cjs/FeatureSymbology.d.ts.map +1 -1
- package/lib/cjs/FeatureSymbology.js +127 -40
- package/lib/cjs/FeatureSymbology.js.map +1 -1
- package/lib/cjs/GeoCoordinateServices.js +2 -2
- package/lib/cjs/GeoCoordinateServices.js.map +1 -1
- package/lib/cjs/IModel.js.map +1 -1
- package/lib/cjs/IModelError.d.ts +5 -3
- package/lib/cjs/IModelError.d.ts.map +1 -1
- package/lib/cjs/IModelError.js +5 -2
- package/lib/cjs/IModelError.js.map +1 -1
- package/lib/cjs/ITwinError.d.ts +72 -0
- package/lib/cjs/ITwinError.d.ts.map +1 -0
- package/lib/cjs/ITwinError.js +55 -0
- package/lib/cjs/ITwinError.js.map +1 -0
- package/lib/cjs/Image.js +4 -4
- package/lib/cjs/Image.js.map +1 -1
- package/lib/cjs/MapLayerSettings.d.ts.map +1 -1
- package/lib/cjs/MapLayerSettings.js +0 -1
- package/lib/cjs/MapLayerSettings.js.map +1 -1
- package/lib/cjs/QPoint.d.ts +1 -1
- package/lib/cjs/RenderMaterial.js +4 -4
- package/lib/cjs/RenderMaterial.js.map +1 -1
- package/lib/cjs/RenderTexture.js.map +1 -1
- package/lib/cjs/RpcInterface.js +1 -1
- package/lib/cjs/RpcInterface.js.map +1 -1
- package/lib/cjs/RpcManager.d.ts.map +1 -1
- package/lib/cjs/RpcManager.js.map +1 -1
- package/lib/cjs/SolarCalculate.js +4 -5
- package/lib/cjs/SolarCalculate.js.map +1 -1
- package/lib/cjs/SpatialClassification.js.map +1 -1
- package/lib/cjs/SubCategoryAppearance.js.map +1 -1
- package/lib/cjs/TextureMapping.js.map +1 -1
- package/lib/cjs/TileProps.js +2 -2
- package/lib/cjs/TileProps.js.map +1 -1
- package/lib/cjs/Tween.d.ts.map +1 -1
- package/lib/cjs/Tween.js +0 -1
- package/lib/cjs/Tween.js.map +1 -1
- package/lib/cjs/ViewProps.d.ts +1 -1
- package/lib/cjs/ViewProps.d.ts.map +1 -1
- package/lib/cjs/ViewProps.js.map +1 -1
- package/lib/cjs/core-common.d.ts +2 -0
- package/lib/cjs/core-common.d.ts.map +1 -1
- package/lib/cjs/core-common.js +2 -0
- package/lib/cjs/core-common.js.map +1 -1
- package/lib/cjs/geometry/ElementGeometry.js +3 -3
- package/lib/cjs/geometry/ElementGeometry.js.map +1 -1
- package/lib/cjs/geometry/FrustumPlanes.js.map +1 -1
- package/lib/cjs/geometry/GeometryStream.js +2 -2
- package/lib/cjs/geometry/GeometryStream.js.map +1 -1
- package/lib/cjs/geometry/Placement.d.ts +3 -0
- package/lib/cjs/geometry/Placement.d.ts.map +1 -1
- package/lib/cjs/geometry/Placement.js +3 -0
- package/lib/cjs/geometry/Placement.js.map +1 -1
- package/lib/cjs/internal/Snapping.d.ts +7 -1
- package/lib/cjs/internal/Snapping.d.ts.map +1 -1
- package/lib/cjs/internal/Snapping.js.map +1 -1
- package/lib/cjs/ipc/IpcSocket.d.ts +15 -2
- package/lib/cjs/ipc/IpcSocket.d.ts.map +1 -1
- package/lib/cjs/ipc/IpcSocket.js.map +1 -1
- package/lib/cjs/ipc/IpcWebSocket.js.map +1 -1
- package/lib/cjs/rpc/DevToolsRpcInterface.js.map +1 -1
- package/lib/cjs/rpc/IModelReadRpcInterface.js +12 -12
- package/lib/cjs/rpc/IModelReadRpcInterface.js.map +1 -1
- package/lib/cjs/rpc/IModelTileRpcInterface.js +1 -1
- package/lib/cjs/rpc/IModelTileRpcInterface.js.map +1 -1
- package/lib/cjs/rpc/SnapshotIModelRpcInterface.d.ts +3 -0
- package/lib/cjs/rpc/SnapshotIModelRpcInterface.d.ts.map +1 -1
- package/lib/cjs/rpc/SnapshotIModelRpcInterface.js +3 -0
- package/lib/cjs/rpc/SnapshotIModelRpcInterface.js.map +1 -1
- package/lib/cjs/rpc/TestRpcManager.d.ts.map +1 -1
- package/lib/cjs/rpc/TestRpcManager.js +0 -1
- package/lib/cjs/rpc/TestRpcManager.js.map +1 -1
- package/lib/cjs/rpc/WipRpcInterface.d.ts +1 -0
- package/lib/cjs/rpc/WipRpcInterface.d.ts.map +1 -1
- package/lib/cjs/rpc/WipRpcInterface.js +2 -1
- package/lib/cjs/rpc/WipRpcInterface.js.map +1 -1
- package/lib/cjs/rpc/core/RpcConfiguration.d.ts.map +1 -1
- package/lib/cjs/rpc/core/RpcConfiguration.js +1 -1
- package/lib/cjs/rpc/core/RpcConfiguration.js.map +1 -1
- package/lib/cjs/rpc/core/RpcConstants.d.ts +1 -1
- package/lib/cjs/rpc/core/RpcConstants.d.ts.map +1 -1
- package/lib/cjs/rpc/core/RpcConstants.js +1 -1
- package/lib/cjs/rpc/core/RpcConstants.js.map +1 -1
- package/lib/cjs/rpc/core/RpcControl.d.ts.map +1 -1
- package/lib/cjs/rpc/core/RpcControl.js +0 -1
- package/lib/cjs/rpc/core/RpcControl.js.map +1 -1
- package/lib/cjs/rpc/core/RpcInvocation.js +1 -1
- package/lib/cjs/rpc/core/RpcInvocation.js.map +1 -1
- package/lib/cjs/rpc/core/RpcMarshaling.js +1 -1
- package/lib/cjs/rpc/core/RpcMarshaling.js.map +1 -1
- package/lib/cjs/rpc/core/RpcOperation.d.ts.map +1 -1
- package/lib/cjs/rpc/core/RpcOperation.js +0 -1
- package/lib/cjs/rpc/core/RpcOperation.js.map +1 -1
- package/lib/cjs/rpc/core/RpcPendingQueue.js +1 -1
- package/lib/cjs/rpc/core/RpcPendingQueue.js.map +1 -1
- package/lib/cjs/rpc/core/RpcProtocol.js.map +1 -1
- package/lib/cjs/rpc/core/RpcPush.d.ts.map +1 -1
- package/lib/cjs/rpc/core/RpcPush.js.map +1 -1
- package/lib/cjs/rpc/core/RpcRegistry.d.ts.map +1 -1
- package/lib/cjs/rpc/core/RpcRegistry.js +0 -2
- package/lib/cjs/rpc/core/RpcRegistry.js.map +1 -1
- package/lib/cjs/rpc/core/RpcRequest.d.ts.map +1 -1
- package/lib/cjs/rpc/core/RpcRequest.js +1 -2
- package/lib/cjs/rpc/core/RpcRequest.js.map +1 -1
- package/lib/cjs/rpc/core/RpcRequestContext.d.ts.map +1 -1
- package/lib/cjs/rpc/core/RpcRequestContext.js.map +1 -1
- package/lib/cjs/rpc/core/RpcRoutingToken.d.ts.map +1 -1
- package/lib/cjs/rpc/core/RpcRoutingToken.js +0 -1
- package/lib/cjs/rpc/core/RpcRoutingToken.js.map +1 -1
- package/lib/cjs/rpc/core/RpcSessionInvocation.js +1 -1
- package/lib/cjs/rpc/core/RpcSessionInvocation.js.map +1 -1
- package/lib/cjs/rpc/web/BentleyCloudRpcManager.js.map +1 -1
- package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.d.ts.map +1 -1
- package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js +0 -1
- package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
- package/lib/cjs/rpc/web/OpenAPI.js.map +1 -1
- package/lib/cjs/rpc/web/RpcMultipart.d.ts.map +1 -1
- package/lib/cjs/rpc/web/RpcMultipart.js.map +1 -1
- package/lib/cjs/rpc/web/WebAppRpcLogging.js +1 -1
- package/lib/cjs/rpc/web/WebAppRpcLogging.js.map +1 -1
- package/lib/cjs/rpc/web/WebAppRpcProtocol.d.ts +0 -2
- package/lib/cjs/rpc/web/WebAppRpcProtocol.d.ts.map +1 -1
- package/lib/cjs/rpc/web/WebAppRpcProtocol.js.map +1 -1
- package/lib/cjs/rpc/web/WebAppRpcRequest.d.ts.map +1 -1
- package/lib/cjs/rpc/web/WebAppRpcRequest.js +1 -1
- package/lib/cjs/rpc/web/WebAppRpcRequest.js.map +1 -1
- package/lib/cjs/rpc/web/multipart/RpcMultipartParser.d.ts.map +1 -1
- package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js +0 -1
- package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
- package/lib/cjs/tile/TileIO.js +4 -4
- package/lib/cjs/tile/TileIO.js.map +1 -1
- package/lib/cjs/tile/TileMetadata.js +13 -13
- package/lib/cjs/tile/TileMetadata.js.map +1 -1
- package/lib/esm/BackendTypes.d.ts +0 -2
- package/lib/esm/BackendTypes.d.ts.map +1 -1
- package/lib/esm/BackgroundMapProvider.js +1 -1
- package/lib/esm/BackgroundMapProvider.js.map +1 -1
- package/lib/esm/BackgroundMapSettings.js +2 -2
- package/lib/esm/BackgroundMapSettings.js.map +1 -1
- package/lib/esm/BriefcaseTypes.js.map +1 -1
- package/lib/esm/Code.d.ts +8 -0
- package/lib/esm/Code.d.ts.map +1 -1
- package/lib/esm/Code.js +8 -0
- package/lib/esm/Code.js.map +1 -1
- package/lib/esm/ColorDef.d.ts.map +1 -1
- package/lib/esm/ColorDef.js +0 -3
- package/lib/esm/ColorDef.js.map +1 -1
- package/lib/esm/ConcurrentQuery.d.ts.map +1 -1
- package/lib/esm/ContourDisplay.d.ts +216 -0
- package/lib/esm/ContourDisplay.d.ts.map +1 -0
- package/lib/esm/ContourDisplay.js +293 -0
- package/lib/esm/ContourDisplay.js.map +1 -0
- package/lib/esm/DisplayStyleSettings.d.ts +9 -0
- package/lib/esm/DisplayStyleSettings.d.ts.map +1 -1
- package/lib/esm/DisplayStyleSettings.js +16 -0
- package/lib/esm/DisplayStyleSettings.js.map +1 -1
- package/lib/esm/ECSqlReader.d.ts.map +1 -1
- package/lib/esm/ECSqlReader.js +1 -10
- package/lib/esm/ECSqlReader.js.map +1 -1
- package/lib/esm/ElementMesh.js +1 -1
- package/lib/esm/ElementMesh.js.map +1 -1
- package/lib/esm/ElementProps.d.ts +25 -0
- package/lib/esm/ElementProps.d.ts.map +1 -1
- package/lib/esm/ElementProps.js.map +1 -1
- package/lib/esm/FeatureSymbology.d.ts +36 -5
- package/lib/esm/FeatureSymbology.d.ts.map +1 -1
- package/lib/esm/FeatureSymbology.js +127 -40
- package/lib/esm/FeatureSymbology.js.map +1 -1
- package/lib/esm/IModel.js.map +1 -1
- package/lib/esm/IModelError.d.ts +5 -3
- package/lib/esm/IModelError.d.ts.map +1 -1
- package/lib/esm/IModelError.js +5 -2
- package/lib/esm/IModelError.js.map +1 -1
- package/lib/esm/ITwinError.d.ts +72 -0
- package/lib/esm/ITwinError.d.ts.map +1 -0
- package/lib/esm/ITwinError.js +52 -0
- package/lib/esm/ITwinError.js.map +1 -0
- package/lib/esm/MapLayerSettings.d.ts.map +1 -1
- package/lib/esm/MapLayerSettings.js +0 -1
- package/lib/esm/MapLayerSettings.js.map +1 -1
- package/lib/esm/QPoint.d.ts +1 -1
- package/lib/esm/RenderMaterial.js +4 -4
- package/lib/esm/RenderMaterial.js.map +1 -1
- package/lib/esm/RenderTexture.js.map +1 -1
- package/lib/esm/RpcInterface.js +1 -1
- package/lib/esm/RpcInterface.js.map +1 -1
- package/lib/esm/RpcManager.d.ts.map +1 -1
- package/lib/esm/RpcManager.js.map +1 -1
- package/lib/esm/SpatialClassification.js.map +1 -1
- package/lib/esm/SubCategoryAppearance.js.map +1 -1
- package/lib/esm/TextureMapping.js.map +1 -1
- package/lib/esm/Tween.d.ts.map +1 -1
- package/lib/esm/Tween.js +0 -1
- package/lib/esm/Tween.js.map +1 -1
- package/lib/esm/ViewProps.d.ts +1 -1
- package/lib/esm/ViewProps.d.ts.map +1 -1
- package/lib/esm/ViewProps.js.map +1 -1
- package/lib/esm/core-common.d.ts +2 -0
- package/lib/esm/core-common.d.ts.map +1 -1
- package/lib/esm/core-common.js +2 -0
- package/lib/esm/core-common.js.map +1 -1
- package/lib/esm/geometry/ElementGeometry.js +3 -3
- package/lib/esm/geometry/ElementGeometry.js.map +1 -1
- package/lib/esm/geometry/FrustumPlanes.js.map +1 -1
- package/lib/esm/geometry/GeometryStream.js +2 -2
- package/lib/esm/geometry/GeometryStream.js.map +1 -1
- package/lib/esm/geometry/Placement.d.ts +3 -0
- package/lib/esm/geometry/Placement.d.ts.map +1 -1
- package/lib/esm/geometry/Placement.js +3 -0
- package/lib/esm/geometry/Placement.js.map +1 -1
- package/lib/esm/internal/Snapping.d.ts +7 -1
- package/lib/esm/internal/Snapping.d.ts.map +1 -1
- package/lib/esm/internal/Snapping.js.map +1 -1
- package/lib/esm/ipc/IpcSocket.d.ts +15 -2
- package/lib/esm/ipc/IpcSocket.d.ts.map +1 -1
- package/lib/esm/ipc/IpcSocket.js.map +1 -1
- package/lib/esm/ipc/IpcWebSocket.js.map +1 -1
- package/lib/esm/rpc/DevToolsRpcInterface.js.map +1 -1
- package/lib/esm/rpc/IModelReadRpcInterface.js +12 -12
- package/lib/esm/rpc/IModelReadRpcInterface.js.map +1 -1
- package/lib/esm/rpc/IModelTileRpcInterface.js +1 -1
- package/lib/esm/rpc/IModelTileRpcInterface.js.map +1 -1
- package/lib/esm/rpc/SnapshotIModelRpcInterface.d.ts +3 -0
- package/lib/esm/rpc/SnapshotIModelRpcInterface.d.ts.map +1 -1
- package/lib/esm/rpc/SnapshotIModelRpcInterface.js +3 -0
- package/lib/esm/rpc/SnapshotIModelRpcInterface.js.map +1 -1
- package/lib/esm/rpc/TestRpcManager.d.ts.map +1 -1
- package/lib/esm/rpc/TestRpcManager.js +0 -1
- package/lib/esm/rpc/TestRpcManager.js.map +1 -1
- package/lib/esm/rpc/WipRpcInterface.d.ts +1 -0
- package/lib/esm/rpc/WipRpcInterface.d.ts.map +1 -1
- package/lib/esm/rpc/WipRpcInterface.js +2 -1
- package/lib/esm/rpc/WipRpcInterface.js.map +1 -1
- package/lib/esm/rpc/core/RpcConfiguration.d.ts.map +1 -1
- package/lib/esm/rpc/core/RpcConfiguration.js +1 -1
- package/lib/esm/rpc/core/RpcConfiguration.js.map +1 -1
- package/lib/esm/rpc/core/RpcConstants.d.ts +1 -1
- package/lib/esm/rpc/core/RpcConstants.d.ts.map +1 -1
- package/lib/esm/rpc/core/RpcConstants.js +1 -1
- package/lib/esm/rpc/core/RpcConstants.js.map +1 -1
- package/lib/esm/rpc/core/RpcControl.d.ts.map +1 -1
- package/lib/esm/rpc/core/RpcControl.js +0 -1
- package/lib/esm/rpc/core/RpcControl.js.map +1 -1
- package/lib/esm/rpc/core/RpcInvocation.js +1 -1
- package/lib/esm/rpc/core/RpcInvocation.js.map +1 -1
- package/lib/esm/rpc/core/RpcMarshaling.js +1 -1
- package/lib/esm/rpc/core/RpcMarshaling.js.map +1 -1
- package/lib/esm/rpc/core/RpcOperation.d.ts.map +1 -1
- package/lib/esm/rpc/core/RpcOperation.js +0 -1
- package/lib/esm/rpc/core/RpcOperation.js.map +1 -1
- package/lib/esm/rpc/core/RpcPendingQueue.js +1 -1
- package/lib/esm/rpc/core/RpcPendingQueue.js.map +1 -1
- package/lib/esm/rpc/core/RpcProtocol.js.map +1 -1
- package/lib/esm/rpc/core/RpcPush.d.ts.map +1 -1
- package/lib/esm/rpc/core/RpcPush.js.map +1 -1
- package/lib/esm/rpc/core/RpcRegistry.d.ts.map +1 -1
- package/lib/esm/rpc/core/RpcRegistry.js +0 -2
- package/lib/esm/rpc/core/RpcRegistry.js.map +1 -1
- package/lib/esm/rpc/core/RpcRequest.d.ts.map +1 -1
- package/lib/esm/rpc/core/RpcRequest.js +1 -2
- package/lib/esm/rpc/core/RpcRequest.js.map +1 -1
- package/lib/esm/rpc/core/RpcRequestContext.d.ts.map +1 -1
- package/lib/esm/rpc/core/RpcRequestContext.js.map +1 -1
- package/lib/esm/rpc/core/RpcRoutingToken.d.ts.map +1 -1
- package/lib/esm/rpc/core/RpcRoutingToken.js +0 -1
- package/lib/esm/rpc/core/RpcRoutingToken.js.map +1 -1
- package/lib/esm/rpc/core/RpcSessionInvocation.js +1 -1
- package/lib/esm/rpc/core/RpcSessionInvocation.js.map +1 -1
- package/lib/esm/rpc/web/BentleyCloudRpcManager.js.map +1 -1
- package/lib/esm/rpc/web/BentleyCloudRpcProtocol.d.ts.map +1 -1
- package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js +0 -1
- package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
- package/lib/esm/rpc/web/OpenAPI.js.map +1 -1
- package/lib/esm/rpc/web/RpcMultipart.d.ts.map +1 -1
- package/lib/esm/rpc/web/RpcMultipart.js.map +1 -1
- package/lib/esm/rpc/web/WebAppRpcLogging.js +1 -1
- package/lib/esm/rpc/web/WebAppRpcLogging.js.map +1 -1
- package/lib/esm/rpc/web/WebAppRpcProtocol.d.ts +0 -2
- package/lib/esm/rpc/web/WebAppRpcProtocol.d.ts.map +1 -1
- package/lib/esm/rpc/web/WebAppRpcProtocol.js.map +1 -1
- package/lib/esm/rpc/web/WebAppRpcRequest.d.ts.map +1 -1
- package/lib/esm/rpc/web/WebAppRpcRequest.js +1 -1
- package/lib/esm/rpc/web/WebAppRpcRequest.js.map +1 -1
- package/lib/esm/rpc/web/multipart/RpcMultipartParser.d.ts.map +1 -1
- package/lib/esm/rpc/web/multipart/RpcMultipartParser.js +0 -1
- package/lib/esm/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
- package/lib/esm/tile/TileMetadata.js +1 -1
- package/lib/esm/tile/TileMetadata.js.map +1 -1
- package/package.json +14 -15
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SubCategoryAppearance.js","sourceRoot":"","sources":["../../src/SubCategoryAppearance.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Symbology\r\n */\r\n\r\nimport { Id64, Id64String, JsonUtils } from \"@itwin/core-bentley\";\r\nimport { ColorDef, ColorDefProps } from \"./ColorDef\";\r\n\r\n/** Parameters that define the way geometry on a [[SubCategory]] appears.\r\n * SubCategoryAppearance describes the intrinsic appearance of geometry belonging to that SubCategory, independent of a particular [[ViewState]].\r\n * Aspects of a SubCategory's appearance can be overridden in the context of a particular [[ViewState]] through the use of [[SubCategoryOverride]]s.\r\n * @public\r\n */\r\nexport class SubCategoryAppearance {\r\n /** The color of the geometry.\r\n * @note The transparency component of the color is ignored.\r\n * @see [[SubCategoryAppearance.transparency]].\r\n */\r\n public readonly color: ColorDef;\r\n /** The line width, in pixels.\r\n * @note The renderer will clamp values to the integer range [1, 32].\r\n */\r\n public readonly weight: number;\r\n /** The display priority used to control which geometry draws in front of other geometry within a 2D view.\r\n * The priority is a number in the range [-8388576,8388576].\r\n * Where two pieces of geometry overlap, the one with the larger priority value draws on top of the one with the smaller priority.\r\n * If they have equal priorities, the order in which they draw is undefined, and z-fighting may result.\r\n * @note This property has no effect in 3D views unless [[PlanProjectionSettings]] are in effect.\r\n */\r\n public readonly priority: number;\r\n /** A value in the range [0, 1] indicating the transparency of the geometry where 0.0 means \"fully opaque\" and 1.0 means \"fully transparent\". */\r\n public readonly transparency: number;\r\n /** If true, geometry belonging to this SubCategory is not drawn. */\r\n public readonly invisible: boolean;\r\n /** @internal */\r\n public readonly dontPlot: boolean;\r\n /** @internal */\r\n public readonly dontSnap: boolean;\r\n /** @internal */\r\n public readonly dontLocate: boolean;\r\n /** The element ID of the line style used to draw curves, or an invalid ID if no line style is specified. */\r\n public readonly styleId: Id64String;\r\n /** The element ID of the material applied to surfaces, or an invalid ID if no material is specified. */\r\n public readonly materialId: Id64String;\r\n /** @internal */\r\n protected readonly _fillColor?: ColorDef;\r\n /** @internal */\r\n protected readonly _fillTransparency?: number;\r\n\r\n /** The fill color of geometry marked as being filled.\r\n * @note The transparency component of the fill color is ignored.\r\n * @see [[SubCategoryAppearance.fillTransparency]].\r\n */\r\n public get fillColor(): ColorDef { return (undefined !== this._fillColor ? this._fillColor : this.color); }\r\n /** A value in the range [0, 1] indicating the fill transparency of the geometry where 0.0 means \"fully opaque\" and 1.0 means \"fully transparent\". */\r\n public get fillTransparency(): number { return (undefined !== this._fillTransparency ? this._fillTransparency : this.transparency); }\r\n\r\n constructor(props?: SubCategoryAppearance.Props) {\r\n if (!props) {\r\n this.color = ColorDef.black;\r\n this.weight = 0;\r\n this.priority = 0;\r\n this.transparency = 0;\r\n this.invisible = this.dontPlot = this.dontSnap = this.dontLocate = false;\r\n this.styleId = Id64.invalid;\r\n this.materialId = Id64.invalid;\r\n return;\r\n }\r\n\r\n this.invisible = JsonUtils.asBool(props.invisible);\r\n this.dontSnap = JsonUtils.asBool(props.dontSnap);\r\n this.dontLocate = JsonUtils.asBool(props.dontLocate);\r\n this.dontPlot = JsonUtils.asBool(props.dontPlot);\r\n this.color = ColorDef.fromJSON(props.color);\r\n this.weight = JsonUtils.asInt(props.weight);\r\n this.styleId = Id64.fromJSON(props.style);\r\n this.priority = JsonUtils.asInt(props.priority);\r\n this.materialId = Id64.fromJSON(props.material);\r\n this.transparency = JsonUtils.asDouble(props.transp);\r\n if (props.fill)\r\n this._fillColor = ColorDef.fromJSON(props.fill);\r\n if (props.transpFill)\r\n this._fillTransparency = JsonUtils.asDouble(props.transpFill);\r\n }\r\n\r\n public equals(other: SubCategoryAppearance): boolean {\r\n return this.invisible === other.invisible &&\r\n this.dontPlot === other.dontPlot &&\r\n this.dontSnap === other.dontSnap &&\r\n this.dontLocate === other.dontLocate &&\r\n this.color.equals(other.color) &&\r\n this.weight === other.weight &&\r\n this.priority === other.priority &&\r\n this.styleId === other.styleId &&\r\n this.materialId === other.materialId &&\r\n this.transparency === other.transparency &&\r\n this.fillColor.equals(other.fillColor) &&\r\n this.fillTransparency === other.fillTransparency;\r\n }\r\n\r\n /** @internal */\r\n public toJSON(): SubCategoryAppearance.Props {\r\n const val: SubCategoryAppearance.Props = { color: this.color.toJSON() };\r\n if (this.invisible)\r\n val.invisible = true;\r\n\r\n if (this.dontPlot)\r\n val.dontPlot = true;\r\n\r\n if (this.dontSnap)\r\n val.dontSnap = true;\r\n\r\n if (this.dontLocate)\r\n val.dontLocate = true;\r\n\r\n if (0 !== this.weight)\r\n val.weight = this.weight;\r\n\r\n if (0 !== this.priority)\r\n val.priority = this.priority;\r\n\r\n if (Id64.isValid(this.styleId))\r\n val.style = this.styleId;\r\n\r\n if (Id64.isValid(this.materialId))\r\n val.material = this.materialId;\r\n\r\n if (0.0 !== this.transparency)\r\n val.transp = this.transparency;\r\n\r\n if (this._fillColor)\r\n val.fill = this._fillColor.toJSON();\r\n\r\n if (this._fillTransparency)\r\n val.transpFill = this._fillTransparency;\r\n\r\n return val;\r\n }\r\n\r\n public clone(): SubCategoryAppearance { return new SubCategoryAppearance(this.toJSON()); }\r\n\r\n public static defaults = new SubCategoryAppearance();\r\n}\r\n\r\n/** @public */\r\nexport namespace SubCategoryAppearance { // eslint-disable-line no-redeclare\r\n /** Properties used to create a SubCategoryAppearance\r\n * See [[SubCategoryAppearance]]\r\n */\r\n export interface Props {\r\n /** See [[SubCategoryAppearance.color]]. Defaults to black. */\r\n color?: ColorDefProps;\r\n /** See [[SubCategoryAppearance.fillColor]]. Defaults to [[SubCategoryAppearance.color]]. */\r\n fill?: ColorDefProps;\r\n /** See [[SubCategoryAppearance.invisible]]. Defaults to false. */\r\n invisible?: boolean;\r\n /** @internal */\r\n dontPlot?: boolean;\r\n /** @internal */\r\n dontSnap?: boolean;\r\n /** @internal */\r\n dontLocate?: boolean;\r\n /** See [[SubCategoryAppearance.weight]]. Defaults to 0. */\r\n weight?: number;\r\n /** See [[SubCategoryAppearance.styleId]]. Defaults to an invalid ID indicating \"no line style\". */\r\n style?: Id64String;\r\n /** See [[SubCategoryAppearance.priority]]. Defaults to 0. */\r\n priority?: number;\r\n /** See [[SubCategoryAppearance.materialId]]. Defaults to an invalid ID indicating \"no material\". */\r\n material?: Id64String;\r\n /** See [[SubCategoryAppearance.transparency]]. Defaults to 0. */\r\n transp?: number;\r\n /** See [[SubCategoryAppearance.fillTransparency]]. Defaults to [[SubCategoryAppearance.transparency]]. */\r\n transpFill?: number;\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"SubCategoryAppearance.js","sourceRoot":"","sources":["../../src/SubCategoryAppearance.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Symbology\r\n */\r\n\r\nimport { Id64, Id64String, JsonUtils } from \"@itwin/core-bentley\";\r\nimport { ColorDef, ColorDefProps } from \"./ColorDef\";\r\n\r\n/** Parameters that define the way geometry on a [[SubCategory]] appears.\r\n * SubCategoryAppearance describes the intrinsic appearance of geometry belonging to that SubCategory, independent of a particular [[ViewState]].\r\n * Aspects of a SubCategory's appearance can be overridden in the context of a particular [[ViewState]] through the use of [[SubCategoryOverride]]s.\r\n * @public\r\n */\r\nexport class SubCategoryAppearance {\r\n /** The color of the geometry.\r\n * @note The transparency component of the color is ignored.\r\n * @see [[SubCategoryAppearance.transparency]].\r\n */\r\n public readonly color: ColorDef;\r\n /** The line width, in pixels.\r\n * @note The renderer will clamp values to the integer range [1, 32].\r\n */\r\n public readonly weight: number;\r\n /** The display priority used to control which geometry draws in front of other geometry within a 2D view.\r\n * The priority is a number in the range [-8388576,8388576].\r\n * Where two pieces of geometry overlap, the one with the larger priority value draws on top of the one with the smaller priority.\r\n * If they have equal priorities, the order in which they draw is undefined, and z-fighting may result.\r\n * @note This property has no effect in 3D views unless [[PlanProjectionSettings]] are in effect.\r\n */\r\n public readonly priority: number;\r\n /** A value in the range [0, 1] indicating the transparency of the geometry where 0.0 means \"fully opaque\" and 1.0 means \"fully transparent\". */\r\n public readonly transparency: number;\r\n /** If true, geometry belonging to this SubCategory is not drawn. */\r\n public readonly invisible: boolean;\r\n /** @internal */\r\n public readonly dontPlot: boolean;\r\n /** @internal */\r\n public readonly dontSnap: boolean;\r\n /** @internal */\r\n public readonly dontLocate: boolean;\r\n /** The element ID of the line style used to draw curves, or an invalid ID if no line style is specified. */\r\n public readonly styleId: Id64String;\r\n /** The element ID of the material applied to surfaces, or an invalid ID if no material is specified. */\r\n public readonly materialId: Id64String;\r\n /** @internal */\r\n protected readonly _fillColor?: ColorDef;\r\n /** @internal */\r\n protected readonly _fillTransparency?: number;\r\n\r\n /** The fill color of geometry marked as being filled.\r\n * @note The transparency component of the fill color is ignored.\r\n * @see [[SubCategoryAppearance.fillTransparency]].\r\n */\r\n public get fillColor(): ColorDef { return (undefined !== this._fillColor ? this._fillColor : this.color); }\r\n /** A value in the range [0, 1] indicating the fill transparency of the geometry where 0.0 means \"fully opaque\" and 1.0 means \"fully transparent\". */\r\n public get fillTransparency(): number { return (undefined !== this._fillTransparency ? this._fillTransparency : this.transparency); }\r\n\r\n constructor(props?: SubCategoryAppearance.Props) {\r\n if (!props) {\r\n this.color = ColorDef.black;\r\n this.weight = 0;\r\n this.priority = 0;\r\n this.transparency = 0;\r\n this.invisible = this.dontPlot = this.dontSnap = this.dontLocate = false;\r\n this.styleId = Id64.invalid;\r\n this.materialId = Id64.invalid;\r\n return;\r\n }\r\n\r\n this.invisible = JsonUtils.asBool(props.invisible);\r\n this.dontSnap = JsonUtils.asBool(props.dontSnap);\r\n this.dontLocate = JsonUtils.asBool(props.dontLocate);\r\n this.dontPlot = JsonUtils.asBool(props.dontPlot);\r\n this.color = ColorDef.fromJSON(props.color);\r\n this.weight = JsonUtils.asInt(props.weight);\r\n this.styleId = Id64.fromJSON(props.style);\r\n this.priority = JsonUtils.asInt(props.priority);\r\n this.materialId = Id64.fromJSON(props.material);\r\n this.transparency = JsonUtils.asDouble(props.transp);\r\n if (props.fill)\r\n this._fillColor = ColorDef.fromJSON(props.fill);\r\n if (props.transpFill)\r\n this._fillTransparency = JsonUtils.asDouble(props.transpFill);\r\n }\r\n\r\n public equals(other: SubCategoryAppearance): boolean {\r\n return this.invisible === other.invisible &&\r\n this.dontPlot === other.dontPlot &&\r\n this.dontSnap === other.dontSnap &&\r\n this.dontLocate === other.dontLocate &&\r\n this.color.equals(other.color) &&\r\n this.weight === other.weight &&\r\n this.priority === other.priority &&\r\n this.styleId === other.styleId &&\r\n this.materialId === other.materialId &&\r\n this.transparency === other.transparency &&\r\n this.fillColor.equals(other.fillColor) &&\r\n this.fillTransparency === other.fillTransparency;\r\n }\r\n\r\n /** @internal */\r\n public toJSON(): SubCategoryAppearance.Props {\r\n const val: SubCategoryAppearance.Props = { color: this.color.toJSON() };\r\n if (this.invisible)\r\n val.invisible = true;\r\n\r\n if (this.dontPlot)\r\n val.dontPlot = true;\r\n\r\n if (this.dontSnap)\r\n val.dontSnap = true;\r\n\r\n if (this.dontLocate)\r\n val.dontLocate = true;\r\n\r\n if (0 !== this.weight)\r\n val.weight = this.weight;\r\n\r\n if (0 !== this.priority)\r\n val.priority = this.priority;\r\n\r\n if (Id64.isValid(this.styleId))\r\n val.style = this.styleId;\r\n\r\n if (Id64.isValid(this.materialId))\r\n val.material = this.materialId;\r\n\r\n if (0.0 !== this.transparency)\r\n val.transp = this.transparency;\r\n\r\n if (this._fillColor)\r\n val.fill = this._fillColor.toJSON();\r\n\r\n if (this._fillTransparency)\r\n val.transpFill = this._fillTransparency;\r\n\r\n return val;\r\n }\r\n\r\n public clone(): SubCategoryAppearance { return new SubCategoryAppearance(this.toJSON()); }\r\n\r\n public static defaults = new SubCategoryAppearance();\r\n}\r\n\r\n/** @public */\r\nexport namespace SubCategoryAppearance {\r\n /** Properties used to create a SubCategoryAppearance\r\n * See [[SubCategoryAppearance]]\r\n */\r\n export interface Props {\r\n /** See [[SubCategoryAppearance.color]]. Defaults to black. */\r\n color?: ColorDefProps;\r\n /** See [[SubCategoryAppearance.fillColor]]. Defaults to [[SubCategoryAppearance.color]]. */\r\n fill?: ColorDefProps;\r\n /** See [[SubCategoryAppearance.invisible]]. Defaults to false. */\r\n invisible?: boolean;\r\n /** @internal */\r\n dontPlot?: boolean;\r\n /** @internal */\r\n dontSnap?: boolean;\r\n /** @internal */\r\n dontLocate?: boolean;\r\n /** See [[SubCategoryAppearance.weight]]. Defaults to 0. */\r\n weight?: number;\r\n /** See [[SubCategoryAppearance.styleId]]. Defaults to an invalid ID indicating \"no line style\". */\r\n style?: Id64String;\r\n /** See [[SubCategoryAppearance.priority]]. Defaults to 0. */\r\n priority?: number;\r\n /** See [[SubCategoryAppearance.materialId]]. Defaults to an invalid ID indicating \"no material\". */\r\n material?: Id64String;\r\n /** See [[SubCategoryAppearance.transparency]]. Defaults to 0. */\r\n transp?: number;\r\n /** See [[SubCategoryAppearance.fillTransparency]]. Defaults to [[SubCategoryAppearance.transparency]]. */\r\n transpFill?: number;\r\n }\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextureMapping.js","sourceRoot":"","sources":["../../src/TextureMapping.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Rendering\r\n */\r\n\r\nimport { IndexedPolyfaceVisitor, Matrix3d, Point2d, Point3d, PolyfaceVisitor, Transform, Vector3d, XAndY } from \"@itwin/core-geometry\";\r\nimport { RenderTexture } from \"./RenderTexture\";\r\nimport { compareBooleans, compareBooleansOrUndefined, compareNumbers, compareNumbersOrUndefined, comparePossiblyUndefined } from \"@itwin/core-bentley\";\r\n\r\n/** Defines normal map parameters.\r\n * @beta\r\n */\r\nexport interface NormalMapParams {\r\n /** The texture to use as a normal map. If not present then the pattern map texture will be used as a normal map. */\r\n normalMap?: RenderTexture;\r\n /** True if the Y component stored in the green channel should be negated. By default, positive Y points downward, but some\r\n * normal maps are created with positive Y pointing upward.\r\n */\r\n greenUp?: boolean;\r\n /** Scale factor by which to multiply the components of the normal extracted from [[normalMap]]. */\r\n scale?: number;\r\n /** True if want to use constant LOD texture mapping for the normal map texture. */\r\n useConstantLod?: boolean;\r\n}\r\n\r\nfunction compareNormalMapParams(lhs: NormalMapParams, rhs: NormalMapParams): number {\r\n return comparePossiblyUndefined((lh, rh) => lh.compare(rh), lhs.normalMap, rhs.normalMap)\r\n || compareBooleansOrUndefined(lhs.greenUp, rhs.greenUp) || compareNumbersOrUndefined(lhs.scale, rhs.scale)\r\n || compareBooleansOrUndefined(lhs.useConstantLod, rhs.useConstantLod);\r\n}\r\n\r\n/** Describes how to map a [[RenderTexture]]'s image onto a surface as part of a [[RenderMaterial]].\r\n * @public\r\n */\r\nexport class TextureMapping {\r\n /** The texture to be mapped to the surface. If normalMapParams is present but does not contain a normal map, then texture is used as a normal map rather than a pattern map. */\r\n public readonly texture: RenderTexture;\r\n /** The parameters for normal mapping.\r\n * @beta\r\n */\r\n public normalMapParams?: NormalMapParams;\r\n /** The parameters describing how the textures are mapped to the surface. */\r\n public readonly params: TextureMapping.Params;\r\n\r\n public constructor(tx: RenderTexture, params: TextureMapping.Params) {\r\n this.texture = tx;\r\n this.params = params;\r\n }\r\n\r\n /** @internal */\r\n public computeUVParams(visitor: PolyfaceVisitor, transformToImodel: Transform): Point2d[] | undefined {\r\n return this.params.computeUVParams(visitor as IndexedPolyfaceVisitor, transformToImodel);\r\n }\r\n\r\n /** An [OrderedComparator]($bentley) that compares this mapping against `other`. */\r\n public compare(other: TextureMapping): number {\r\n if (this === other) {\r\n return 0;\r\n }\r\n\r\n return this.texture.compare(other.texture) || this.params.compare(other.params)\r\n || comparePossiblyUndefined((lh, rh) => compareNormalMapParams(lh, rh), this.normalMapParams, other.normalMapParams);\r\n }\r\n}\r\n\r\n/** @public */\r\nexport namespace TextureMapping { // eslint-disable-line no-redeclare\r\n /** Enumerates the possible texture mapping modes. */\r\n export enum Mode {\r\n None = -1,\r\n Parametric = 0,\r\n ElevationDrape = 1,\r\n Planar = 2,\r\n /** @internal */\r\n DirectionalDrape = 3,\r\n /** @internal */\r\n Cubic = 4,\r\n /** @internal */\r\n Spherical = 5,\r\n /** @internal */\r\n Cylindrical = 6,\r\n /** @internal */\r\n Solid = 7,\r\n /** @internal Only valid for lights */\r\n FrontProject = 8,\r\n }\r\n\r\n /** A 2x3 matrix for mapping a texture image to a surface. */\r\n export class Trans2x3 {\r\n /** The 3x4 transform produced from the 2x3 matrix. */\r\n public readonly transform: Transform;\r\n\r\n /** Construct from the two rows of the matrix:\r\n * ```\r\n * | m00 m01 originX |\r\n * | m10 m11 originY |\r\n * ```\r\n * Producing the [Transform]($core-geometry):\r\n * ```\r\n * | m00 m01 0 originX |\r\n * | m10 m11 0 originY |\r\n * | 0 0 1 0 |\r\n * ```\r\n */\r\n public constructor(m00 = 1, m01 = 0, originX = 0, m10 = 0, m11 = 1, originY = 0) {\r\n const origin = new Point3d(originX, originY, 0);\r\n const matrix = Matrix3d.createRowValues(m00, m01, 0, m10, m11, 0, 0, 0, 1);\r\n this.transform = Transform.createRefs(origin, matrix);\r\n }\r\n\r\n /** An immutable 2x3 identity matrix. */\r\n public static readonly identity = new Trans2x3();\r\n\r\n /** An [OrderedComparator]($bentley) that compares this Trans2x3 against `other`. */\r\n public compare(other: Trans2x3): number {\r\n if (this === other) {\r\n return 0;\r\n }\r\n\r\n const originDiff = compareNumbers(this.transform.origin.x, other.transform.origin.x) || compareNumbers(this.transform.origin.y, other.transform.origin.y);\r\n if (originDiff !== 0) {\r\n return originDiff;\r\n }\r\n\r\n for (const i of [0, 1, 3, 4]) {\r\n const matDiff = compareNumbers(this.transform.matrix.coffs[i], other.transform.matrix.coffs[i]);\r\n if (matDiff !== 0) {\r\n return matDiff;\r\n }\r\n }\r\n\r\n return 0;\r\n }\r\n }\r\n\r\n /** Properties used to construct a [[TextureMapping.ConstantLodParams]]. */\r\n export interface ConstantLodParamProps {\r\n /** The number of times the texture is repeated. Increasing this will make the texture pattern appear smaller, decreasing it will make it larger. Defaults to 1. */\r\n repetitions?: number;\r\n /** An offset in world units used to shift the texture. Defaults to (0, 0). */\r\n offset?: XAndY;\r\n /** The minimum distance (from the eye to the surface) at which to clamp the texture. Defaults to 1.*/\r\n minDistClamp?: number;\r\n /** The maximum distance (from the eye to the surface) at which to clamp the texture. Defaults to 2^32. */\r\n maxDistClamp?: number;\r\n }\r\n\r\n /** Parameters to define constant level of detail mapping mode, a mode of texture coordinate generation which dynamically creates\r\n * texture cooprdinates so that the level of detail of the texture in the rendered image remains somewhat constant. */\r\n export interface ConstantLodParams {\r\n /** The number of times the texture is repeated. Increasing this will make the texture pattern appear smaller, decreasing it will make it larger. */\r\n repetitions: number;\r\n /** An offset in world units used to shift the texture. */\r\n offset: XAndY;\r\n /** The minimum distance (from the eye to the surface) at which to clamp the texture. */\r\n minDistClamp: number;\r\n /** The maximum distance (from the eye to the surface) at which to clamp the texture. */\r\n maxDistClamp: number;\r\n }\r\n\r\n function compareConstantLodParams(lhs: ConstantLodParams, rhs: ConstantLodParams): number {\r\n return compareNumbers(lhs.repetitions, rhs.repetitions) || compareNumbers(lhs.offset.x, rhs.offset.x) || compareNumbers(lhs.offset.y, rhs.offset.y)\r\n || compareNumbers(lhs.minDistClamp, rhs.minDistClamp) || compareNumbers(lhs.maxDistClamp, rhs.maxDistClamp);\r\n }\r\n\r\n /** Properties used to construct a [[TextureMapping.Params]]. */\r\n export interface ParamProps {\r\n /** The matrix used to map the image to a surface. */\r\n textureMat2x3?: TextureMapping.Trans2x3;\r\n /** The ratio in [0, 1] with which to mix the color sampled from the texture with the surface's color.\r\n * A value of 0.0 uses only the surface color. A value of 1.0 uses only the texture color. A value of 0.5 uses an even mix of both.\r\n * @note This affects only the red, green, and blue components of the color. The alpha sampled from the texture is always multiplied by the surface color's alpha.\r\n * @note Defaults to 1.0\r\n */\r\n textureWeight?: number;\r\n /** The mode by which to map the image to a surface.\r\n * @note Defaults to [[TextureMapping.Mode.Parametric]].\r\n */\r\n mapMode?: TextureMapping.Mode;\r\n /** @internal */\r\n worldMapping?: boolean;\r\n /** True if want to use constant LOD texture mapping for the surface texture. */\r\n useConstantLod?: boolean;\r\n /** Parameters for constantLod mapping mode. */\r\n constantLodProps?: ConstantLodParamProps;\r\n }\r\n\r\n /** Parameters describing how a [[RenderTexture]]'s image is mapped to a surface. */\r\n export class Params {\r\n /** The matrix used to map the image to a surface. */\r\n public textureMatrix: TextureMapping.Trans2x3;\r\n /** The ratio in [0, 1] with which to mix the color sampled from the texture with the element's color.\r\n * A value of 0.0 uses only the element color. A value of 1.0 uses only the texture color.\r\n */\r\n public weight: number;\r\n /** The mode by which to map the image to a surface. */\r\n public mode: TextureMapping.Mode;\r\n /** @internal */\r\n public worldMapping: boolean;\r\n /** True if want to use constant LOD texture mapping for the surface texture. */\r\n public useConstantLod: boolean;\r\n /** Parameters for constantLod mapping mode. */\r\n public constantLodParams: ConstantLodParams;\r\n\r\n public constructor(props?: TextureMapping.ParamProps) {\r\n this.textureMatrix = props?.textureMat2x3 ?? Trans2x3.identity;\r\n this.weight = props?.textureWeight ?? 1;\r\n this.mode = props?.mapMode ?? Mode.Parametric;\r\n this.worldMapping = props?.worldMapping ?? false;\r\n this.useConstantLod = props?.useConstantLod ?? false;\r\n this.constantLodParams = {\r\n repetitions: props?.constantLodProps?.repetitions ?? 1,\r\n offset: props?.constantLodProps?.offset ?? { x: 0, y: 0 },\r\n minDistClamp: props?.constantLodProps?.minDistClamp ?? 1,\r\n maxDistClamp: props?.constantLodProps?.maxDistClamp ?? 4096 * 1024 * 1024,\r\n };\r\n }\r\n\r\n /** An [OrderedComparator]($bentley) that compares these Params against `other`. */\r\n public compare(other: Params): number {\r\n if (this === other) {\r\n return 0;\r\n }\r\n\r\n return compareNumbers(this.weight, other.weight) || compareNumbers(this.mode, other.mode) || compareBooleans(this.worldMapping, other.worldMapping)\r\n || compareBooleans(this.useConstantLod, other.useConstantLod) || this.textureMatrix.compare(other.textureMatrix)\r\n || compareConstantLodParams(this.constantLodParams, other.constantLodParams);\r\n }\r\n\r\n /**\r\n * Generates UV parameters for textured surfaces. Returns undefined on failure.\r\n * @internal\r\n */\r\n public computeUVParams(visitor: IndexedPolyfaceVisitor, transformToImodel: Transform): Point2d[] | undefined {\r\n switch (this.mode) {\r\n default: // Fall through to parametric in default case\r\n case TextureMapping.Mode.Parametric: {\r\n return this.computeParametricUVParams(visitor, this.textureMatrix.transform, !this.worldMapping);\r\n }\r\n case TextureMapping.Mode.Planar: {\r\n const normalIndices = visitor.normalIndex;\r\n if (!normalIndices)\r\n return undefined;\r\n\r\n // Ignore planar mode unless master or sub units for scaleMode and facet is planar\r\n if (!this.worldMapping || (visitor.normalIndex !== undefined && (normalIndices[0] !== normalIndices[1] || normalIndices[0] !== normalIndices[2]))) {\r\n return this.computeParametricUVParams(visitor, this.textureMatrix.transform, !this.worldMapping);\r\n } else {\r\n return this.computePlanarUVParams(visitor, this.textureMatrix.transform);\r\n }\r\n }\r\n case TextureMapping.Mode.ElevationDrape: {\r\n return this.computeElevationDrapeUVParams(visitor, this.textureMatrix.transform, transformToImodel);\r\n }\r\n }\r\n }\r\n\r\n /** Computes UV parameters given a texture mapping mode of parametric. */\r\n private computeParametricUVParams(visitor: IndexedPolyfaceVisitor, uvTransform: Transform, isRelativeUnits: boolean): Point2d[] {\r\n const params: Point2d[] = [];\r\n for (let i = 0; i < visitor.numEdgesThisFacet; i++) {\r\n let param = Point2d.create();\r\n\r\n if (isRelativeUnits || !visitor.tryGetDistanceParameter(i, param)) {\r\n if (!visitor.tryGetNormalizedParameter(i, param)) {\r\n // If mesh does not have facetFaceData, we still want to use the texture coordinates if they are present\r\n param = visitor.getParam(i)!;\r\n }\r\n }\r\n\r\n params.push(uvTransform.multiplyPoint2d(param));\r\n }\r\n return params;\r\n }\r\n\r\n /** Computes UV parameters given a texture mapping mode of planar. The result is stored in the Point2d array given. */\r\n private computePlanarUVParams(visitor: IndexedPolyfaceVisitor, uvTransform: Transform): Point2d[] | undefined {\r\n const params: Point2d[] = [];\r\n const points = visitor.point;\r\n let normal: Vector3d;\r\n\r\n if (visitor.normal === undefined)\r\n normal = points.getPoint3dAtUncheckedPointIndex(0).crossProductToPoints(points.getPoint3dAtUncheckedPointIndex(1), points.getPoint3dAtUncheckedPointIndex(2));\r\n else\r\n normal = visitor.normal.getVector3dAtCheckedVectorIndex(0)!;\r\n\r\n if (!normal.normalize(normal))\r\n return undefined;\r\n\r\n // adjust U texture coordinate to be a continuous length starting at the\r\n // origin. V coordinate stays the same. This mode assumes Z is up vector\r\n\r\n // Flipping normal puts us in a planar coordinate system consistent with MicroStation's display system\r\n normal.scale(-1.0, normal);\r\n\r\n // pick the first vertex normal\r\n const sideVector = Vector3d.create(normal.y, -normal.x, 0.0);\r\n\r\n // if the magnitude of the normal is near zero, the real normal points\r\n // almost straighten up.. In this case, use Y as the up vector to match QV\r\n\r\n const magnitude = sideVector.magnitude();\r\n sideVector.normalize(sideVector); // won't remain undefined if failed due to following check..\r\n\r\n if (magnitude < 1e-3) {\r\n normal.set(0, 0, -1);\r\n sideVector.set(1, 0, 0);\r\n }\r\n\r\n const upVector = sideVector.crossProduct(normal).normalize();\r\n if (!upVector)\r\n return undefined;\r\n\r\n const numEdges = visitor.numEdgesThisFacet;\r\n for (let i = 0; i < numEdges; i++) {\r\n const vector = Vector3d.createFrom(points.getPoint3dAtUncheckedPointIndex(i));\r\n\r\n params.push(Point2d.create(vector.dotProduct(sideVector), vector.dotProduct(upVector)));\r\n uvTransform.multiplyPoint2d(params[i], params[i]);\r\n }\r\n return params;\r\n }\r\n\r\n /** Computes UV parameters given a texture mapping mode of elevation drape. The result is stored in the Point2d array given. */\r\n private computeElevationDrapeUVParams(visitor: IndexedPolyfaceVisitor, uvTransform: Transform, transformToIModel?: Transform): Point2d[] {\r\n const params: Point2d[] = [];\r\n const numEdges = visitor.numEdgesThisFacet;\r\n for (let i = 0; i < numEdges; i++) {\r\n const point = visitor.point.getPoint3dAtUncheckedPointIndex(i);\r\n\r\n if (transformToIModel !== undefined)\r\n transformToIModel.multiplyPoint3d(point, point);\r\n\r\n params.push(Point2d.createFrom(point));\r\n uvTransform.multiplyPoint2d(params[i], params[i]);\r\n }\r\n return params;\r\n }\r\n }\r\n}\r\n\r\nObject.freeze(TextureMapping.Trans2x3.identity);\r\n"]}
|
|
1
|
+
{"version":3,"file":"TextureMapping.js","sourceRoot":"","sources":["../../src/TextureMapping.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Rendering\r\n */\r\n\r\nimport { IndexedPolyfaceVisitor, Matrix3d, Point2d, Point3d, PolyfaceVisitor, Transform, Vector3d, XAndY } from \"@itwin/core-geometry\";\r\nimport { RenderTexture } from \"./RenderTexture\";\r\nimport { compareBooleans, compareBooleansOrUndefined, compareNumbers, compareNumbersOrUndefined, comparePossiblyUndefined } from \"@itwin/core-bentley\";\r\n\r\n/** Defines normal map parameters.\r\n * @beta\r\n */\r\nexport interface NormalMapParams {\r\n /** The texture to use as a normal map. If not present then the pattern map texture will be used as a normal map. */\r\n normalMap?: RenderTexture;\r\n /** True if the Y component stored in the green channel should be negated. By default, positive Y points downward, but some\r\n * normal maps are created with positive Y pointing upward.\r\n */\r\n greenUp?: boolean;\r\n /** Scale factor by which to multiply the components of the normal extracted from [[normalMap]]. */\r\n scale?: number;\r\n /** True if want to use constant LOD texture mapping for the normal map texture. */\r\n useConstantLod?: boolean;\r\n}\r\n\r\nfunction compareNormalMapParams(lhs: NormalMapParams, rhs: NormalMapParams): number {\r\n return comparePossiblyUndefined((lh, rh) => lh.compare(rh), lhs.normalMap, rhs.normalMap)\r\n || compareBooleansOrUndefined(lhs.greenUp, rhs.greenUp) || compareNumbersOrUndefined(lhs.scale, rhs.scale)\r\n || compareBooleansOrUndefined(lhs.useConstantLod, rhs.useConstantLod);\r\n}\r\n\r\n/** Describes how to map a [[RenderTexture]]'s image onto a surface as part of a [[RenderMaterial]].\r\n * @public\r\n */\r\nexport class TextureMapping {\r\n /** The texture to be mapped to the surface. If normalMapParams is present but does not contain a normal map, then texture is used as a normal map rather than a pattern map. */\r\n public readonly texture: RenderTexture;\r\n /** The parameters for normal mapping.\r\n * @beta\r\n */\r\n public normalMapParams?: NormalMapParams;\r\n /** The parameters describing how the textures are mapped to the surface. */\r\n public readonly params: TextureMapping.Params;\r\n\r\n public constructor(tx: RenderTexture, params: TextureMapping.Params) {\r\n this.texture = tx;\r\n this.params = params;\r\n }\r\n\r\n /** @internal */\r\n public computeUVParams(visitor: PolyfaceVisitor, transformToImodel: Transform): Point2d[] | undefined {\r\n return this.params.computeUVParams(visitor as IndexedPolyfaceVisitor, transformToImodel);\r\n }\r\n\r\n /** An [OrderedComparator]($bentley) that compares this mapping against `other`. */\r\n public compare(other: TextureMapping): number {\r\n if (this === other) {\r\n return 0;\r\n }\r\n\r\n return this.texture.compare(other.texture) || this.params.compare(other.params)\r\n || comparePossiblyUndefined((lh, rh) => compareNormalMapParams(lh, rh), this.normalMapParams, other.normalMapParams);\r\n }\r\n}\r\n\r\n/** @public */\r\nexport namespace TextureMapping {\r\n /** Enumerates the possible texture mapping modes. */\r\n export enum Mode {\r\n None = -1,\r\n Parametric = 0,\r\n ElevationDrape = 1,\r\n Planar = 2,\r\n /** @internal */\r\n DirectionalDrape = 3,\r\n /** @internal */\r\n Cubic = 4,\r\n /** @internal */\r\n Spherical = 5,\r\n /** @internal */\r\n Cylindrical = 6,\r\n /** @internal */\r\n Solid = 7,\r\n /** @internal Only valid for lights */\r\n FrontProject = 8,\r\n }\r\n\r\n /** A 2x3 matrix for mapping a texture image to a surface. */\r\n export class Trans2x3 {\r\n /** The 3x4 transform produced from the 2x3 matrix. */\r\n public readonly transform: Transform;\r\n\r\n /** Construct from the two rows of the matrix:\r\n * ```\r\n * | m00 m01 originX |\r\n * | m10 m11 originY |\r\n * ```\r\n * Producing the [Transform]($core-geometry):\r\n * ```\r\n * | m00 m01 0 originX |\r\n * | m10 m11 0 originY |\r\n * | 0 0 1 0 |\r\n * ```\r\n */\r\n public constructor(m00 = 1, m01 = 0, originX = 0, m10 = 0, m11 = 1, originY = 0) {\r\n const origin = new Point3d(originX, originY, 0);\r\n const matrix = Matrix3d.createRowValues(m00, m01, 0, m10, m11, 0, 0, 0, 1);\r\n this.transform = Transform.createRefs(origin, matrix);\r\n }\r\n\r\n /** An immutable 2x3 identity matrix. */\r\n public static readonly identity = new Trans2x3();\r\n\r\n /** An [OrderedComparator]($bentley) that compares this Trans2x3 against `other`. */\r\n public compare(other: Trans2x3): number {\r\n if (this === other) {\r\n return 0;\r\n }\r\n\r\n const originDiff = compareNumbers(this.transform.origin.x, other.transform.origin.x) || compareNumbers(this.transform.origin.y, other.transform.origin.y);\r\n if (originDiff !== 0) {\r\n return originDiff;\r\n }\r\n\r\n for (const i of [0, 1, 3, 4]) {\r\n const matDiff = compareNumbers(this.transform.matrix.coffs[i], other.transform.matrix.coffs[i]);\r\n if (matDiff !== 0) {\r\n return matDiff;\r\n }\r\n }\r\n\r\n return 0;\r\n }\r\n }\r\n\r\n /** Properties used to construct a [[TextureMapping.ConstantLodParams]]. */\r\n export interface ConstantLodParamProps {\r\n /** The number of times the texture is repeated. Increasing this will make the texture pattern appear smaller, decreasing it will make it larger. Defaults to 1. */\r\n repetitions?: number;\r\n /** An offset in world units used to shift the texture. Defaults to (0, 0). */\r\n offset?: XAndY;\r\n /** The minimum distance (from the eye to the surface) at which to clamp the texture. Defaults to 1.*/\r\n minDistClamp?: number;\r\n /** The maximum distance (from the eye to the surface) at which to clamp the texture. Defaults to 2^32. */\r\n maxDistClamp?: number;\r\n }\r\n\r\n /** Parameters to define constant level of detail mapping mode, a mode of texture coordinate generation which dynamically creates\r\n * texture cooprdinates so that the level of detail of the texture in the rendered image remains somewhat constant. */\r\n export interface ConstantLodParams {\r\n /** The number of times the texture is repeated. Increasing this will make the texture pattern appear smaller, decreasing it will make it larger. */\r\n repetitions: number;\r\n /** An offset in world units used to shift the texture. */\r\n offset: XAndY;\r\n /** The minimum distance (from the eye to the surface) at which to clamp the texture. */\r\n minDistClamp: number;\r\n /** The maximum distance (from the eye to the surface) at which to clamp the texture. */\r\n maxDistClamp: number;\r\n }\r\n\r\n function compareConstantLodParams(lhs: ConstantLodParams, rhs: ConstantLodParams): number {\r\n return compareNumbers(lhs.repetitions, rhs.repetitions) || compareNumbers(lhs.offset.x, rhs.offset.x) || compareNumbers(lhs.offset.y, rhs.offset.y)\r\n || compareNumbers(lhs.minDistClamp, rhs.minDistClamp) || compareNumbers(lhs.maxDistClamp, rhs.maxDistClamp);\r\n }\r\n\r\n /** Properties used to construct a [[TextureMapping.Params]]. */\r\n export interface ParamProps {\r\n /** The matrix used to map the image to a surface. */\r\n textureMat2x3?: TextureMapping.Trans2x3;\r\n /** The ratio in [0, 1] with which to mix the color sampled from the texture with the surface's color.\r\n * A value of 0.0 uses only the surface color. A value of 1.0 uses only the texture color. A value of 0.5 uses an even mix of both.\r\n * @note This affects only the red, green, and blue components of the color. The alpha sampled from the texture is always multiplied by the surface color's alpha.\r\n * @note Defaults to 1.0\r\n */\r\n textureWeight?: number;\r\n /** The mode by which to map the image to a surface.\r\n * @note Defaults to [[TextureMapping.Mode.Parametric]].\r\n */\r\n mapMode?: TextureMapping.Mode;\r\n /** @internal */\r\n worldMapping?: boolean;\r\n /** True if want to use constant LOD texture mapping for the surface texture. */\r\n useConstantLod?: boolean;\r\n /** Parameters for constantLod mapping mode. */\r\n constantLodProps?: ConstantLodParamProps;\r\n }\r\n\r\n /** Parameters describing how a [[RenderTexture]]'s image is mapped to a surface. */\r\n export class Params {\r\n /** The matrix used to map the image to a surface. */\r\n public textureMatrix: TextureMapping.Trans2x3;\r\n /** The ratio in [0, 1] with which to mix the color sampled from the texture with the element's color.\r\n * A value of 0.0 uses only the element color. A value of 1.0 uses only the texture color.\r\n */\r\n public weight: number;\r\n /** The mode by which to map the image to a surface. */\r\n public mode: TextureMapping.Mode;\r\n /** @internal */\r\n public worldMapping: boolean;\r\n /** True if want to use constant LOD texture mapping for the surface texture. */\r\n public useConstantLod: boolean;\r\n /** Parameters for constantLod mapping mode. */\r\n public constantLodParams: ConstantLodParams;\r\n\r\n public constructor(props?: TextureMapping.ParamProps) {\r\n this.textureMatrix = props?.textureMat2x3 ?? Trans2x3.identity;\r\n this.weight = props?.textureWeight ?? 1;\r\n this.mode = props?.mapMode ?? Mode.Parametric;\r\n this.worldMapping = props?.worldMapping ?? false;\r\n this.useConstantLod = props?.useConstantLod ?? false;\r\n this.constantLodParams = {\r\n repetitions: props?.constantLodProps?.repetitions ?? 1,\r\n offset: props?.constantLodProps?.offset ?? { x: 0, y: 0 },\r\n minDistClamp: props?.constantLodProps?.minDistClamp ?? 1,\r\n maxDistClamp: props?.constantLodProps?.maxDistClamp ?? 4096 * 1024 * 1024,\r\n };\r\n }\r\n\r\n /** An [OrderedComparator]($bentley) that compares these Params against `other`. */\r\n public compare(other: Params): number {\r\n if (this === other) {\r\n return 0;\r\n }\r\n\r\n return compareNumbers(this.weight, other.weight) || compareNumbers(this.mode, other.mode) || compareBooleans(this.worldMapping, other.worldMapping)\r\n || compareBooleans(this.useConstantLod, other.useConstantLod) || this.textureMatrix.compare(other.textureMatrix)\r\n || compareConstantLodParams(this.constantLodParams, other.constantLodParams);\r\n }\r\n\r\n /**\r\n * Generates UV parameters for textured surfaces. Returns undefined on failure.\r\n * @internal\r\n */\r\n public computeUVParams(visitor: IndexedPolyfaceVisitor, transformToImodel: Transform): Point2d[] | undefined {\r\n switch (this.mode) {\r\n default: // Fall through to parametric in default case\r\n case TextureMapping.Mode.Parametric: {\r\n return this.computeParametricUVParams(visitor, this.textureMatrix.transform, !this.worldMapping);\r\n }\r\n case TextureMapping.Mode.Planar: {\r\n const normalIndices = visitor.normalIndex;\r\n if (!normalIndices)\r\n return undefined;\r\n\r\n // Ignore planar mode unless master or sub units for scaleMode and facet is planar\r\n if (!this.worldMapping || (visitor.normalIndex !== undefined && (normalIndices[0] !== normalIndices[1] || normalIndices[0] !== normalIndices[2]))) {\r\n return this.computeParametricUVParams(visitor, this.textureMatrix.transform, !this.worldMapping);\r\n } else {\r\n return this.computePlanarUVParams(visitor, this.textureMatrix.transform);\r\n }\r\n }\r\n case TextureMapping.Mode.ElevationDrape: {\r\n return this.computeElevationDrapeUVParams(visitor, this.textureMatrix.transform, transformToImodel);\r\n }\r\n }\r\n }\r\n\r\n /** Computes UV parameters given a texture mapping mode of parametric. */\r\n private computeParametricUVParams(visitor: IndexedPolyfaceVisitor, uvTransform: Transform, isRelativeUnits: boolean): Point2d[] {\r\n const params: Point2d[] = [];\r\n for (let i = 0; i < visitor.numEdgesThisFacet; i++) {\r\n let param = Point2d.create();\r\n\r\n if (isRelativeUnits || !visitor.tryGetDistanceParameter(i, param)) {\r\n if (!visitor.tryGetNormalizedParameter(i, param)) {\r\n // If mesh does not have facetFaceData, we still want to use the texture coordinates if they are present\r\n param = visitor.getParam(i)!;\r\n }\r\n }\r\n\r\n params.push(uvTransform.multiplyPoint2d(param));\r\n }\r\n return params;\r\n }\r\n\r\n /** Computes UV parameters given a texture mapping mode of planar. The result is stored in the Point2d array given. */\r\n private computePlanarUVParams(visitor: IndexedPolyfaceVisitor, uvTransform: Transform): Point2d[] | undefined {\r\n const params: Point2d[] = [];\r\n const points = visitor.point;\r\n let normal: Vector3d;\r\n\r\n if (visitor.normal === undefined)\r\n normal = points.getPoint3dAtUncheckedPointIndex(0).crossProductToPoints(points.getPoint3dAtUncheckedPointIndex(1), points.getPoint3dAtUncheckedPointIndex(2));\r\n else\r\n normal = visitor.normal.getVector3dAtCheckedVectorIndex(0)!;\r\n\r\n if (!normal.normalize(normal))\r\n return undefined;\r\n\r\n // adjust U texture coordinate to be a continuous length starting at the\r\n // origin. V coordinate stays the same. This mode assumes Z is up vector\r\n\r\n // Flipping normal puts us in a planar coordinate system consistent with MicroStation's display system\r\n normal.scale(-1.0, normal);\r\n\r\n // pick the first vertex normal\r\n const sideVector = Vector3d.create(normal.y, -normal.x, 0.0);\r\n\r\n // if the magnitude of the normal is near zero, the real normal points\r\n // almost straighten up.. In this case, use Y as the up vector to match QV\r\n\r\n const magnitude = sideVector.magnitude();\r\n sideVector.normalize(sideVector); // won't remain undefined if failed due to following check..\r\n\r\n if (magnitude < 1e-3) {\r\n normal.set(0, 0, -1);\r\n sideVector.set(1, 0, 0);\r\n }\r\n\r\n const upVector = sideVector.crossProduct(normal).normalize();\r\n if (!upVector)\r\n return undefined;\r\n\r\n const numEdges = visitor.numEdgesThisFacet;\r\n for (let i = 0; i < numEdges; i++) {\r\n const vector = Vector3d.createFrom(points.getPoint3dAtUncheckedPointIndex(i));\r\n\r\n params.push(Point2d.create(vector.dotProduct(sideVector), vector.dotProduct(upVector)));\r\n uvTransform.multiplyPoint2d(params[i], params[i]);\r\n }\r\n return params;\r\n }\r\n\r\n /** Computes UV parameters given a texture mapping mode of elevation drape. The result is stored in the Point2d array given. */\r\n private computeElevationDrapeUVParams(visitor: IndexedPolyfaceVisitor, uvTransform: Transform, transformToIModel?: Transform): Point2d[] {\r\n const params: Point2d[] = [];\r\n const numEdges = visitor.numEdgesThisFacet;\r\n for (let i = 0; i < numEdges; i++) {\r\n const point = visitor.point.getPoint3dAtUncheckedPointIndex(i);\r\n\r\n if (transformToIModel !== undefined)\r\n transformToIModel.multiplyPoint3d(point, point);\r\n\r\n params.push(Point2d.createFrom(point));\r\n uvTransform.multiplyPoint2d(params[i], params[i]);\r\n }\r\n return params;\r\n }\r\n }\r\n}\r\n\r\nObject.freeze(TextureMapping.Trans2x3.identity);\r\n"]}
|
package/lib/esm/Tween.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tween.d.ts","sourceRoot":"","sources":["../../src/Tween.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH;;;;;;;;;GASG;
|
|
1
|
+
{"version":3,"file":"Tween.d.ts","sourceRoot":"","sources":["../../src/Tween.ts"],"names":[],"mappings":"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"}
|
package/lib/esm/Tween.js
CHANGED
|
@@ -17,7 +17,6 @@
|
|
|
17
17
|
*/
|
|
18
18
|
// cSpell:ignore tweens yoyo catmull
|
|
19
19
|
/* eslint-disable guard-for-in */
|
|
20
|
-
/* eslint-disable @typescript-eslint/prefer-for-of */
|
|
21
20
|
/* eslint-disable @typescript-eslint/naming-convention */
|
|
22
21
|
/** A group of `Tween`s. This class is called `Group` in the tween.js library.
|
|
23
22
|
* @note Unlike tween.js, we do NOT create any global instances of this class
|
package/lib/esm/Tween.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tween.js","sourceRoot":"","sources":["../../src/Tween.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH;;;;;;;;;GASG;AAEH,oCAAoC;AACpC,iCAAiC;AACjC,qDAAqD;AACrD,yDAAyD;AAEzD;;;;;;GAMG;AACH,MAAM,OAAO,MAAM;IAAnB;QACU,YAAO,GAAQ,EAAE,CAAC;QAClB,6BAAwB,GAAQ,EAAE,CAAC;QACnC,YAAO,GAAG,CAAC,CAAC;IA+EtB,CAAC;IA9EQ,MAAM,KAAK,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAEnC,MAAM;QACX,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3E,CAAC;IAEM,SAAS;QACd,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;IACpB,CAAC;IAEM,GAAG,CAAC,KAAY;QACrB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC;QACpC,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC;IACvD,CAAC;IAEM,MAAM,CAAC,KAAY;QACxB,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IACtD,CAAC;IAEM,MAAM,CAAC,IAAa,EAAE,QAAkB;QAC7C,IAAI,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEzC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YACvB,OAAO,KAAK,CAAC;QAEf,IAAI,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QAE9C,oEAAoE;QACpE,gEAAgE;QAChE,wEAAwE;QACxE,oEAAoE;QACpE,+BAA+B;QAC/B,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,IAAI,CAAC,wBAAwB,GAAG,EAAE,CAAC;YAEnC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBACpC,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC;oBAC1C,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC;oBAEzB,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;oBAC/B,CAAC;gBACH,CAAC;YACH,CAAC;YAED,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QACxD,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,mGAAmG;IAC5F,MAAM,CAAC,IAAS,EAAE,IASxB;QACC,MAAM,CAAC,GAAG,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAChC,IAAI,IAAI,EAAE,CAAC;YACT,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;iBACV,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC;iBACvB,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC;iBACvB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;iBACjB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;iBACnB,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC;iBACjC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC/B,IAAI,IAAI,CAAC,KAAK;gBACZ,CAAC,CAAC,KAAK,EAAE,CAAC;QACd,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC;CACF;AAuBD;;;GAGG;AACH,MAAM,OAAO,KAAK;IAyBhB,YAAoB,MAAc,EAAU,OAAY;QAApC,WAAM,GAAN,MAAM,CAAQ;QAAU,YAAO,GAAP,OAAO,CAAK;QAxBhD,cAAS,GAAG,KAAK,CAAC;QAElB,iBAAY,GAAQ,EAAE,CAAC;QACvB,eAAU,GAAQ,EAAE,CAAC;QACrB,uBAAkB,GAAQ,EAAE,CAAC;QAC7B,cAAS,GAAG,IAAI,CAAC;QACjB,YAAO,GAAG,CAAC,CAAC;QAEZ,UAAK,GAAG,KAAK,CAAC;QACd,eAAU,GAAG,KAAK,CAAC;QACnB,cAAS,GAAG,KAAK,CAAC;QAClB,eAAU,GAAG,CAAC,CAAC;QAEf,oBAAe,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;QACrC,2BAAsB,GAAG,aAAa,CAAC,MAAM,CAAC;QAC9C,mBAAc,GAAY,EAAE,CAAC;QAE7B,0BAAqB,GAAG,KAAK,CAAC;QAQpC,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;IAC7B,CAAC;IAEM,KAAK,KAAK,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACnC,IAAW,SAAS,KAAK,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IAClD,IAAW,QAAQ,KAAK,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IAEzC,EAAE,CAAC,UAAe,EAAE,QAAiB;QAC1C,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAE5C,IAAI,QAAQ,KAAK,SAAS;YACxB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAE5B,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,QAAQ,CAAC,CAAS;QACvB,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,IAAsB;QACjC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACtB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;QACnC,IAAI,CAAC,UAAU,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QACpH,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC;QAEnC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACvC,mDAAmD;YACnD,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,YAAY,KAAK,EAAE,CAAC;gBAC/C,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,KAAK,CAAC;oBACxC,SAAS;gBAEX,qEAAqE;gBACrE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;YACzF,CAAC;YAED,0EAA0E;YAC1E,gDAAgD;YAChD,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,SAAS;gBACtC,SAAS;YAEX,0CAA0C;YAC1C,IAAI,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,KAAK,WAAW;gBACtD,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAEvD,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,YAAY,KAAK,CAAC,KAAK,KAAK;gBAC1D,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAC,2CAA2C;YAEjF,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACvE,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,IAAI;QACT,IAAI,CAAC,IAAI,CAAC,UAAU;YAClB,OAAO,IAAI,CAAC;QAEd,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACzB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QAEvB,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS;YACpC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAErC,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,GAAG;QACR,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,IAAY;QACvB,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,UAAU;YACpC,OAAO,IAAI,CAAC;QAEd,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,WAAW,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAC1D,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,MAAM,CAAC,IAAa;QACzB,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,UAAU;YACrC,OAAO,IAAI,CAAC;QAEd,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,UAAW,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,WAAY,CAAC;QACjF,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;QACrB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,iBAAiB;QACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,GAAG,gBAAgB,EAAE,CAAC,EAAE,EAAE,CAAC;YACzF,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAChC,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,KAAa;QACxB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,MAAe;QAC1B,IAAI,SAAS,KAAK,MAAM;YACtB,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,MAAM,CAAC,KAAa;QACzB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,WAAW,CAAC,MAAc;QAC/B,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,IAAI,CAAC,IAAa;QACvB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,MAAM,CAAC,cAA+B;QAC3C,IAAI,cAAc;YAChB,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;QACxC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,aAAa,CAAC,qBAA6C;QAChE,IAAI,qBAAqB;YACvB,IAAI,CAAC,sBAAsB,GAAG,qBAAqB,CAAC;QACtD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,GAAG,MAAe;QAC7B,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,OAAO,CAAC,QAAuB;QACpC,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,QAAQ,CAAC,QAAwB;QACtC,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,QAAQ,CAAC,QAAuB;QACrC,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,UAAU,CAAC,QAAwB;QACxC,IAAI,CAAC,mBAAmB,GAAG,QAAQ,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,MAAM,CAAC,QAAuB;QACnC,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,MAAM,CAAC,IAAY;QACxB,IAAI,SAAS,KAAK,IAAI,CAAC,UAAU,IAAI,IAAI,GAAG,IAAI,CAAC,UAAU;YACzD,OAAO,IAAI,CAAC;QAEd,IAAI,IAAI,CAAC,qBAAqB,KAAK,KAAK,EAAE,CAAC;YACzC,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;gBACxC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACtC,CAAC;YAED,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;QACpC,CAAC;QAED,IAAI,OAAO,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;QACxD,OAAO,GAAG,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,IAAI,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;QAE9D,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QAE5C,IAAI,QAAa,CAAC;QAElB,KAAK,QAAQ,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACjC,iEAAiE;YACjE,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,SAAS;gBAC3C,SAAS;YAEX,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC/C,IAAI,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YAEpC,IAAI,GAAG,YAAY,KAAK,EAAE,CAAC;gBACzB,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,sBAAsB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACnE,CAAC;iBAAM,CAAC;gBACN,gEAAgE;gBAChE,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE,CAAC;oBAE9B,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG;wBAChD,GAAG,GAAG,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;;wBAE9B,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;gBAC1B,CAAC;gBAED,0CAA0C;gBAC1C,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,QAAQ;oBAC3B,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC;YAC3D,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,iBAAiB,KAAK,SAAS;YACtC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAEhD,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;YAClB,IAAI,IAAI,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;gBACrB,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;oBACxB,IAAI,CAAC,OAAO,EAAE,CAAC;gBAEjB,8DAA8D;gBAC9D,KAAK,QAAQ,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBAEzC,IAAI,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;wBACpD,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;oBAChH,CAAC;oBAED,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;wBACf,MAAM,GAAG,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;wBAE9C,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;wBAC9D,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC;oBAClC,CAAC;oBAED,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;gBAClE,CAAC;gBAED,IAAI,IAAI,CAAC,KAAK;oBACZ,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;gBAEnC,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS;oBACrC,IAAI,CAAC,UAAU,GAAG,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC;;oBAE/C,IAAI,CAAC,UAAU,GAAG,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC;gBAE3C,IAAI,IAAI,CAAC,iBAAiB,KAAK,SAAS;oBACtC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAEvC,OAAO,IAAI,CAAC;YAEd,CAAC;iBAAM,CAAC;gBAEN,IAAI,IAAI,CAAC,mBAAmB,KAAK,SAAS;oBACxC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAEzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,GAAG,gBAAgB,EAAE,CAAC,EAAE,EAAE,CAAC;oBACzF,iEAAiE;oBACjE,8EAA8E;oBAC9E,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;gBACjE,CAAC;gBACD,OAAO,KAAK,CAAC;YACf,CAAC;QAEH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,CAAS,EAAE,EAAE;YAClB,OAAO,CAAC,CAAC;QACX,CAAC;KACF;IAED,SAAS,EAAE;QACT,EAAE,EAAE,CAAC,CAAS,EAAE,EAAE;YAChB,OAAO,CAAC,GAAG,CAAC,CAAC;QACf,CAAC;QAED,GAAG,EAAE,CAAC,CAAS,EAAE,EAAE;YACjB,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACrB,CAAC;QAED,KAAK,EAAE,CAAC,CAAS,EAAE,EAAE;YACnB,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;gBACjB,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;YACrB,CAAC;YACD,OAAO,CAAE,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACrC,CAAC;KACF;IAED,KAAK,EAAE;QACL,EAAE,EAAE,CAAC,CAAS,EAAE,EAAE;YAChB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;QAED,GAAG,EAAE,CAAC,CAAS,EAAE,EAAE;YACjB,OAAO,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACzB,CAAC;QAED,KAAK,EAAE,CAAC,CAAS,EAAE,EAAE;YACnB,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;gBACjB,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACzB,CAAC;YAED,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACtC,CAAC;KACF;IAED,OAAO,EAAE;QACP,EAAE,EAAE,CAAC,CAAS,EAAE,EAAE;YAChB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACvB,CAAC;QAED,GAAG,EAAE,CAAC,CAAS,EAAE,EAAE;YACjB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAC/B,CAAC;QAED,KAAK,EAAE,CAAC,CAAS,EAAE,EAAE;YACnB,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;gBACjB,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC7B,CAAC;YAED,OAAO,CAAE,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5C,CAAC;KACF;IAED,OAAO,EAAE;QACP,EAAE,EAAE,CAAC,CAAS,EAAE,EAAE;YAChB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;QAED,GAAG,EAAE,CAAC,CAAS,EAAE,EAAE;YACjB,OAAO,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACjC,CAAC;QAED,KAAK,EAAE,CAAC,CAAS,EAAE,EAAE;YACnB,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;gBACjB,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACjC,CAAC;YAED,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9C,CAAC;KACF;IAED,UAAU,EAAE;QACV,EAAE,EAAE,CAAC,CAAS,EAAE,EAAE;YAChB,OAAO,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QACvC,CAAC;QAED,GAAG,EAAE,CAAC,CAAS,EAAE,EAAE;YACjB,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QACnC,CAAC;QAED,KAAK,EAAE,CAAC,CAAS,EAAE,EAAE;YACnB,OAAO,GAAG,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;QAC3C,CAAC;KACF;IAED,WAAW,EAAE;QACX,EAAE,EAAE,CAAC,CAAS,EAAE,EAAE;YAChB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QAC7C,CAAC;QAED,GAAG,EAAE,CAAC,CAAS,EAAE,EAAE;YACjB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAE,EAAE,GAAG,CAAC,CAAC,CAAC;QACjD,CAAC;QAED,KAAK,EAAE,CAAC,CAAS,EAAE,EAAE;YACnB,IAAI,CAAC,KAAK,CAAC;gBACT,OAAO,CAAC,CAAC;YAEX,IAAI,CAAC,KAAK,CAAC;gBACT,OAAO,CAAC,CAAC;YAEX,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;gBACd,OAAO,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;YAErC,OAAO,GAAG,GAAG,CAAC,CAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACnD,CAAC;KACF;IAED,QAAQ,EAAE;QACR,EAAE,EAAE,CAAC,CAAS,EAAE,EAAE;YAChB,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAClC,CAAC;QAED,GAAG,EAAE,CAAC,CAAS,EAAE,EAAE;YACjB,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAClC,CAAC;QAED,KAAK,EAAE,CAAC,CAAS,EAAE,EAAE;YACnB,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;gBACd,OAAO,CAAE,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAE5C,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACjD,CAAC;KACF;IAED,OAAO,EAAE;QACP,EAAE,EAAE,CAAC,CAAS,EAAE,EAAE;YAChB,IAAI,CAAC,KAAK,CAAC;gBACT,OAAO,CAAC,CAAC;YAEX,IAAI,CAAC,KAAK,CAAC;gBACT,OAAO,CAAC,CAAC;YAEX,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;QACxE,CAAC;QAED,GAAG,EAAE,CAAC,CAAS,EAAE,EAAE;YACjB,IAAI,CAAC,KAAK,CAAC;gBACT,OAAO,CAAC,CAAC;YAEX,IAAI,CAAC,KAAK,CAAC;gBACT,OAAO,CAAC,CAAC;YAEX,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;QACtE,CAAC;QAED,KAAK,EAAE,CAAC,CAAS,EAAE,EAAE;YACnB,IAAI,CAAC,KAAK,CAAC;gBACT,OAAO,CAAC,CAAC;YAEX,IAAI,CAAC,KAAK,CAAC;gBACT,OAAO,CAAC,CAAC;YAEX,CAAC,IAAI,CAAC,CAAC;YAEP,IAAI,CAAC,GAAG,CAAC;gBACP,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;YAE9E,OAAO,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;QAClF,CAAC;KACF;IAED,IAAI,EAAE;QACJ,EAAE,EAAE,CAAC,CAAS,EAAE,EAAE;YAChB,MAAM,CAAC,GAAG,OAAO,CAAC;YAClB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACnC,CAAC;QAED,GAAG,EAAE,CAAC,CAAS,EAAE,EAAE;YACjB,MAAM,CAAC,GAAG,OAAO,CAAC;YAClB,OAAO,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;QACzC,CAAC;QAED,KAAK,EAAE,CAAC,CAAS,EAAE,EAAE;YACnB,MAAM,CAAC,GAAG,OAAO,GAAG,KAAK,CAAC;YAC1B,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;gBACd,OAAO,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAE3C,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACtD,CAAC;KACF;IAED,MAAM,EAAE;QACN,EAAE,EAAE,CAAC,CAAS,EAAE,EAAE;YAChB,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACtC,CAAC;QAED,GAAG,EAAE,CAAC,CAAS,EAAE,EAAE;YACjB,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC;gBAChB,OAAO,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC;YACxB,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC;gBAChB,OAAO,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;YACjD,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC;gBAClB,OAAO,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;YACpD,OAAO,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC;QACvD,CAAC;QAED,KAAK,EAAE,CAAC,CAAS,EAAE,EAAE;YACnB,IAAI,CAAC,GAAG,GAAG;gBACT,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;YAEvC,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC;QAClD,CAAC;KACF;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IAE3B,MAAM,EAAE,CAAC,CAAM,EAAE,CAAS,EAAE,EAAE;QAC5B,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QACvB,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAChB,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACxB,MAAM,EAAE,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC;QAEtC,IAAI,CAAC,GAAG,CAAC;YACP,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAE3B,IAAI,CAAC,GAAG,CAAC;YACP,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QAEnC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,EAAE,CAAC,CAAM,EAAE,CAAS,EAAE,EAAE;QAC5B,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QACvB,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QACpB,MAAM,EAAE,GAAG,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC;QAEzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;YACzB,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAErD,OAAO,CAAC,CAAC;IACX,CAAC;IAED,UAAU,EAAE,CAAC,CAAM,EAAE,CAAS,EAAE,EAAE;QAChC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QACvB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACd,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACtB,MAAM,EAAE,GAAG,aAAa,CAAC,KAAK,CAAC,UAAU,CAAC;QAE1C,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAClB,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBACV,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAClC,CAAC;YACD,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QAC7E,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,GAAG,CAAC;gBACP,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAExD,IAAI,CAAC,GAAG,CAAC;gBACP,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAEnE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QAC/F,CAAC;IACH,CAAC;IAED,KAAK,EAAE;QACL,MAAM,EAAE,CAAC,EAAU,EAAE,EAAU,EAAE,CAAS,EAAE,EAAE;YAC5C,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;QAC5B,CAAC;QAED,SAAS,EAAE,CAAC,CAAS,EAAE,CAAS,EAAE,EAAE;YAClC,MAAM,EAAE,GAAG,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC;YACzC,OAAO,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACnC,CAAC;QAED,SAAS,EAAE,CAAC,GAAG,EAAE;YACf,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACd,OAAO,CAAC,CAAS,EAAE,EAAE;gBACnB,IAAI,CAAC,GAAG,CAAC,CAAC;gBAEV,IAAI,CAAC,CAAC,CAAC,CAAC;oBACN,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;gBAEd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;oBACxB,CAAC,IAAI,CAAC,CAAC;gBAET,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBACT,OAAO,CAAC,CAAC;YACX,CAAC,CAAC;QAEJ,CAAC,CAAC,EAAE;QAEJ,UAAU,EAAE,CAAC,EAAU,EAAE,EAAU,EAAE,EAAU,EAAE,EAAU,EAAE,CAAS,EAAE,EAAE;YACxE,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC;YAC3B,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC;YAC3B,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;YACjB,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC;YAClB,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAE,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC;QACjG,CAAC;KACF;CACF,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Tween\r\n */\r\n\r\n/**\r\n * Adapted from:\r\n *\r\n * Tween.js - Licensed under the MIT license\r\n * https://github.com/tweenjs/tween.js\r\n * ----------------------------------------------\r\n *\r\n * See https://github.com/tweenjs/tween.js/graphs/contributors for the full list of contributors.\r\n * Thank you all, you're awesome!\r\n */\r\n\r\n// cSpell:ignore tweens yoyo catmull\r\n/* eslint-disable guard-for-in */\r\n/* eslint-disable @typescript-eslint/prefer-for-of */\r\n/* eslint-disable @typescript-eslint/naming-convention */\r\n\r\n/** A group of `Tween`s. This class is called `Group` in the tween.js library.\r\n * @note Unlike tween.js, we do NOT create any global instances of this class\r\n * like the global object `TWEEN` in tween.js. You must create an instance of this class, and then create [[Tween]]s by\r\n * calling [[Tweens.create]] or by calling `new Tween()` and pass your Group as its first argument.\r\n * @see The [tween.js users guide](https://github.com/tweenjs/tween.js/blob/master/docs/user_guide.md)\r\n * @public\r\n */\r\nexport class Tweens {\r\n private _tweens: any = {};\r\n private _tweensAddedDuringUpdate: any = {};\r\n private _nextId = 0;\r\n public nextId() { return this._nextId++; }\r\n\r\n public getAll() {\r\n return Object.keys(this._tweens).map((tweenId) => this._tweens[tweenId]);\r\n }\r\n\r\n public removeAll() {\r\n this._tweens = {};\r\n }\r\n\r\n public add(tween: Tween) {\r\n this._tweens[tween.getId()] = tween;\r\n this._tweensAddedDuringUpdate[tween.getId()] = tween;\r\n }\r\n\r\n public remove(tween: Tween) {\r\n delete this._tweens[tween.getId()];\r\n delete this._tweensAddedDuringUpdate[tween.getId()];\r\n }\r\n\r\n public update(time?: number, preserve?: boolean) {\r\n let tweenIds = Object.keys(this._tweens);\r\n\r\n if (tweenIds.length === 0)\r\n return false;\r\n\r\n time = time !== undefined ? time : Date.now();\r\n\r\n // Tweens are updated in \"batches\". If you add a new tween during an\r\n // update, then the new tween will be updated in the next batch.\r\n // If you remove a tween during an update, it may or may not be updated.\r\n // However, if the removed tween was added during the current batch,\r\n // then it will not be updated.\r\n while (tweenIds.length > 0) {\r\n this._tweensAddedDuringUpdate = {};\r\n\r\n for (const tweenId of tweenIds) {\r\n const tween = this._tweens[tweenId];\r\n if (tween && tween.update(time) === false) {\r\n tween._isPlaying = false;\r\n\r\n if (!preserve) {\r\n delete this._tweens[tweenId];\r\n }\r\n }\r\n }\r\n\r\n tweenIds = Object.keys(this._tweensAddedDuringUpdate);\r\n }\r\n\r\n return true;\r\n }\r\n\r\n /** Create a new Tween owned by this Group. Equivalent to `new TWEEN.Tween` in tween.js library. */\r\n public create(from: any, opts?: {\r\n to: any;\r\n duration: number;\r\n onUpdate: UpdateCallback;\r\n onComplete?: TweenCallback;\r\n delay?: number;\r\n start?: boolean;\r\n easing?: EasingFunction;\r\n interpolation?: InterpolationFunction;\r\n }) {\r\n const t = new Tween(this, from);\r\n if (opts) {\r\n t.to(opts.to)\r\n .duration(opts.duration)\r\n .onUpdate(opts.onUpdate)\r\n .delay(opts.delay)\r\n .easing(opts.easing)\r\n .interpolation(opts.interpolation)\r\n .onComplete(opts.onComplete);\r\n if (opts.start)\r\n t.start();\r\n }\r\n return t;\r\n }\r\n}\r\n\r\n/**\r\n * @public\r\n * @extensions\r\n */\r\nexport type TweenCallback = (obj: any) => void;\r\n/**\r\n * @public\r\n * @extensions\r\n */\r\nexport type UpdateCallback = (obj: any, t: number) => void;\r\n/**\r\n * @public\r\n * @extensions\r\n */\r\nexport type EasingFunction = (k: number) => number;\r\n/**\r\n * @public\r\n * @extensions\r\n */\r\nexport type InterpolationFunction = (v: any, k: number) => number;\r\n\r\n/** A Tween for interpolating values of an object. Instances of this class are owned by a `Tweens` group.\r\n * @see The [tween.js users guide](https://github.com/tweenjs/tween.js/blob/master/docs/user_guide.md)\r\n * @public\r\n */\r\nexport class Tween {\r\n private _isPaused = false;\r\n private _pauseStart?: number;\r\n private _valuesStart: any = {};\r\n private _valuesEnd: any = {};\r\n private _valuesStartRepeat: any = {};\r\n private _duration = 1000;\r\n private _repeat = 0;\r\n private _repeatDelayTime?: number;\r\n private _yoyo = false;\r\n private _isPlaying = false;\r\n private _reversed = false;\r\n private _delayTime = 0;\r\n private _startTime?: number;\r\n private _easingFunction = Easing.Linear.None;\r\n private _interpolationFunction = Interpolation.Linear;\r\n private _chainedTweens: Tween[] = [];\r\n private _onStartCallback?: TweenCallback;\r\n private _onStartCallbackFired = false;\r\n private _onUpdateCallback?: UpdateCallback;\r\n private _onRepeatCallback?: TweenCallback;\r\n private _onCompleteCallback?: TweenCallback;\r\n private _onStopCallback?: TweenCallback;\r\n private _id: number;\r\n\r\n constructor(private _group: Tweens, private _object: any) {\r\n this._id = _group.nextId();\r\n }\r\n\r\n public getId() { return this._id; }\r\n public get isPlaying() { return this._isPlaying; }\r\n public get isPaused() { return this._isPaused; }\r\n\r\n public to(properties: any, duration?: number) {\r\n this._valuesEnd = Object.create(properties);\r\n\r\n if (duration !== undefined)\r\n this._duration = duration;\r\n\r\n return this;\r\n }\r\n\r\n public duration(d: number) {\r\n this._duration = d;\r\n return this;\r\n }\r\n\r\n public start(time?: string | number) {\r\n this._group.add(this);\r\n this._isPlaying = true;\r\n this._isPaused = false;\r\n this._onStartCallbackFired = false;\r\n this._startTime = time !== undefined ? typeof time === \"string\" ? Date.now() + parseFloat(time) : time : Date.now();\r\n this._startTime += this._delayTime;\r\n\r\n for (const property in this._valuesEnd) {\r\n // Check if an Array was provided as property value\r\n if (this._valuesEnd[property] instanceof Array) {\r\n if (this._valuesEnd[property].length === 0)\r\n continue;\r\n\r\n // Create a local copy of the Array with the start value at the front\r\n this._valuesEnd[property] = [this._object[property]].concat(this._valuesEnd[property]);\r\n }\r\n\r\n // If `to()` specifies a property that doesn't exist in the source object,\r\n // we should not set that property in the object\r\n if (this._object[property] === undefined)\r\n continue;\r\n\r\n // Save the starting value, but only once.\r\n if (typeof (this._valuesStart[property]) === \"undefined\")\r\n this._valuesStart[property] = this._object[property];\r\n\r\n if ((this._valuesStart[property] instanceof Array) === false)\r\n this._valuesStart[property] *= 1.0; // Ensures we're using numbers, not strings\r\n\r\n this._valuesStartRepeat[property] = this._valuesStart[property] || 0;\r\n }\r\n\r\n return this;\r\n }\r\n\r\n public stop() {\r\n if (!this._isPlaying)\r\n return this;\r\n\r\n this._group.remove(this);\r\n this._isPlaying = false;\r\n this._isPaused = false;\r\n\r\n if (this._onStopCallback !== undefined)\r\n this._onStopCallback(this._object);\r\n\r\n this.stopChainedTweens();\r\n return this;\r\n }\r\n\r\n public end() {\r\n this.update(Infinity);\r\n return this;\r\n }\r\n\r\n public pause(time: number) {\r\n if (this._isPaused || !this._isPlaying)\r\n return this;\r\n\r\n this._isPaused = true;\r\n this._pauseStart = time === undefined ? Date.now() : time;\r\n this._group.remove(this);\r\n return this;\r\n }\r\n\r\n public resume(time?: number) {\r\n if (!this._isPaused || !this._isPlaying)\r\n return this;\r\n\r\n this._isPaused = false;\r\n this._startTime! += (time === undefined ? Date.now() : time) - this._pauseStart!;\r\n this._pauseStart = 0;\r\n this._group.add(this);\r\n return this;\r\n }\r\n\r\n public stopChainedTweens() {\r\n for (let i = 0, numChainedTweens = this._chainedTweens.length; i < numChainedTweens; i++) {\r\n this._chainedTweens[i].stop();\r\n }\r\n }\r\n\r\n public group(group: Tweens) {\r\n this._group = group;\r\n return this;\r\n }\r\n\r\n public delay(amount?: number) {\r\n if (undefined !== amount)\r\n this._delayTime = amount;\r\n return this;\r\n }\r\n\r\n public repeat(times: number) {\r\n this._repeat = times;\r\n return this;\r\n }\r\n\r\n public repeatDelay(amount: number) {\r\n this._repeatDelayTime = amount;\r\n return this;\r\n }\r\n\r\n public yoyo(yoyo: boolean) {\r\n this._yoyo = yoyo;\r\n return this;\r\n }\r\n\r\n public easing(easingFunction?: EasingFunction) {\r\n if (easingFunction)\r\n this._easingFunction = easingFunction;\r\n return this;\r\n }\r\n\r\n public interpolation(interpolationFunction?: InterpolationFunction) {\r\n if (interpolationFunction)\r\n this._interpolationFunction = interpolationFunction;\r\n return this;\r\n }\r\n\r\n public chain(...tweens: Tween[]) {\r\n this._chainedTweens = tweens;\r\n return this;\r\n }\r\n\r\n public onStart(callback: TweenCallback) {\r\n this._onStartCallback = callback;\r\n return this;\r\n }\r\n\r\n public onUpdate(callback: UpdateCallback) {\r\n this._onUpdateCallback = callback;\r\n return this;\r\n }\r\n\r\n public onRepeat(callback: TweenCallback) {\r\n this._onRepeatCallback = callback;\r\n return this;\r\n }\r\n\r\n public onComplete(callback?: TweenCallback) {\r\n this._onCompleteCallback = callback;\r\n return this;\r\n }\r\n\r\n public onStop(callback: TweenCallback) {\r\n this._onStopCallback = callback;\r\n return this;\r\n }\r\n\r\n public update(time: number) {\r\n if (undefined === this._startTime || time < this._startTime)\r\n return true;\r\n\r\n if (this._onStartCallbackFired === false) {\r\n if (this._onStartCallback !== undefined) {\r\n this._onStartCallback(this._object);\r\n }\r\n\r\n this._onStartCallbackFired = true;\r\n }\r\n\r\n let elapsed = (time - this._startTime) / this._duration;\r\n elapsed = (this._duration === 0 || elapsed > 1) ? 1 : elapsed;\r\n\r\n const value = this._easingFunction(elapsed);\r\n\r\n let property: any;\r\n\r\n for (property in this._valuesEnd) {\r\n // Don't update properties that do not exist in the source object\r\n if (this._valuesStart[property] === undefined)\r\n continue;\r\n\r\n const start = this._valuesStart[property] || 0;\r\n let end = this._valuesEnd[property];\r\n\r\n if (end instanceof Array) {\r\n this._object[property] = this._interpolationFunction(end, value);\r\n } else {\r\n // Parses relative end values with start as base (e.g.: +10, -3)\r\n if (typeof (end) === \"string\") {\r\n\r\n if (end.charAt(0) === \"+\" || end.charAt(0) === \"-\")\r\n end = start + parseFloat(end);\r\n else\r\n end = parseFloat(end);\r\n }\r\n\r\n // Protect against non numeric properties.\r\n if (typeof (end) === \"number\")\r\n this._object[property] = start + (end - start) * value;\r\n }\r\n }\r\n\r\n if (this._onUpdateCallback !== undefined)\r\n this._onUpdateCallback(this._object, elapsed);\r\n\r\n if (elapsed === 1) {\r\n if (this._repeat > 0) {\r\n if (isFinite(this._repeat))\r\n this._repeat--;\r\n\r\n // Reassign starting values, restart by making startTime = now\r\n for (property in this._valuesStartRepeat) {\r\n\r\n if (typeof (this._valuesEnd[property]) === \"string\") {\r\n this._valuesStartRepeat[property] = this._valuesStartRepeat[property] + parseFloat(this._valuesEnd[property]);\r\n }\r\n\r\n if (this._yoyo) {\r\n const tmp = this._valuesStartRepeat[property];\r\n\r\n this._valuesStartRepeat[property] = this._valuesEnd[property];\r\n this._valuesEnd[property] = tmp;\r\n }\r\n\r\n this._valuesStart[property] = this._valuesStartRepeat[property];\r\n }\r\n\r\n if (this._yoyo)\r\n this._reversed = !this._reversed;\r\n\r\n if (this._repeatDelayTime !== undefined)\r\n this._startTime = time + this._repeatDelayTime;\r\n else\r\n this._startTime = time + this._delayTime;\r\n\r\n if (this._onRepeatCallback !== undefined)\r\n this._onRepeatCallback(this._object);\r\n\r\n return true;\r\n\r\n } else {\r\n\r\n if (this._onCompleteCallback !== undefined)\r\n this._onCompleteCallback(this._object);\r\n\r\n for (let i = 0, numChainedTweens = this._chainedTweens.length; i < numChainedTweens; i++) {\r\n // Make the chained tweens start exactly at the time they should,\r\n // even if the `update()` method was called way past the duration of the tween\r\n this._chainedTweens[i].start(this._startTime + this._duration);\r\n }\r\n return false;\r\n }\r\n\r\n }\r\n return true;\r\n }\r\n}\r\n\r\n/** Easing functions from tween.js\r\n * @public\r\n */\r\nexport const Easing = {\r\n Linear: {\r\n None: (k: number) => {\r\n return k;\r\n },\r\n },\r\n\r\n Quadratic: {\r\n In: (k: number) => {\r\n return k * k;\r\n },\r\n\r\n Out: (k: number) => {\r\n return k * (2 - k);\r\n },\r\n\r\n InOut: (k: number) => {\r\n if ((k *= 2) < 1) {\r\n return 0.5 * k * k;\r\n }\r\n return - 0.5 * (--k * (k - 2) - 1);\r\n },\r\n },\r\n\r\n Cubic: {\r\n In: (k: number) => {\r\n return k * k * k;\r\n },\r\n\r\n Out: (k: number) => {\r\n return --k * k * k + 1;\r\n },\r\n\r\n InOut: (k: number) => {\r\n if ((k *= 2) < 1) {\r\n return 0.5 * k * k * k;\r\n }\r\n\r\n return 0.5 * ((k -= 2) * k * k + 2);\r\n },\r\n },\r\n\r\n Quartic: {\r\n In: (k: number) => {\r\n return k * k * k * k;\r\n },\r\n\r\n Out: (k: number) => {\r\n return 1 - (--k * k * k * k);\r\n },\r\n\r\n InOut: (k: number) => {\r\n if ((k *= 2) < 1) {\r\n return 0.5 * k * k * k * k;\r\n }\r\n\r\n return - 0.5 * ((k -= 2) * k * k * k - 2);\r\n },\r\n },\r\n\r\n Quintic: {\r\n In: (k: number) => {\r\n return k * k * k * k * k;\r\n },\r\n\r\n Out: (k: number) => {\r\n return --k * k * k * k * k + 1;\r\n },\r\n\r\n InOut: (k: number) => {\r\n if ((k *= 2) < 1) {\r\n return 0.5 * k * k * k * k * k;\r\n }\r\n\r\n return 0.5 * ((k -= 2) * k * k * k * k + 2);\r\n },\r\n },\r\n\r\n Sinusoidal: {\r\n In: (k: number) => {\r\n return 1 - Math.cos(k * Math.PI / 2);\r\n },\r\n\r\n Out: (k: number) => {\r\n return Math.sin(k * Math.PI / 2);\r\n },\r\n\r\n InOut: (k: number) => {\r\n return 0.5 * (1 - Math.cos(Math.PI * k));\r\n },\r\n },\r\n\r\n Exponential: {\r\n In: (k: number) => {\r\n return k === 0 ? 0 : Math.pow(1024, k - 1);\r\n },\r\n\r\n Out: (k: number) => {\r\n return k === 1 ? 1 : 1 - Math.pow(2, - 10 * k);\r\n },\r\n\r\n InOut: (k: number) => {\r\n if (k === 0)\r\n return 0;\r\n\r\n if (k === 1)\r\n return 1;\r\n\r\n if ((k *= 2) < 1)\r\n return 0.5 * Math.pow(1024, k - 1);\r\n\r\n return 0.5 * (- Math.pow(2, - 10 * (k - 1)) + 2);\r\n },\r\n },\r\n\r\n Circular: {\r\n In: (k: number) => {\r\n return 1 - Math.sqrt(1 - k * k);\r\n },\r\n\r\n Out: (k: number) => {\r\n return Math.sqrt(1 - (--k * k));\r\n },\r\n\r\n InOut: (k: number) => {\r\n if ((k *= 2) < 1)\r\n return - 0.5 * (Math.sqrt(1 - k * k) - 1);\r\n\r\n return 0.5 * (Math.sqrt(1 - (k -= 2) * k) + 1);\r\n },\r\n },\r\n\r\n Elastic: {\r\n In: (k: number) => {\r\n if (k === 0)\r\n return 0;\r\n\r\n if (k === 1)\r\n return 1;\r\n\r\n return -Math.pow(2, 10 * (k - 1)) * Math.sin((k - 1.1) * 5 * Math.PI);\r\n },\r\n\r\n Out: (k: number) => {\r\n if (k === 0)\r\n return 0;\r\n\r\n if (k === 1)\r\n return 1;\r\n\r\n return Math.pow(2, -10 * k) * Math.sin((k - 0.1) * 5 * Math.PI) + 1;\r\n },\r\n\r\n InOut: (k: number) => {\r\n if (k === 0)\r\n return 0;\r\n\r\n if (k === 1)\r\n return 1;\r\n\r\n k *= 2;\r\n\r\n if (k < 1)\r\n return -0.5 * Math.pow(2, 10 * (k - 1)) * Math.sin((k - 1.1) * 5 * Math.PI);\r\n\r\n return 0.5 * Math.pow(2, -10 * (k - 1)) * Math.sin((k - 1.1) * 5 * Math.PI) + 1;\r\n },\r\n },\r\n\r\n Back: {\r\n In: (k: number) => {\r\n const s = 1.70158;\r\n return k * k * ((s + 1) * k - s);\r\n },\r\n\r\n Out: (k: number) => {\r\n const s = 1.70158;\r\n return --k * k * ((s + 1) * k + s) + 1;\r\n },\r\n\r\n InOut: (k: number) => {\r\n const s = 1.70158 * 1.525;\r\n if ((k *= 2) < 1)\r\n return 0.5 * (k * k * ((s + 1) * k - s));\r\n\r\n return 0.5 * ((k -= 2) * k * ((s + 1) * k + s) + 2);\r\n },\r\n },\r\n\r\n Bounce: {\r\n In: (k: number) => {\r\n return 1 - Easing.Bounce.Out(1 - k);\r\n },\r\n\r\n Out: (k: number) => {\r\n if (k < (1 / 2.75))\r\n return 7.5625 * k * k;\r\n if (k < (2 / 2.75))\r\n return 7.5625 * (k -= (1.5 / 2.75)) * k + 0.75;\r\n if (k < (2.5 / 2.75))\r\n return 7.5625 * (k -= (2.25 / 2.75)) * k + 0.9375;\r\n return 7.5625 * (k -= (2.625 / 2.75)) * k + 0.984375;\r\n },\r\n\r\n InOut: (k: number) => {\r\n if (k < 0.5)\r\n return Easing.Bounce.In(k * 2) * 0.5;\r\n\r\n return Easing.Bounce.Out(k * 2 - 1) * 0.5 + 0.5;\r\n },\r\n },\r\n};\r\n\r\n/** Interpolation functions from tween.js\r\n * @public\r\n */\r\nexport const Interpolation = {\r\n\r\n Linear: (v: any, k: number) => {\r\n const m = v.length - 1;\r\n const f = m * k;\r\n const i = Math.floor(f);\r\n const fn = Interpolation.Utils.Linear;\r\n\r\n if (k < 0)\r\n return fn(v[0], v[1], f);\r\n\r\n if (k > 1)\r\n return fn(v[m], v[m - 1], m - f);\r\n\r\n return fn(v[i], v[i + 1 > m ? m : i + 1], f - i);\r\n },\r\n\r\n Bezier: (v: any, k: number) => {\r\n let b = 0;\r\n const n = v.length - 1;\r\n const pw = Math.pow;\r\n const bn = Interpolation.Utils.Bernstein;\r\n\r\n for (let i = 0; i <= n; i++)\r\n b += pw(1 - k, n - i) * pw(k, i) * v[i] * bn(n, i);\r\n\r\n return b;\r\n },\r\n\r\n CatmullRom: (v: any, k: number) => {\r\n const m = v.length - 1;\r\n let f = m * k;\r\n let i = Math.floor(f);\r\n const fn = Interpolation.Utils.CatmullRom;\r\n\r\n if (v[0] === v[m]) {\r\n if (k < 0) {\r\n i = Math.floor(f = m * (1 + k));\r\n }\r\n return fn(v[(i - 1 + m) % m], v[i], v[(i + 1) % m], v[(i + 2) % m], f - i);\r\n } else {\r\n if (k < 0)\r\n return v[0] - (fn(v[0], v[0], v[1], v[1], -f) - v[0]);\r\n\r\n if (k > 1)\r\n return v[m] - (fn(v[m], v[m], v[m - 1], v[m - 1], f - m) - v[m]);\r\n\r\n return fn(v[i ? i - 1 : 0], v[i], v[m < i + 1 ? m : i + 1], v[m < i + 2 ? m : i + 2], f - i);\r\n }\r\n },\r\n\r\n Utils: {\r\n Linear: (p0: number, p1: number, t: number) => {\r\n return (p1 - p0) * t + p0;\r\n },\r\n\r\n Bernstein: (n: number, i: number) => {\r\n const fc = Interpolation.Utils.Factorial;\r\n return fc(n) / fc(i) / fc(n - i);\r\n },\r\n\r\n Factorial: (() => {\r\n const a = [1];\r\n return (n: number) => {\r\n let s = 1;\r\n\r\n if (a[n])\r\n return a[n];\r\n\r\n for (let i = n; i > 1; i--)\r\n s *= i;\r\n\r\n a[n] = s;\r\n return s;\r\n };\r\n\r\n })(),\r\n\r\n CatmullRom: (p0: number, p1: number, p2: number, p3: number, t: number) => {\r\n const v0 = (p2 - p0) * 0.5;\r\n const v1 = (p3 - p1) * 0.5;\r\n const t2 = t * t;\r\n const t3 = t * t2;\r\n return (2 * p1 - 2 * p2 + v0 + v1) * t3 + (- 3 * p1 + 3 * p2 - 2 * v0 - v1) * t2 + v0 * t + p1;\r\n },\r\n },\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"Tween.js","sourceRoot":"","sources":["../../src/Tween.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Tween\r\n */\r\n\r\n/**\r\n * Adapted from:\r\n *\r\n * Tween.js - Licensed under the MIT license\r\n * https://github.com/tweenjs/tween.js\r\n * ----------------------------------------------\r\n *\r\n * See https://github.com/tweenjs/tween.js/graphs/contributors for the full list of contributors.\r\n * Thank you all, you're awesome!\r\n */\r\n\r\n// cSpell:ignore tweens yoyo catmull\r\n/* eslint-disable guard-for-in */\r\n/* eslint-disable @typescript-eslint/naming-convention */\r\n\r\n/** A group of `Tween`s. This class is called `Group` in the tween.js library.\r\n * @note Unlike tween.js, we do NOT create any global instances of this class\r\n * like the global object `TWEEN` in tween.js. You must create an instance of this class, and then create [[Tween]]s by\r\n * calling [[Tweens.create]] or by calling `new Tween()` and pass your Group as its first argument.\r\n * @see The [tween.js users guide](https://github.com/tweenjs/tween.js/blob/master/docs/user_guide.md)\r\n * @public\r\n */\r\nexport class Tweens {\r\n private _tweens: any = {};\r\n private _tweensAddedDuringUpdate: any = {};\r\n private _nextId = 0;\r\n public nextId() { return this._nextId++; }\r\n\r\n public getAll() {\r\n return Object.keys(this._tweens).map((tweenId) => this._tweens[tweenId]);\r\n }\r\n\r\n public removeAll() {\r\n this._tweens = {};\r\n }\r\n\r\n public add(tween: Tween) {\r\n this._tweens[tween.getId()] = tween;\r\n this._tweensAddedDuringUpdate[tween.getId()] = tween;\r\n }\r\n\r\n public remove(tween: Tween) {\r\n delete this._tweens[tween.getId()];\r\n delete this._tweensAddedDuringUpdate[tween.getId()];\r\n }\r\n\r\n public update(time?: number, preserve?: boolean) {\r\n let tweenIds = Object.keys(this._tweens);\r\n\r\n if (tweenIds.length === 0)\r\n return false;\r\n\r\n time = time !== undefined ? time : Date.now();\r\n\r\n // Tweens are updated in \"batches\". If you add a new tween during an\r\n // update, then the new tween will be updated in the next batch.\r\n // If you remove a tween during an update, it may or may not be updated.\r\n // However, if the removed tween was added during the current batch,\r\n // then it will not be updated.\r\n while (tweenIds.length > 0) {\r\n this._tweensAddedDuringUpdate = {};\r\n\r\n for (const tweenId of tweenIds) {\r\n const tween = this._tweens[tweenId];\r\n if (tween && tween.update(time) === false) {\r\n tween._isPlaying = false;\r\n\r\n if (!preserve) {\r\n delete this._tweens[tweenId];\r\n }\r\n }\r\n }\r\n\r\n tweenIds = Object.keys(this._tweensAddedDuringUpdate);\r\n }\r\n\r\n return true;\r\n }\r\n\r\n /** Create a new Tween owned by this Group. Equivalent to `new TWEEN.Tween` in tween.js library. */\r\n public create(from: any, opts?: {\r\n to: any;\r\n duration: number;\r\n onUpdate: UpdateCallback;\r\n onComplete?: TweenCallback;\r\n delay?: number;\r\n start?: boolean;\r\n easing?: EasingFunction;\r\n interpolation?: InterpolationFunction;\r\n }) {\r\n const t = new Tween(this, from);\r\n if (opts) {\r\n t.to(opts.to)\r\n .duration(opts.duration)\r\n .onUpdate(opts.onUpdate)\r\n .delay(opts.delay)\r\n .easing(opts.easing)\r\n .interpolation(opts.interpolation)\r\n .onComplete(opts.onComplete);\r\n if (opts.start)\r\n t.start();\r\n }\r\n return t;\r\n }\r\n}\r\n\r\n/**\r\n * @public\r\n * @extensions\r\n */\r\nexport type TweenCallback = (obj: any) => void;\r\n/**\r\n * @public\r\n * @extensions\r\n */\r\nexport type UpdateCallback = (obj: any, t: number) => void;\r\n/**\r\n * @public\r\n * @extensions\r\n */\r\nexport type EasingFunction = (k: number) => number;\r\n/**\r\n * @public\r\n * @extensions\r\n */\r\nexport type InterpolationFunction = (v: any, k: number) => number;\r\n\r\n/** A Tween for interpolating values of an object. Instances of this class are owned by a `Tweens` group.\r\n * @see The [tween.js users guide](https://github.com/tweenjs/tween.js/blob/master/docs/user_guide.md)\r\n * @public\r\n */\r\nexport class Tween {\r\n private _isPaused = false;\r\n private _pauseStart?: number;\r\n private _valuesStart: any = {};\r\n private _valuesEnd: any = {};\r\n private _valuesStartRepeat: any = {};\r\n private _duration = 1000;\r\n private _repeat = 0;\r\n private _repeatDelayTime?: number;\r\n private _yoyo = false;\r\n private _isPlaying = false;\r\n private _reversed = false;\r\n private _delayTime = 0;\r\n private _startTime?: number;\r\n private _easingFunction = Easing.Linear.None;\r\n private _interpolationFunction = Interpolation.Linear;\r\n private _chainedTweens: Tween[] = [];\r\n private _onStartCallback?: TweenCallback;\r\n private _onStartCallbackFired = false;\r\n private _onUpdateCallback?: UpdateCallback;\r\n private _onRepeatCallback?: TweenCallback;\r\n private _onCompleteCallback?: TweenCallback;\r\n private _onStopCallback?: TweenCallback;\r\n private _id: number;\r\n\r\n constructor(private _group: Tweens, private _object: any) {\r\n this._id = _group.nextId();\r\n }\r\n\r\n public getId() { return this._id; }\r\n public get isPlaying() { return this._isPlaying; }\r\n public get isPaused() { return this._isPaused; }\r\n\r\n public to(properties: any, duration?: number) {\r\n this._valuesEnd = Object.create(properties);\r\n\r\n if (duration !== undefined)\r\n this._duration = duration;\r\n\r\n return this;\r\n }\r\n\r\n public duration(d: number) {\r\n this._duration = d;\r\n return this;\r\n }\r\n\r\n public start(time?: string | number) {\r\n this._group.add(this);\r\n this._isPlaying = true;\r\n this._isPaused = false;\r\n this._onStartCallbackFired = false;\r\n this._startTime = time !== undefined ? typeof time === \"string\" ? Date.now() + parseFloat(time) : time : Date.now();\r\n this._startTime += this._delayTime;\r\n\r\n for (const property in this._valuesEnd) {\r\n // Check if an Array was provided as property value\r\n if (this._valuesEnd[property] instanceof Array) {\r\n if (this._valuesEnd[property].length === 0)\r\n continue;\r\n\r\n // Create a local copy of the Array with the start value at the front\r\n this._valuesEnd[property] = [this._object[property]].concat(this._valuesEnd[property]);\r\n }\r\n\r\n // If `to()` specifies a property that doesn't exist in the source object,\r\n // we should not set that property in the object\r\n if (this._object[property] === undefined)\r\n continue;\r\n\r\n // Save the starting value, but only once.\r\n if (typeof (this._valuesStart[property]) === \"undefined\")\r\n this._valuesStart[property] = this._object[property];\r\n\r\n if ((this._valuesStart[property] instanceof Array) === false)\r\n this._valuesStart[property] *= 1.0; // Ensures we're using numbers, not strings\r\n\r\n this._valuesStartRepeat[property] = this._valuesStart[property] || 0;\r\n }\r\n\r\n return this;\r\n }\r\n\r\n public stop() {\r\n if (!this._isPlaying)\r\n return this;\r\n\r\n this._group.remove(this);\r\n this._isPlaying = false;\r\n this._isPaused = false;\r\n\r\n if (this._onStopCallback !== undefined)\r\n this._onStopCallback(this._object);\r\n\r\n this.stopChainedTweens();\r\n return this;\r\n }\r\n\r\n public end() {\r\n this.update(Infinity);\r\n return this;\r\n }\r\n\r\n public pause(time: number) {\r\n if (this._isPaused || !this._isPlaying)\r\n return this;\r\n\r\n this._isPaused = true;\r\n this._pauseStart = time === undefined ? Date.now() : time;\r\n this._group.remove(this);\r\n return this;\r\n }\r\n\r\n public resume(time?: number) {\r\n if (!this._isPaused || !this._isPlaying)\r\n return this;\r\n\r\n this._isPaused = false;\r\n this._startTime! += (time === undefined ? Date.now() : time) - this._pauseStart!;\r\n this._pauseStart = 0;\r\n this._group.add(this);\r\n return this;\r\n }\r\n\r\n public stopChainedTweens() {\r\n for (let i = 0, numChainedTweens = this._chainedTweens.length; i < numChainedTweens; i++) {\r\n this._chainedTweens[i].stop();\r\n }\r\n }\r\n\r\n public group(group: Tweens) {\r\n this._group = group;\r\n return this;\r\n }\r\n\r\n public delay(amount?: number) {\r\n if (undefined !== amount)\r\n this._delayTime = amount;\r\n return this;\r\n }\r\n\r\n public repeat(times: number) {\r\n this._repeat = times;\r\n return this;\r\n }\r\n\r\n public repeatDelay(amount: number) {\r\n this._repeatDelayTime = amount;\r\n return this;\r\n }\r\n\r\n public yoyo(yoyo: boolean) {\r\n this._yoyo = yoyo;\r\n return this;\r\n }\r\n\r\n public easing(easingFunction?: EasingFunction) {\r\n if (easingFunction)\r\n this._easingFunction = easingFunction;\r\n return this;\r\n }\r\n\r\n public interpolation(interpolationFunction?: InterpolationFunction) {\r\n if (interpolationFunction)\r\n this._interpolationFunction = interpolationFunction;\r\n return this;\r\n }\r\n\r\n public chain(...tweens: Tween[]) {\r\n this._chainedTweens = tweens;\r\n return this;\r\n }\r\n\r\n public onStart(callback: TweenCallback) {\r\n this._onStartCallback = callback;\r\n return this;\r\n }\r\n\r\n public onUpdate(callback: UpdateCallback) {\r\n this._onUpdateCallback = callback;\r\n return this;\r\n }\r\n\r\n public onRepeat(callback: TweenCallback) {\r\n this._onRepeatCallback = callback;\r\n return this;\r\n }\r\n\r\n public onComplete(callback?: TweenCallback) {\r\n this._onCompleteCallback = callback;\r\n return this;\r\n }\r\n\r\n public onStop(callback: TweenCallback) {\r\n this._onStopCallback = callback;\r\n return this;\r\n }\r\n\r\n public update(time: number) {\r\n if (undefined === this._startTime || time < this._startTime)\r\n return true;\r\n\r\n if (this._onStartCallbackFired === false) {\r\n if (this._onStartCallback !== undefined) {\r\n this._onStartCallback(this._object);\r\n }\r\n\r\n this._onStartCallbackFired = true;\r\n }\r\n\r\n let elapsed = (time - this._startTime) / this._duration;\r\n elapsed = (this._duration === 0 || elapsed > 1) ? 1 : elapsed;\r\n\r\n const value = this._easingFunction(elapsed);\r\n\r\n let property: any;\r\n\r\n for (property in this._valuesEnd) {\r\n // Don't update properties that do not exist in the source object\r\n if (this._valuesStart[property] === undefined)\r\n continue;\r\n\r\n const start = this._valuesStart[property] || 0;\r\n let end = this._valuesEnd[property];\r\n\r\n if (end instanceof Array) {\r\n this._object[property] = this._interpolationFunction(end, value);\r\n } else {\r\n // Parses relative end values with start as base (e.g.: +10, -3)\r\n if (typeof (end) === \"string\") {\r\n\r\n if (end.charAt(0) === \"+\" || end.charAt(0) === \"-\")\r\n end = start + parseFloat(end);\r\n else\r\n end = parseFloat(end);\r\n }\r\n\r\n // Protect against non numeric properties.\r\n if (typeof (end) === \"number\")\r\n this._object[property] = start + (end - start) * value;\r\n }\r\n }\r\n\r\n if (this._onUpdateCallback !== undefined)\r\n this._onUpdateCallback(this._object, elapsed);\r\n\r\n if (elapsed === 1) {\r\n if (this._repeat > 0) {\r\n if (isFinite(this._repeat))\r\n this._repeat--;\r\n\r\n // Reassign starting values, restart by making startTime = now\r\n for (property in this._valuesStartRepeat) {\r\n\r\n if (typeof (this._valuesEnd[property]) === \"string\") {\r\n this._valuesStartRepeat[property] = this._valuesStartRepeat[property] + parseFloat(this._valuesEnd[property]);\r\n }\r\n\r\n if (this._yoyo) {\r\n const tmp = this._valuesStartRepeat[property];\r\n\r\n this._valuesStartRepeat[property] = this._valuesEnd[property];\r\n this._valuesEnd[property] = tmp;\r\n }\r\n\r\n this._valuesStart[property] = this._valuesStartRepeat[property];\r\n }\r\n\r\n if (this._yoyo)\r\n this._reversed = !this._reversed;\r\n\r\n if (this._repeatDelayTime !== undefined)\r\n this._startTime = time + this._repeatDelayTime;\r\n else\r\n this._startTime = time + this._delayTime;\r\n\r\n if (this._onRepeatCallback !== undefined)\r\n this._onRepeatCallback(this._object);\r\n\r\n return true;\r\n\r\n } else {\r\n\r\n if (this._onCompleteCallback !== undefined)\r\n this._onCompleteCallback(this._object);\r\n\r\n for (let i = 0, numChainedTweens = this._chainedTweens.length; i < numChainedTweens; i++) {\r\n // Make the chained tweens start exactly at the time they should,\r\n // even if the `update()` method was called way past the duration of the tween\r\n this._chainedTweens[i].start(this._startTime + this._duration);\r\n }\r\n return false;\r\n }\r\n\r\n }\r\n return true;\r\n }\r\n}\r\n\r\n/** Easing functions from tween.js\r\n * @public\r\n */\r\nexport const Easing = {\r\n Linear: {\r\n None: (k: number) => {\r\n return k;\r\n },\r\n },\r\n\r\n Quadratic: {\r\n In: (k: number) => {\r\n return k * k;\r\n },\r\n\r\n Out: (k: number) => {\r\n return k * (2 - k);\r\n },\r\n\r\n InOut: (k: number) => {\r\n if ((k *= 2) < 1) {\r\n return 0.5 * k * k;\r\n }\r\n return - 0.5 * (--k * (k - 2) - 1);\r\n },\r\n },\r\n\r\n Cubic: {\r\n In: (k: number) => {\r\n return k * k * k;\r\n },\r\n\r\n Out: (k: number) => {\r\n return --k * k * k + 1;\r\n },\r\n\r\n InOut: (k: number) => {\r\n if ((k *= 2) < 1) {\r\n return 0.5 * k * k * k;\r\n }\r\n\r\n return 0.5 * ((k -= 2) * k * k + 2);\r\n },\r\n },\r\n\r\n Quartic: {\r\n In: (k: number) => {\r\n return k * k * k * k;\r\n },\r\n\r\n Out: (k: number) => {\r\n return 1 - (--k * k * k * k);\r\n },\r\n\r\n InOut: (k: number) => {\r\n if ((k *= 2) < 1) {\r\n return 0.5 * k * k * k * k;\r\n }\r\n\r\n return - 0.5 * ((k -= 2) * k * k * k - 2);\r\n },\r\n },\r\n\r\n Quintic: {\r\n In: (k: number) => {\r\n return k * k * k * k * k;\r\n },\r\n\r\n Out: (k: number) => {\r\n return --k * k * k * k * k + 1;\r\n },\r\n\r\n InOut: (k: number) => {\r\n if ((k *= 2) < 1) {\r\n return 0.5 * k * k * k * k * k;\r\n }\r\n\r\n return 0.5 * ((k -= 2) * k * k * k * k + 2);\r\n },\r\n },\r\n\r\n Sinusoidal: {\r\n In: (k: number) => {\r\n return 1 - Math.cos(k * Math.PI / 2);\r\n },\r\n\r\n Out: (k: number) => {\r\n return Math.sin(k * Math.PI / 2);\r\n },\r\n\r\n InOut: (k: number) => {\r\n return 0.5 * (1 - Math.cos(Math.PI * k));\r\n },\r\n },\r\n\r\n Exponential: {\r\n In: (k: number) => {\r\n return k === 0 ? 0 : Math.pow(1024, k - 1);\r\n },\r\n\r\n Out: (k: number) => {\r\n return k === 1 ? 1 : 1 - Math.pow(2, - 10 * k);\r\n },\r\n\r\n InOut: (k: number) => {\r\n if (k === 0)\r\n return 0;\r\n\r\n if (k === 1)\r\n return 1;\r\n\r\n if ((k *= 2) < 1)\r\n return 0.5 * Math.pow(1024, k - 1);\r\n\r\n return 0.5 * (- Math.pow(2, - 10 * (k - 1)) + 2);\r\n },\r\n },\r\n\r\n Circular: {\r\n In: (k: number) => {\r\n return 1 - Math.sqrt(1 - k * k);\r\n },\r\n\r\n Out: (k: number) => {\r\n return Math.sqrt(1 - (--k * k));\r\n },\r\n\r\n InOut: (k: number) => {\r\n if ((k *= 2) < 1)\r\n return - 0.5 * (Math.sqrt(1 - k * k) - 1);\r\n\r\n return 0.5 * (Math.sqrt(1 - (k -= 2) * k) + 1);\r\n },\r\n },\r\n\r\n Elastic: {\r\n In: (k: number) => {\r\n if (k === 0)\r\n return 0;\r\n\r\n if (k === 1)\r\n return 1;\r\n\r\n return -Math.pow(2, 10 * (k - 1)) * Math.sin((k - 1.1) * 5 * Math.PI);\r\n },\r\n\r\n Out: (k: number) => {\r\n if (k === 0)\r\n return 0;\r\n\r\n if (k === 1)\r\n return 1;\r\n\r\n return Math.pow(2, -10 * k) * Math.sin((k - 0.1) * 5 * Math.PI) + 1;\r\n },\r\n\r\n InOut: (k: number) => {\r\n if (k === 0)\r\n return 0;\r\n\r\n if (k === 1)\r\n return 1;\r\n\r\n k *= 2;\r\n\r\n if (k < 1)\r\n return -0.5 * Math.pow(2, 10 * (k - 1)) * Math.sin((k - 1.1) * 5 * Math.PI);\r\n\r\n return 0.5 * Math.pow(2, -10 * (k - 1)) * Math.sin((k - 1.1) * 5 * Math.PI) + 1;\r\n },\r\n },\r\n\r\n Back: {\r\n In: (k: number) => {\r\n const s = 1.70158;\r\n return k * k * ((s + 1) * k - s);\r\n },\r\n\r\n Out: (k: number) => {\r\n const s = 1.70158;\r\n return --k * k * ((s + 1) * k + s) + 1;\r\n },\r\n\r\n InOut: (k: number) => {\r\n const s = 1.70158 * 1.525;\r\n if ((k *= 2) < 1)\r\n return 0.5 * (k * k * ((s + 1) * k - s));\r\n\r\n return 0.5 * ((k -= 2) * k * ((s + 1) * k + s) + 2);\r\n },\r\n },\r\n\r\n Bounce: {\r\n In: (k: number) => {\r\n return 1 - Easing.Bounce.Out(1 - k);\r\n },\r\n\r\n Out: (k: number) => {\r\n if (k < (1 / 2.75))\r\n return 7.5625 * k * k;\r\n if (k < (2 / 2.75))\r\n return 7.5625 * (k -= (1.5 / 2.75)) * k + 0.75;\r\n if (k < (2.5 / 2.75))\r\n return 7.5625 * (k -= (2.25 / 2.75)) * k + 0.9375;\r\n return 7.5625 * (k -= (2.625 / 2.75)) * k + 0.984375;\r\n },\r\n\r\n InOut: (k: number) => {\r\n if (k < 0.5)\r\n return Easing.Bounce.In(k * 2) * 0.5;\r\n\r\n return Easing.Bounce.Out(k * 2 - 1) * 0.5 + 0.5;\r\n },\r\n },\r\n};\r\n\r\n/** Interpolation functions from tween.js\r\n * @public\r\n */\r\nexport const Interpolation = {\r\n\r\n Linear: (v: any, k: number) => {\r\n const m = v.length - 1;\r\n const f = m * k;\r\n const i = Math.floor(f);\r\n const fn = Interpolation.Utils.Linear;\r\n\r\n if (k < 0)\r\n return fn(v[0], v[1], f);\r\n\r\n if (k > 1)\r\n return fn(v[m], v[m - 1], m - f);\r\n\r\n return fn(v[i], v[i + 1 > m ? m : i + 1], f - i);\r\n },\r\n\r\n Bezier: (v: any, k: number) => {\r\n let b = 0;\r\n const n = v.length - 1;\r\n const pw = Math.pow;\r\n const bn = Interpolation.Utils.Bernstein;\r\n\r\n for (let i = 0; i <= n; i++)\r\n b += pw(1 - k, n - i) * pw(k, i) * v[i] * bn(n, i);\r\n\r\n return b;\r\n },\r\n\r\n CatmullRom: (v: any, k: number) => {\r\n const m = v.length - 1;\r\n let f = m * k;\r\n let i = Math.floor(f);\r\n const fn = Interpolation.Utils.CatmullRom;\r\n\r\n if (v[0] === v[m]) {\r\n if (k < 0) {\r\n i = Math.floor(f = m * (1 + k));\r\n }\r\n return fn(v[(i - 1 + m) % m], v[i], v[(i + 1) % m], v[(i + 2) % m], f - i);\r\n } else {\r\n if (k < 0)\r\n return v[0] - (fn(v[0], v[0], v[1], v[1], -f) - v[0]);\r\n\r\n if (k > 1)\r\n return v[m] - (fn(v[m], v[m], v[m - 1], v[m - 1], f - m) - v[m]);\r\n\r\n return fn(v[i ? i - 1 : 0], v[i], v[m < i + 1 ? m : i + 1], v[m < i + 2 ? m : i + 2], f - i);\r\n }\r\n },\r\n\r\n Utils: {\r\n Linear: (p0: number, p1: number, t: number) => {\r\n return (p1 - p0) * t + p0;\r\n },\r\n\r\n Bernstein: (n: number, i: number) => {\r\n const fc = Interpolation.Utils.Factorial;\r\n return fc(n) / fc(i) / fc(n - i);\r\n },\r\n\r\n Factorial: (() => {\r\n const a = [1];\r\n return (n: number) => {\r\n let s = 1;\r\n\r\n if (a[n])\r\n return a[n];\r\n\r\n for (let i = n; i > 1; i--)\r\n s *= i;\r\n\r\n a[n] = s;\r\n return s;\r\n };\r\n\r\n })(),\r\n\r\n CatmullRom: (p0: number, p1: number, p2: number, p3: number, t: number) => {\r\n const v0 = (p2 - p0) * 0.5;\r\n const v1 = (p3 - p1) * 0.5;\r\n const t2 = t * t;\r\n const t3 = t * t2;\r\n return (2 * p1 - 2 * p2 + v0 + v1) * t3 + (- 3 * p1 + 3 * p2 - 2 * v0 - v1) * t2 + v0 * t + p1;\r\n },\r\n },\r\n};\r\n"]}
|
package/lib/esm/ViewProps.d.ts
CHANGED
|
@@ -227,7 +227,7 @@ export declare namespace ViewStoreRpc {
|
|
|
227
227
|
* be incremented according to the rules of semantic versioning. See .\rpc\README-RpcInterfaceVersioning.md for more information.
|
|
228
228
|
* @internal
|
|
229
229
|
*/
|
|
230
|
-
const version
|
|
230
|
+
const version = "4.0.0";
|
|
231
231
|
/** an Id of a View, DisplayStyle, ModelSelector, CategorySelector, or Timeline in a ViewStore.
|
|
232
232
|
* Will be a base-36 number with a leading "@".
|
|
233
233
|
* @public
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ViewProps.d.ts","sourceRoot":"","sources":["../../src/ViewProps.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ViewProps.d.ts","sourceRoot":"","sources":["../../src/ViewProps.ts"],"names":[],"mappings":"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"}
|