@shijiu/jsview-vue 2.3.0 → 2.3.728-alpha.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/bin/browser/BrowserAudio.vue.mjs +4 -1
- package/bin/browser/BrowserJsvLatex.vue.mjs +9 -90
- package/bin/jsview-vue.mjs +13913 -8048
- package/bin/types/utils/JsViewEngineWidget/JsvFocus/JsvFocusHub.d.ts +39 -3
- package/bin/types/utils/JsViewEngineWidget/MetroWidget/Const.d.ts +4 -1
- package/bin/types/utils/JsViewEngineWidget/MetroWidget/ListWidget.vue.d.ts +225 -0
- package/bin/types/utils/JsViewEngineWidget/MetroWidget/MetroWidget.vue.d.ts +225 -0
- package/bin/types/utils/JsViewEngineWidget/MetroWidget/MetroWidgetDebugger.d.ts +5 -0
- package/bin/types/utils/JsViewEngineWidget/MetroWidget/MetroWidgetSetup.d.ts +25 -2
- package/bin/types/utils/JsViewEngineWidget/MetroWidget/PageUpdater.d.ts +7 -1
- package/bin/types/utils/JsViewEngineWidget/MetroWidget/RenderItem.d.ts +28 -4
- package/bin/types/utils/JsViewEngineWidget/MetroWidget/TaskManager.d.ts +2 -1
- package/bin/types/utils/JsViewEngineWidget/MetroWidget/Utils.d.ts +2 -0
- package/bin/types/utils/JsViewEngineWidget/MetroWidget/WidgetRectInfo.d.ts +1 -1
- package/bin/types/utils/JsViewEngineWidget/SpatialNavigator/SpatialNavProvider.vue.d.ts +70 -0
- package/bin/types/utils/JsViewEngineWidget/SpatialNavigator/SpatialNavigationAlgorithm.d.ts +24 -0
- package/bin/types/utils/JsViewEngineWidget/SpatialNavigator/SpatialNavigationNode.d.ts +19 -0
- package/bin/types/utils/JsViewEngineWidget/SpatialNavigator/SpatialNavigator.d.ts +42 -0
- package/bin/types/utils/JsViewEngineWidget/TemplateParser/CommonMetroTemplate.d.ts +5 -4
- package/bin/types/utils/JsViewEngineWidget/TemplateParser/ListMetroTemplate.d.ts +2 -1
- package/bin/types/utils/JsViewEngineWidget/TemplateParser/MetroTemplate.d.ts +12 -4
- package/bin/types/utils/JsViewEngineWidget/TemplateParser/TemplateItemAdder.d.ts +9 -7
- package/bin/types/utils/JsViewEngineWidget/WidgetCommon.d.ts +27 -14
- package/bin/types/utils/JsViewEngineWidget/index.d.ts +3 -1
- package/bin/types/utils/JsViewPlugin/JsvLatex/BrowserDomBuilder.d.ts +0 -1
- package/bin/types/utils/JsViewPlugin/JsvLatex/GetVersion.d.ts +14 -0
- package/bin/types/utils/JsViewPlugin/JsvLatex/JsvLatex.vue.d.ts +3 -0
- package/bin/types/utils/JsViewPlugin/JsvLatex/JsvLatexBridgeProxy.d.ts +1 -0
- package/bin/types/utils/JsViewPlugin/JsvLatex/JsvLatexProxy.vue.d.ts +4 -1
- package/bin/types/utils/JsViewPlugin/JsvLatex/version.d.mts +29 -2
- package/bin/types/utils/JsViewPlugin/JsvPlayer/JsvMedia.d.ts +107 -4
- package/bin/types/utils/JsViewPlugin/JsvPlayer/JsvMediaBrowserInterface.d.ts +62 -0
- package/bin/types/utils/JsViewPlugin/JsvPlayer/JsvPlayer.vue.d.ts +94 -18
- package/bin/types/utils/JsViewPlugin/JsvPlayer/JsvPlayerBrowser-wasm.vue.d.ts +611 -0
- package/bin/types/utils/JsViewPlugin/JsvPlayer/{BrowserJsvPlayer.vue.d.ts → JsvPlayerBrowser.vue.d.ts} +24 -23
- package/bin/types/utils/JsViewPlugin/JsvPlayer/index-0.9.d.ts +77 -20
- package/bin/types/utils/JsViewPlugin/JsvPlayer/index.d.ts +77 -20
- package/bin/types/utils/JsViewVueTools/BlobApi.d.ts +38 -0
- package/bin/types/utils/JsViewVueTools/FeatureActive.d.ts +1 -0
- package/bin/types/utils/JsViewVueTools/ForgeHandles.d.ts +1 -0
- package/bin/types/utils/JsViewVueTools/JsvInteractionMode.d.ts +6 -0
- package/bin/types/utils/JsViewVueTools/JsvRuntimeBridge.d.ts +44 -1
- package/bin/types/utils/JsViewVueTools/JsvTextTools.d.ts +1 -0
- package/bin/types/utils/JsViewVueTools/JsvTextureStore/BitPalette/BitPalette.d.ts +43 -0
- package/bin/types/utils/JsViewVueTools/JsvTextureStore/CanvasTexture/CommandList.d.ts +1 -0
- package/bin/types/utils/JsViewVueTools/JsvTextureStore/CanvasTexture/DrawHelper.d.ts +54 -0
- package/bin/types/utils/JsViewVueTools/JsvTextureStore/CanvasTexture/Path.d.ts +13 -0
- package/bin/types/utils/JsViewVueTools/JsvTextureStore/CapturedTexture/CapturedTexture.d.ts +5 -3
- package/bin/types/utils/JsViewVueTools/JsvTextureStore/JsvTextureStore.d.ts +88 -25
- package/bin/types/utils/JsViewVueTools/JsvTextureStore/Store.d.ts +2 -0
- package/bin/types/utils/JsViewVueTools/JsvTextureStore/Texture.d.ts +4 -0
- package/bin/types/utils/JsViewVueTools/JsvTextureStore/TextureBuilder.d.ts +49 -0
- package/bin/types/utils/JsViewVueTools/JsvTextureStore/index.d.ts +2 -0
- package/bin/types/utils/JsViewVueTools/index.d.ts +3 -1
- package/bin/types/utils/JsViewVueWidget/JsvApic/JsvApic2/JsvApic2.vue.d.ts +12 -22
- package/bin/types/utils/JsViewVueWidget/JsvApic/JsvApic2/index.d.ts +12 -22
- package/bin/types/utils/JsViewVueWidget/JsvDashPath.vue.d.ts +11 -0
- package/bin/types/utils/JsViewVueWidget/JsvDomRenderer/JsViewHtmlToVNodesOptions.d.ts +101 -0
- package/bin/types/utils/JsViewVueWidget/JsvDomRenderer/JsvDomRenderer.d.ts +61 -0
- package/bin/types/utils/JsViewVueWidget/JsvDomRenderer/htmlToVNodes.d.ts +58 -0
- package/bin/types/utils/JsViewVueWidget/JsvDomRenderer/index.d.ts +1 -0
- package/bin/types/utils/JsViewVueWidget/JsvFragShaderView/JsvFragShaderView.vue.d.ts +3 -1
- package/bin/types/utils/JsViewVueWidget/JsvFreeMoveActor/ActorControl.d.ts +151 -18
- package/bin/types/utils/JsViewVueWidget/JsvFreeMoveActor/CallbackManager.d.ts +2 -1
- package/bin/types/utils/JsViewVueWidget/JsvFreeMoveActor/CmdTypes.d.ts +16 -0
- package/bin/types/utils/JsViewVueWidget/JsvFreeMoveActor/ForgeTypeDefine.d.ts +2 -1
- package/bin/types/utils/JsViewVueWidget/JsvFreeMoveActor/NexusNode.d.ts +3 -1
- package/bin/types/utils/JsViewVueWidget/JsvFreeMoveActor/SetAction.d.ts +55 -12
- package/bin/types/utils/JsViewVueWidget/JsvFreeMoveActor/SetCondition.d.ts +178 -35
- package/bin/types/utils/JsViewVueWidget/JsvFreeMoveActor/SetState.d.ts +119 -17
- package/bin/types/utils/JsViewVueWidget/JsvFreeMoveActor/index.d.ts +9 -3
- package/bin/types/utils/JsViewVueWidget/JsvInput/EditViewOperator.d.ts +4 -1
- package/bin/types/utils/JsViewVueWidget/JsvInput/JsvInput.vue.d.ts +22 -1
- package/bin/types/utils/JsViewVueWidget/JsvLine/JsvLine.vue.d.ts +1 -1
- package/bin/types/utils/JsViewVueWidget/JsvPieChart.vue.d.ts +2 -0
- package/bin/types/utils/JsViewVueWidget/JsvPreload/JsvPreload.vue.d.ts +5 -2
- package/bin/types/utils/JsViewVueWidget/JsvQrcode/JsvQrcode.vue.d.ts +1 -1
- package/bin/types/utils/JsViewVueWidget/JsvScrollBox/JsvScrollBox.vue.d.ts +39 -1
- package/bin/types/utils/JsViewVueWidget/JsvSector.vue.d.ts +1 -0
- package/bin/types/utils/JsViewVueWidget/JsvSmoothSlideContainer.vue.d.ts +72 -0
- package/bin/types/utils/JsViewVueWidget/JsvSoundPool.d.ts +26 -0
- package/bin/types/utils/JsViewVueWidget/JsvSwiper/JsvSmoothSwiper.vue.d.ts +112 -0
- package/bin/types/utils/JsViewVueWidget/JsvSwiper/JsvSwiper2.vue.d.ts +142 -0
- package/bin/types/utils/JsViewVueWidget/JsvSwiper/index.d.ts +3 -1
- package/bin/types/utils/JsViewVueWidget/JsvTextBox.vue.d.ts +15 -3
- package/bin/types/utils/JsViewVueWidget/JsvTextureAnim/JsvTextureAnim.vue.d.ts +22 -96
- package/bin/types/utils/JsViewVueWidget/JsvTouchModeSwitcher.vue.d.ts +6 -0
- package/bin/types/utils/JsViewVueWidget/{JsvPosterDiv.vue.d.ts → TypesDiv/JsvPosterDiv.vue.d.ts} +9 -0
- package/bin/types/utils/JsViewVueWidget/{JsvPosterImage.vue.d.ts → TypesDiv/JsvPosterImage.vue.d.ts} +15 -3
- package/bin/types/utils/JsViewVueWidget/TypesDiv/JsvSmartDiv.vue.d.ts +72 -0
- package/bin/types/utils/JsViewVueWidget/TypesDiv/JsvSmartImage.vue.d.ts +90 -0
- package/bin/types/utils/JsViewVueWidget/index.d.ts +8 -4
- package/dist/types/utils/JsViewEngineWidget/CheckType.d.ts +7 -0
- package/dist/types/utils/JsViewEngineWidget/JsvFocus/JsvFocusBlock.vue.d.ts +106 -0
- package/dist/types/utils/JsViewEngineWidget/JsvFocus/JsvFocusHub.d.ts +128 -0
- package/dist/types/utils/JsViewEngineWidget/JsvFocus/JsvFocusManager.d.ts +25 -0
- package/dist/types/utils/JsViewEngineWidget/MetroWidget/Const.d.ts +23 -0
- package/dist/types/utils/JsViewEngineWidget/MetroWidget/DebugFrame.vue.d.ts +12 -0
- package/dist/types/utils/JsViewEngineWidget/MetroWidget/DebugTools.d.ts +9 -0
- package/dist/types/utils/JsViewEngineWidget/MetroWidget/Dispatcher.d.ts +16 -0
- package/dist/types/utils/JsViewEngineWidget/MetroWidget/ListWidget.vue.d.ts +412 -0
- package/dist/types/utils/JsViewEngineWidget/MetroWidget/MetroWidget.vue.d.ts +751 -0
- package/dist/types/utils/JsViewEngineWidget/MetroWidget/MetroWidgetDebugger.d.ts +9 -0
- package/dist/types/utils/JsViewEngineWidget/MetroWidget/MetroWidgetSetup.d.ts +82 -0
- package/dist/types/utils/JsViewEngineWidget/MetroWidget/PageUpdater.d.ts +31 -0
- package/dist/types/utils/JsViewEngineWidget/MetroWidget/RenderItem.d.ts +80 -0
- package/dist/types/utils/JsViewEngineWidget/MetroWidget/Slide.d.ts +25 -0
- package/dist/types/utils/JsViewEngineWidget/MetroWidget/SlotComponent.vue.d.ts +52 -0
- package/dist/types/utils/JsViewEngineWidget/MetroWidget/TaskManager.d.ts +69 -0
- package/dist/types/utils/JsViewEngineWidget/MetroWidget/TokenGenerator.d.ts +4 -0
- package/dist/types/utils/JsViewEngineWidget/MetroWidget/Utils.d.ts +6 -0
- package/dist/types/utils/JsViewEngineWidget/MetroWidget/VisibleInfo.d.ts +20 -0
- package/dist/types/utils/JsViewEngineWidget/MetroWidget/WidgetRectInfo.d.ts +21 -0
- package/dist/types/utils/JsViewEngineWidget/RangeModel.d.ts +166 -0
- package/dist/types/utils/JsViewEngineWidget/RectUtils.d.ts +61 -0
- package/dist/types/utils/JsViewEngineWidget/SpatialNavigator/SpatialNavProvider.vue.d.ts +74 -0
- package/dist/types/utils/JsViewEngineWidget/SpatialNavigator/SpatialNavigationAlgorithm.d.ts +28 -0
- package/dist/types/utils/JsViewEngineWidget/SpatialNavigator/SpatialNavigationNode.d.ts +23 -0
- package/dist/types/utils/JsViewEngineWidget/SpatialNavigator/SpatialNavigator.d.ts +46 -0
- package/dist/types/utils/JsViewEngineWidget/TemplateParser/CommonMetroTemplate.d.ts +42 -0
- package/dist/types/utils/JsViewEngineWidget/TemplateParser/Fence.d.ts +62 -0
- package/dist/types/utils/JsViewEngineWidget/TemplateParser/ListMetroTemplate.d.ts +21 -0
- package/dist/types/utils/JsViewEngineWidget/TemplateParser/MetroTemplate.d.ts +103 -0
- package/dist/types/utils/JsViewEngineWidget/TemplateParser/TemplateItemAdder.d.ts +28 -0
- package/dist/types/utils/JsViewEngineWidget/TemplateParser/index.d.ts +8 -0
- package/dist/types/utils/JsViewEngineWidget/WidgetCommon.d.ts +160 -0
- package/dist/types/utils/JsViewEngineWidget/index.d.ts +21 -0
- package/dist/types/utils/JsViewPlugin/JsvAccount/JsvAccount.d.ts +46 -0
- package/dist/types/utils/JsViewPlugin/JsvAudio/AudioProxy.d.ts +6 -0
- package/dist/types/utils/JsViewPlugin/JsvAudio/BrowserAudio/BrowserAudio.vue.d.ts +22 -0
- package/dist/types/utils/JsViewPlugin/JsvAudio/BrowserAudio/JsvSystemAudio.vue.d.ts +212 -0
- package/dist/types/utils/JsViewPlugin/JsvAudio/CheckType.d.ts +6 -0
- package/dist/types/utils/JsViewPlugin/JsvAudio/Events.d.ts +17 -0
- package/dist/types/utils/JsViewPlugin/JsvAudio/JsvAudio.vue.d.ts +22 -0
- package/dist/types/utils/JsViewPlugin/JsvAudio/JsvAudioBridgeProxy.d.ts +12 -0
- package/dist/types/utils/JsViewPlugin/JsvAudio/JsvAudioProxy.vue.d.ts +6 -0
- package/dist/types/utils/JsViewPlugin/JsvAudio/PluginLoader.d.ts +5 -0
- package/dist/types/utils/JsViewPlugin/JsvAudio/ScreenLockManager.d.ts +9 -0
- package/dist/types/utils/JsViewPlugin/JsvAudio/index.d.ts +7 -0
- package/dist/types/utils/JsViewPlugin/JsvAudio/version.d.mts +14 -0
- package/{bin/types/utils/JsViewPlugin/JsvLatex → dist/types/utils/JsViewPlugin/JsvAudio}/version.d.ts +5 -0
- package/dist/types/utils/JsViewPlugin/JsvLatex/BrowserDomBuilder.d.ts +0 -0
- package/dist/types/utils/JsViewPlugin/JsvLatex/BrowserJsvLatex.vue.d.ts +17 -0
- package/dist/types/utils/JsViewPlugin/JsvLatex/Color.d.ts +5 -0
- package/dist/types/utils/JsViewPlugin/JsvLatex/GetVersion.d.ts +18 -0
- package/dist/types/utils/JsViewPlugin/JsvLatex/JsvLatex.vue.d.ts +46 -0
- package/dist/types/utils/JsViewPlugin/JsvLatex/JsvLatexBridgeProxy.d.ts +8 -0
- package/dist/types/utils/JsViewPlugin/JsvLatex/JsvLatexProxy.vue.d.ts +9 -0
- package/dist/types/utils/JsViewPlugin/JsvLatex/PluginLoader.d.ts +5 -0
- package/dist/types/utils/JsViewPlugin/JsvLatex/index.d.ts +8 -0
- package/dist/types/utils/JsViewPlugin/JsvLatex/version.d.mts +40 -0
- package/dist/types/utils/JsViewPlugin/JsvPlayer/AckEventDefine.d.ts +10 -0
- package/dist/types/utils/JsViewPlugin/JsvPlayer/GetVersion.d.ts +13 -0
- package/dist/types/utils/JsViewPlugin/JsvPlayer/JsvMedia.d.ts +523 -0
- package/dist/types/utils/JsViewPlugin/JsvPlayer/JsvMediaBrowserInterface.d.ts +119 -0
- package/dist/types/utils/JsViewPlugin/JsvPlayer/JsvPlayer.vue.d.ts +664 -0
- package/dist/types/utils/JsViewPlugin/JsvPlayer/JsvPlayerBrowser-0.9.vue.d.ts +45 -0
- package/dist/types/utils/JsViewPlugin/JsvPlayer/JsvPlayerBrowser-wasm.vue.d.ts +611 -0
- package/dist/types/utils/JsViewPlugin/JsvPlayer/JsvPlayerBrowser.vue.d.ts +597 -0
- package/dist/types/utils/JsViewPlugin/JsvPlayer/index-0.9.d.ts +415 -0
- package/dist/types/utils/JsViewPlugin/JsvPlayer/index.d.ts +415 -0
- package/dist/types/utils/JsViewPlugin/JsvPlayer/version.d.mts +14 -0
- package/dist/types/utils/JsViewPlugin/index.d.ts +7 -0
- package/dist/types/utils/JsViewVueTools/BlobApi.d.ts +42 -0
- package/dist/types/utils/JsViewVueTools/ConstSymbol.d.ts +6 -0
- package/dist/types/utils/JsViewVueTools/DebugContentShellJBridge.d.ts +10 -0
- package/dist/types/utils/JsViewVueTools/DebugTool.d.ts +12 -0
- package/dist/types/utils/JsViewVueTools/DefaultKeyMap.d.ts +14 -0
- package/dist/types/utils/JsViewVueTools/FeatureActive.d.ts +15 -0
- package/dist/types/utils/JsViewVueTools/ForgeConstDefine.d.ts +15 -0
- package/dist/types/utils/JsViewVueTools/ForgeHandles.d.ts +11 -0
- package/dist/types/utils/JsViewVueTools/JsvDynamicCssStyle.d.ts +33 -0
- package/dist/types/utils/JsViewVueTools/JsvDynamicKeyFrames.d.ts +40 -0
- package/dist/types/utils/JsViewVueTools/JsvFederationTools.d.ts +20 -0
- package/dist/types/utils/JsViewVueTools/JsvHashHistory.d.ts +20 -0
- package/dist/types/utils/JsViewVueTools/JsvImpactTracer.d.ts +44 -0
- package/dist/types/utils/JsViewVueTools/JsvInteractionMode.d.ts +10 -0
- package/dist/types/utils/JsViewVueTools/JsvPerformance.d.ts +9 -0
- package/dist/types/utils/JsViewVueTools/JsvPreDownloader.d.ts +55 -0
- package/dist/types/utils/JsViewVueTools/JsvRefTaker.d.ts +52 -0
- package/dist/types/utils/JsViewVueTools/JsvRuntimeBridge.d.ts +378 -0
- package/dist/types/utils/JsViewVueTools/JsvStyleClass.d.ts +35 -0
- package/dist/types/utils/JsViewVueTools/JsvStyleSheetsDeclarer.d.ts +35 -0
- package/dist/types/utils/JsViewVueTools/JsvTextTools.d.ts +66 -0
- package/dist/types/utils/JsViewVueTools/JsvTextureDefines.d.ts +10 -0
- package/dist/types/utils/JsViewVueTools/JsvTextureLoadTool.d.ts +67 -0
- package/dist/types/utils/JsViewVueTools/JsvTextureStore/BitPalette/BitPalette.d.ts +47 -0
- package/dist/types/utils/JsViewVueTools/JsvTextureStore/CanvasTexture/CanvasTexture.d.ts +99 -0
- package/dist/types/utils/JsViewVueTools/JsvTextureStore/CanvasTexture/CommandList.d.ts +20 -0
- package/dist/types/utils/JsViewVueTools/JsvTextureStore/CanvasTexture/DrawHelper.d.ts +58 -0
- package/dist/types/utils/JsViewVueTools/JsvTextureStore/CanvasTexture/Path.d.ts +113 -0
- package/dist/types/utils/JsViewVueTools/JsvTextureStore/CapturedTexture/CapturedTexture.d.ts +17 -0
- package/dist/types/utils/JsViewVueTools/JsvTextureStore/JsvTextureStore.d.ts +170 -0
- package/dist/types/utils/JsViewVueTools/JsvTextureStore/Store.d.ts +16 -0
- package/dist/types/utils/JsViewVueTools/JsvTextureStore/Texture.d.ts +31 -0
- package/dist/types/utils/JsViewVueTools/JsvTextureStore/TextureBuilder.d.ts +53 -0
- package/dist/types/utils/JsViewVueTools/JsvTextureStore/index.d.ts +6 -0
- package/dist/types/utils/JsViewVueTools/NinePatchHelper.d.ts +25 -0
- package/dist/types/utils/JsViewVueTools/TextureManagerTools.d.ts +11 -0
- package/dist/types/utils/JsViewVueTools/TypeCheckAndSet.d.ts +7 -0
- package/dist/types/utils/JsViewVueTools/index.d.ts +29 -0
- package/dist/types/utils/JsViewVueWidget/Jsv3dDiv.vue.d.ts +124 -0
- package/dist/types/utils/JsViewVueWidget/Jsv3dStage.vue.d.ts +148 -0
- package/dist/types/utils/JsViewVueWidget/JsvActorMove/ActorControlBase.d.ts +35 -0
- package/dist/types/utils/JsViewVueWidget/JsvActorMove/JsvActorMove.vue.d.ts +102 -0
- package/dist/types/utils/JsViewVueWidget/JsvActorMove/JsvActorMoveControl.d.ts +37 -0
- package/dist/types/utils/JsViewVueWidget/JsvActorMove/index.d.ts +8 -0
- package/dist/types/utils/JsViewVueWidget/JsvApic/JsvApic/BrowserApic.vue.d.ts +15 -0
- package/dist/types/utils/JsViewVueWidget/JsvApic/JsvApic/JsvApic.vue.d.ts +77 -0
- package/dist/types/utils/JsViewVueWidget/JsvApic/JsvApic/index.d.ts +54 -0
- package/dist/types/utils/JsViewVueWidget/JsvApic/JsvApic2/BrowserApic2.vue.d.ts +13 -0
- package/dist/types/utils/JsViewVueWidget/JsvApic/JsvApic2/JsvApic2.vue.d.ts +44 -0
- package/dist/types/utils/JsViewVueWidget/JsvApic/JsvApic2/index.d.ts +17 -0
- package/dist/types/utils/JsViewVueWidget/JsvApic/JsvBrowserApicLib/ApicDataBase.d.ts +13 -0
- package/dist/types/utils/JsViewVueWidget/JsvApic/JsvBrowserApicLib/BrowserApicLib.d.ts +3 -0
- package/dist/types/utils/JsViewVueWidget/JsvApic/JsvBrowserApicLib/GifData.d.ts +5 -0
- package/dist/types/utils/JsViewVueWidget/JsvApic/JsvBrowserApicLib/NormalLoopTool.d.ts +7 -0
- package/dist/types/utils/JsViewVueWidget/JsvApic/JsvBrowserApicLib/PartLoopTool.d.ts +12 -0
- package/dist/types/utils/JsViewVueWidget/JsvApic/JsvBrowserApicLib/SingleLoopTool.d.ts +5 -0
- package/dist/types/utils/JsViewVueWidget/JsvApic/JsvBrowserApicLib/Viewer.d.ts +20 -0
- package/dist/types/utils/JsViewVueWidget/JsvApic/JsvBrowserApicLib/WebpData.d.ts +5 -0
- package/dist/types/utils/JsViewVueWidget/JsvApic/JsvCommonLoopToolBase.d.ts +26 -0
- package/dist/types/utils/JsViewVueWidget/JsvClipDiv/JsvClipDiv.vue.d.ts +74 -0
- package/dist/types/utils/JsViewVueWidget/JsvClipDiv/index.d.ts +5 -0
- package/dist/types/utils/JsViewVueWidget/JsvConnectLine/ArcLineManager.d.ts +5 -0
- package/dist/types/utils/JsViewVueWidget/JsvConnectLine/JsvConnectLine.vue.d.ts +34 -0
- package/dist/types/utils/JsViewVueWidget/JsvConnectLine/index.d.ts +6 -0
- package/dist/types/utils/JsViewVueWidget/JsvDashPath.vue.d.ts +33 -0
- package/dist/types/utils/JsViewVueWidget/JsvDomRenderer/JsViewHtmlToVNodesOptions.d.ts +105 -0
- package/dist/types/utils/JsViewVueWidget/JsvDomRenderer/JsvDomRenderer.d.ts +65 -0
- package/dist/types/utils/JsViewVueWidget/JsvDomRenderer/htmlToVNodes.d.ts +62 -0
- package/dist/types/utils/JsViewVueWidget/JsvDomRenderer/index.d.ts +5 -0
- package/dist/types/utils/JsViewVueWidget/JsvDragBox/JsvDragBox.vue.d.ts +109 -0
- package/dist/types/utils/JsViewVueWidget/JsvDriftScope/JsvDriftScope.vue.d.ts +108 -0
- package/dist/types/utils/JsViewVueWidget/JsvDriftScope/index.d.ts +5 -0
- package/dist/types/utils/JsViewVueWidget/JsvEnableRenderBreak.vue.d.ts +61 -0
- package/dist/types/utils/JsViewVueWidget/JsvFilterView.vue.d.ts +91 -0
- package/dist/types/utils/JsViewVueWidget/JsvFlexCell/JsvFlexDiv.vue.d.ts +106 -0
- package/dist/types/utils/JsViewVueWidget/JsvFlexCell/JsvFullScrAdjust.vue.d.ts +100 -0
- package/dist/types/utils/JsViewVueWidget/JsvFlexCell/JsvScreenFlex.vue.d.ts +108 -0
- package/dist/types/utils/JsViewVueWidget/JsvFlexCell/index.d.ts +7 -0
- package/dist/types/utils/JsViewVueWidget/JsvFragShaderView/JsvFragShaderView.vue.d.ts +63 -0
- package/dist/types/utils/JsViewVueWidget/JsvFragShaderView/index.d.ts +5 -0
- package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/ActionRefObject.d.ts +4 -0
- package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/ActorControl.d.ts +228 -0
- package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/ActorState.d.ts +6 -0
- package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/CallbackManager.d.ts +16 -0
- package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/CmdTypes.d.ts +16 -0
- package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/ForgeTypeDefine.d.ts +20 -0
- package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/JsvEnvBlocker.vue.d.ts +106 -0
- package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/JsvFreeMoveActor.vue.d.ts +107 -0
- package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/KeepFlags.d.ts +11 -0
- package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/NexusNode.d.ts +12 -0
- package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/SetAction.d.ts +118 -0
- package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/SetCondition.d.ts +244 -0
- package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/SetState.d.ts +169 -0
- package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/SyncLinkManager.d.ts +22 -0
- package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/index.d.ts +24 -0
- package/dist/types/utils/JsViewVueWidget/JsvGrid.vue.d.ts +241 -0
- package/dist/types/utils/JsViewVueWidget/JsvHole.d.ts +19 -0
- package/dist/types/utils/JsViewVueWidget/JsvInput/Cursor.vue.d.ts +16 -0
- package/dist/types/utils/JsViewVueWidget/JsvInput/EditViewOperator.d.ts +52 -0
- package/dist/types/utils/JsViewVueWidget/JsvInput/EditVisibleArea.d.ts +30 -0
- package/dist/types/utils/JsViewVueWidget/JsvInput/JsvInput.vue.d.ts +98 -0
- package/dist/types/utils/JsViewVueWidget/JsvInput/SharedDefine.d.ts +17 -0
- package/dist/types/utils/JsViewVueWidget/JsvInput/SystemTextTools.d.ts +20 -0
- package/dist/types/utils/JsViewVueWidget/JsvInput/index.d.ts +8 -0
- package/dist/types/utils/JsViewVueWidget/JsvLine/JsvLine.vue.d.ts +32 -0
- package/dist/types/utils/JsViewVueWidget/JsvLine/LineManager.d.ts +5 -0
- package/dist/types/utils/JsViewVueWidget/JsvLine/index.d.ts +6 -0
- package/dist/types/utils/JsViewVueWidget/JsvMarquee.vue.d.ts +33 -0
- package/dist/types/utils/JsViewVueWidget/JsvMaskClipDiv.vue.d.ts +101 -0
- package/dist/types/utils/JsViewVueWidget/JsvMindMap/CommonType.d.ts +1 -0
- package/dist/types/utils/JsViewVueWidget/JsvMindMap/Constant.d.ts +13 -0
- package/dist/types/utils/JsViewVueWidget/JsvMindMap/DataTree.d.ts +75 -0
- package/dist/types/utils/JsViewVueWidget/JsvMindMap/Geometry.d.ts +72 -0
- package/dist/types/utils/JsViewVueWidget/JsvMindMap/JsvMindMap.vue.d.ts +235 -0
- package/dist/types/utils/JsViewVueWidget/JsvMindMap/index.d.ts +5 -0
- package/dist/types/utils/JsViewVueWidget/JsvMindMap/rtree.d.ts +44 -0
- package/dist/types/utils/JsViewVueWidget/JsvNativeSharedDiv.vue.d.ts +93 -0
- package/dist/types/utils/JsViewVueWidget/JsvNinePatch.vue.d.ts +55 -0
- package/dist/types/utils/JsViewVueWidget/JsvPieChart.vue.d.ts +30 -0
- package/dist/types/utils/JsViewVueWidget/JsvPreload/JsvPreload.vue.d.ts +68 -0
- package/dist/types/utils/JsViewVueWidget/JsvPreload/index.d.ts +6 -0
- package/dist/types/utils/JsViewVueWidget/JsvProgressBar.vue.d.ts +31 -0
- package/dist/types/utils/JsViewVueWidget/JsvQrcode/JsvQrcode.vue.d.ts +85 -0
- package/dist/types/utils/JsViewVueWidget/JsvRadarChart.vue.d.ts +37 -0
- package/dist/types/utils/JsViewVueWidget/JsvRipple/Constant.d.ts +8 -0
- package/dist/types/utils/JsViewVueWidget/JsvRipple/JsvRipple.vue.d.ts +129 -0
- package/dist/types/utils/JsViewVueWidget/JsvRipple/index.d.ts +7 -0
- package/dist/types/utils/JsViewVueWidget/JsvScaleTextBox.vue.d.ts +28 -0
- package/dist/types/utils/JsViewVueWidget/JsvScrollBox/JsvScrollBox.vue.d.ts +278 -0
- package/dist/types/utils/JsViewVueWidget/JsvScrollBox/JsvScrollFollow.vue.d.ts +157 -0
- package/dist/types/utils/JsViewVueWidget/JsvScrollBox/ScrollInnerSymbol.d.ts +8 -0
- package/dist/types/utils/JsViewVueWidget/JsvScrollBox/ScrollSymbol.d.ts +16 -0
- package/dist/types/utils/JsViewVueWidget/JsvScrollBox/index.d.ts +7 -0
- package/dist/types/utils/JsViewVueWidget/JsvSector.vue.d.ts +30 -0
- package/dist/types/utils/JsViewVueWidget/JsvSmoothSlideContainer.vue.d.ts +76 -0
- package/dist/types/utils/JsViewVueWidget/JsvSoundPool.d.ts +114 -0
- package/dist/types/utils/JsViewVueWidget/JsvSpray/JsvSpray.vue.d.ts +58 -0
- package/dist/types/utils/JsViewVueWidget/JsvSpriteAnim/FrameBuidler.d.ts +18 -0
- package/dist/types/utils/JsViewVueWidget/JsvSpriteAnim/JsvSpriteAnim.vue.d.ts +70 -0
- package/dist/types/utils/JsViewVueWidget/JsvSpriteAnim/JsvSpriteLoader.vue.d.ts +85 -0
- package/dist/types/utils/JsViewVueWidget/JsvSpriteAnim/JsvSpriteTools.d.ts +15 -0
- package/dist/types/utils/JsViewVueWidget/JsvSpriteAnim/SpriteController.d.ts +21 -0
- package/dist/types/utils/JsViewVueWidget/JsvSpriteAnim/index.d.ts +9 -0
- package/dist/types/utils/JsViewVueWidget/JsvSpriteAnim/sAnimationToken.d.ts +6 -0
- package/dist/types/utils/JsViewVueWidget/JsvSwiper/Indicator.vue.d.ts +16 -0
- package/dist/types/utils/JsViewVueWidget/JsvSwiper/JsvSmoothSwiper.vue.d.ts +141 -0
- package/dist/types/utils/JsViewVueWidget/JsvSwiper/JsvSwiper.vue.d.ts +248 -0
- package/dist/types/utils/JsViewVueWidget/JsvSwiper/JsvSwiper2.vue.d.ts +181 -0
- package/dist/types/utils/JsViewVueWidget/JsvSwiper/index.d.ts +8 -0
- package/dist/types/utils/JsViewVueWidget/JsvSwiper3D/Indicator.vue.d.ts +16 -0
- package/dist/types/utils/JsViewVueWidget/JsvSwiper3D/JsvSwiper.vue.d.ts +121 -0
- package/dist/types/utils/JsViewVueWidget/JsvSwiper3D/index.d.ts +6 -0
- package/dist/types/utils/JsViewVueWidget/JsvTextBox.vue.d.ts +121 -0
- package/dist/types/utils/JsViewVueWidget/JsvTextureAnim/CommonType.d.ts +6 -0
- package/dist/types/utils/JsViewVueWidget/JsvTextureAnim/JsvTextureAnim.vue.d.ts +38 -0
- package/dist/types/utils/JsViewVueWidget/JsvTextureAnim/index.d.ts +8 -0
- package/dist/types/utils/JsViewVueWidget/JsvTouchModeSwitcher.vue.d.ts +109 -0
- package/dist/types/utils/JsViewVueWidget/JsvVideo.vue.d.ts +23 -0
- package/dist/types/utils/JsViewVueWidget/JsvVisibleSensor/JsvVisibleSensor.vue.d.ts +109 -0
- package/dist/types/utils/JsViewVueWidget/JsvVisibleSensor/index.d.ts +88 -0
- package/dist/types/utils/JsViewVueWidget/TypesDiv/JsvPosterDiv.vue.d.ts +94 -0
- package/dist/types/utils/JsViewVueWidget/TypesDiv/JsvPosterImage.vue.d.ts +115 -0
- package/dist/types/utils/JsViewVueWidget/TypesDiv/JsvSmartDiv.vue.d.ts +94 -0
- package/dist/types/utils/JsViewVueWidget/TypesDiv/JsvSmartImage.vue.d.ts +115 -0
- package/dist/types/utils/JsViewVueWidget/index.d.ts +53 -0
- package/dist/types/utils/index.d.ts +8 -0
- package/dist/utils/browser/BrowserAudio.vue.mjs +258 -0
- package/dist/utils/browser/BrowserJsvLatex.vue.mjs +64 -0
- package/dist/utils/export-sfc.mjs +12 -0
- package/dist/utils/index.mjs +29000 -0
- package/dist/utils/jsview-vue-common.mjs +39 -0
- package/package.json +1 -1
- package/utils/JsViewEngineWidget/JsvFocus/JsvFocusBlock.vue +32 -16
- package/utils/JsViewEngineWidget/JsvFocus/JsvFocusHub.ts +51 -3
- package/utils/JsViewEngineWidget/MetroWidget/Const.ts +5 -0
- package/utils/JsViewEngineWidget/MetroWidget/ListWidget.vue +193 -89
- package/utils/JsViewEngineWidget/MetroWidget/MetroWidget.vue +347 -145
- package/utils/JsViewEngineWidget/MetroWidget/MetroWidgetDebugger.ts +15 -0
- package/utils/JsViewEngineWidget/MetroWidget/MetroWidgetSetup.js +1603 -588
- package/utils/JsViewEngineWidget/MetroWidget/PageUpdater.ts +41 -23
- package/utils/JsViewEngineWidget/MetroWidget/RenderItem.ts +146 -38
- package/utils/JsViewEngineWidget/MetroWidget/TaskManager.ts +39 -26
- package/utils/JsViewEngineWidget/MetroWidget/Utils.ts +6 -0
- package/utils/JsViewEngineWidget/MetroWidget/WidgetRectInfo.ts +2 -1
- package/utils/JsViewEngineWidget/RectUtils.js +1 -1
- package/utils/JsViewEngineWidget/SpatialNavigator/SpatialNavProvider.vue +62 -0
- package/utils/JsViewEngineWidget/SpatialNavigator/SpatialNavigationAlgorithm.ts +260 -0
- package/utils/JsViewEngineWidget/SpatialNavigator/SpatialNavigationNode.ts +32 -0
- package/utils/JsViewEngineWidget/SpatialNavigator/SpatialNavigator.ts +236 -0
- package/utils/JsViewEngineWidget/TemplateParser/CommonMetroTemplate.ts +434 -264
- package/utils/JsViewEngineWidget/TemplateParser/ListMetroTemplate.ts +101 -27
- package/utils/JsViewEngineWidget/TemplateParser/MetroTemplate.ts +54 -5
- package/utils/JsViewEngineWidget/TemplateParser/TemplateItemAdder.ts +109 -41
- package/utils/JsViewEngineWidget/WidgetCommon.ts +29 -7
- package/utils/JsViewEngineWidget/index.ts +7 -2
- package/utils/JsViewPlugin/JsvAudio/BrowserAudio/BrowserAudio.vue +4 -0
- package/utils/JsViewPlugin/JsvAudio/BrowserAudio/JsvSystemAudio.vue +13 -13
- package/utils/JsViewPlugin/JsvLatex/BrowserDomBuilder.js +46 -46
- package/utils/JsViewPlugin/JsvLatex/BrowserJsvLatex.vue +54 -41
- package/utils/JsViewPlugin/JsvLatex/Color.ts +104 -39
- package/utils/JsViewPlugin/JsvLatex/GetVersion.js +65 -0
- package/utils/JsViewPlugin/JsvLatex/JsvLatex.vue +71 -17
- package/utils/JsViewPlugin/JsvLatex/JsvLatexBridgeProxy.js +10 -0
- package/utils/JsViewPlugin/JsvLatex/JsvLatexProxy.vue +14 -2
- package/utils/JsViewPlugin/JsvLatex/PluginLoader.js +63 -31
- package/utils/JsViewPlugin/JsvLatex/version.mjs +26 -13
- package/utils/JsViewPlugin/JsvPlayer/GetVersion.js +2 -1
- package/utils/JsViewPlugin/JsvPlayer/JsvMedia.js +402 -23
- package/utils/JsViewPlugin/JsvPlayer/JsvMediaBrowserInterface.js +100 -0
- package/utils/JsViewPlugin/JsvPlayer/JsvPlayer.vue +363 -468
- package/utils/JsViewPlugin/JsvPlayer/{BrowserJsvPlayer.vue → JsvPlayerBrowser-wasm.vue} +61 -11
- package/utils/JsViewPlugin/JsvPlayer/JsvPlayerBrowser.vue +511 -0
- package/utils/JsViewPlugin/JsvPlayer/index-0.9.js +52 -10
- package/utils/JsViewPlugin/JsvPlayer/index.js +58 -9
- package/utils/JsViewPlugin/JsvPlayer/package.json +8 -0
- package/utils/JsViewVueTools/BlobApi.ts +55 -0
- package/utils/JsViewVueTools/FeatureActive.ts +5 -1
- package/utils/JsViewVueTools/ForgeHandles.ts +8 -2
- package/utils/JsViewVueTools/JsvInteractionMode.js +16 -0
- package/utils/JsViewVueTools/JsvPreDownloader.ts +2 -2
- package/utils/JsViewVueTools/JsvRuntimeBridge.js +125 -8
- package/utils/JsViewVueTools/JsvTextTools.ts +12 -2
- package/utils/JsViewVueTools/JsvTextureStore/BitPalette/BitPalette.ts +180 -0
- package/utils/JsViewVueTools/JsvTextureStore/CanvasTexture/CommandList.ts +1 -0
- package/utils/JsViewVueTools/JsvTextureStore/CanvasTexture/DrawHelper.ts +304 -0
- package/utils/JsViewVueTools/JsvTextureStore/CanvasTexture/Path.ts +38 -0
- package/utils/JsViewVueTools/JsvTextureStore/CapturedTexture/CapturedTexture.ts +30 -12
- package/utils/JsViewVueTools/JsvTextureStore/JsvTextureStore.ts +157 -51
- package/utils/JsViewVueTools/JsvTextureStore/Store.ts +33 -21
- package/utils/JsViewVueTools/JsvTextureStore/Texture.ts +56 -41
- package/utils/JsViewVueTools/JsvTextureStore/TextureBuilder.ts +92 -0
- package/utils/JsViewVueTools/JsvTextureStore/index.js +2 -0
- package/utils/JsViewVueTools/index.js +3 -1
- package/utils/JsViewVueWidget/JsvApic/JsvApic2/JsvApic2.vue +111 -86
- package/utils/JsViewVueWidget/JsvDashPath.vue +150 -0
- package/utils/JsViewVueWidget/JsvDomRenderer/JsViewHtmlToVNodesOptions.ts +212 -0
- package/utils/JsViewVueWidget/JsvDomRenderer/JsvDomRenderer.ts +146 -0
- package/utils/JsViewVueWidget/JsvDomRenderer/htmlToVNodes.ts +748 -0
- package/utils/JsViewVueWidget/JsvDomRenderer/index.ts +1 -0
- package/utils/JsViewVueWidget/JsvDragBox/JsvDragBox.vue +10 -1
- package/utils/JsViewVueWidget/JsvEnableRenderBreak.vue +6 -0
- package/utils/JsViewVueWidget/JsvFlexCell/JsvFlexDiv.vue +11 -5
- package/utils/JsViewVueWidget/JsvFlexCell/JsvFullScrAdjust.vue +3 -1
- package/utils/JsViewVueWidget/JsvFlexCell/JsvScreenFlex.vue +3 -1
- package/utils/JsViewVueWidget/JsvFragShaderView/JsvFragShaderView.vue +24 -8
- package/utils/JsViewVueWidget/JsvFreeMoveActor/ActorControl.ts +269 -26
- package/utils/JsViewVueWidget/JsvFreeMoveActor/CallbackManager.ts +2 -1
- package/utils/JsViewVueWidget/JsvFreeMoveActor/CmdTypes.ts +24 -0
- package/utils/JsViewVueWidget/JsvFreeMoveActor/ForgeTypeDefine.ts +3 -0
- package/utils/JsViewVueWidget/JsvFreeMoveActor/{FreeMoveActor.vue → JsvFreeMoveActor.vue} +5 -1
- package/utils/JsViewVueWidget/JsvFreeMoveActor/NexusNode.ts +10 -2
- package/utils/JsViewVueWidget/JsvFreeMoveActor/SetAction.ts +223 -100
- package/utils/JsViewVueWidget/JsvFreeMoveActor/SetCondition.ts +245 -64
- package/utils/JsViewVueWidget/JsvFreeMoveActor/SetState.ts +95 -29
- package/utils/JsViewVueWidget/JsvFreeMoveActor/index.js +27 -5
- package/utils/JsViewVueWidget/JsvInput/EditViewOperator.ts +11 -2
- package/utils/JsViewVueWidget/JsvInput/JsvInput.vue +30 -2
- package/utils/JsViewVueWidget/JsvLine/JsvLine.vue +24 -7
- package/utils/JsViewVueWidget/JsvMarquee.vue +1 -1
- package/utils/JsViewVueWidget/JsvNativeSharedDiv.vue +12 -10
- package/utils/JsViewVueWidget/JsvNinePatch.vue +22 -12
- package/utils/JsViewVueWidget/JsvPieChart.vue +93 -70
- package/utils/JsViewVueWidget/JsvPreload/JsvPreload.vue +34 -31
- package/utils/JsViewVueWidget/JsvQrcode/JsvQrcode.vue +2 -1
- package/utils/JsViewVueWidget/JsvScrollBox/JsvScrollBox.vue +56 -25
- package/utils/JsViewVueWidget/JsvScrollBox/JsvScrollFollow.vue +11 -11
- package/utils/JsViewVueWidget/JsvSector.vue +66 -28
- package/utils/JsViewVueWidget/JsvSmoothSlideContainer.vue +108 -0
- package/utils/JsViewVueWidget/JsvSoundPool.js +75 -12
- package/utils/JsViewVueWidget/JsvSwiper/JsvSmoothSwiper.vue +543 -0
- package/utils/JsViewVueWidget/JsvSwiper/JsvSwiper.vue +3 -3
- package/utils/JsViewVueWidget/JsvSwiper/JsvSwiper2.vue +644 -0
- package/utils/JsViewVueWidget/JsvSwiper/index.js +3 -1
- package/utils/JsViewVueWidget/JsvTextBox.vue +30 -1
- package/utils/JsViewVueWidget/JsvTextureAnim/JsvTextureAnim.vue +315 -299
- package/utils/JsViewVueWidget/JsvTouchModeSwitcher.vue +56 -14
- package/utils/JsViewVueWidget/JsvVisibleSensor/JsvVisibleSensor.vue +8 -6
- package/utils/JsViewVueWidget/TypesDiv/JsvPosterDiv.vue +54 -0
- package/utils/JsViewVueWidget/TypesDiv/JsvPosterImage.vue +88 -0
- package/utils/JsViewVueWidget/TypesDiv/JsvSmartDiv.vue +177 -0
- package/utils/JsViewVueWidget/TypesDiv/JsvSmartImage.vue +267 -0
- package/utils/JsViewVueWidget/index.js +9 -3
- package/utils/JsViewPlugin/JsvLatex/version.js +0 -24
- package/utils/JsViewVueWidget/JsvPosterDiv.vue +0 -56
- package/utils/JsViewVueWidget/JsvPosterImage.vue +0 -105
- /package/bin/types/utils/JsViewPlugin/JsvPlayer/{BrowserJsvPlayer-0.9.vue.d.ts → JsvPlayerBrowser-0.9.vue.d.ts} +0 -0
- /package/bin/types/utils/JsViewVueWidget/JsvFreeMoveActor/{FreeMoveActor.vue.d.ts → JsvFreeMoveActor.vue.d.ts} +0 -0
- /package/utils/JsViewPlugin/JsvPlayer/{BrowserJsvPlayer-0.9.vue → JsvPlayerBrowser-0.9.vue} +0 -0
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
import ForgeHandles from "../../../JsViewVueTools/ForgeHandles";
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
const enum BitPaletteCommand {
|
|
5
|
+
Cmd_GetDomainColorSync = 1003, // 同步,return StringPtr
|
|
6
|
+
Cmd_SubMapBlob, // 异步,回调 jse::Function
|
|
7
|
+
Cmd_SubMapTextureSync, // 同步,return StringPtr
|
|
8
|
+
Cmd_ToStoreTmpBufferSync // 同步,return buffer id
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
class BitPaletteCtrl {
|
|
12
|
+
private _texture: any = null;
|
|
13
|
+
private _recycled: boolean = false;
|
|
14
|
+
|
|
15
|
+
constructor(texture: any) {
|
|
16
|
+
this._texture = texture;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* 获取图片的主色调(dominant color),返回一个 Promise,可与 async/await 配合使用。<br>
|
|
21
|
+
* 使用方式示例:
|
|
22
|
+
*
|
|
23
|
+
* 异步/Promise方式:
|
|
24
|
+
* let colorStrJson = await bitPalette.Ctrl.getDomainColorSync();
|
|
25
|
+
* if (colorStrJson) {
|
|
26
|
+
* let colorsList = JSON.parse(colorStrJson);
|
|
27
|
+
* // colorsList 是主色调数组
|
|
28
|
+
* }
|
|
29
|
+
*
|
|
30
|
+
*/
|
|
31
|
+
getDomainColorSync(): Promise<any> {
|
|
32
|
+
let _this = this;
|
|
33
|
+
return new Promise<any>(async (resolve, reject) => {
|
|
34
|
+
// 用await关联, 让doCommand的reject时自动触发本Promise的reject
|
|
35
|
+
await _this.doCommand(BitPaletteCommand.Cmd_GetDomainColorSync, {}, (result: any) => {
|
|
36
|
+
if (_this._recycled) {
|
|
37
|
+
reject();
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
resolve(result);
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
toBlob() : Promise<Blob | null> {
|
|
46
|
+
let bufferId = ForgeHandles.sRenderBridge.GenStoreBufferId();
|
|
47
|
+
// 返回一个Promise,同时支持callback
|
|
48
|
+
let _this = this;
|
|
49
|
+
return new Promise<Blob | null>(async (resolve, reject) => {
|
|
50
|
+
// 用await关联, 让doCommand的reject时自动触发本Promise的reject
|
|
51
|
+
await _this.doCommand(BitPaletteCommand.Cmd_ToStoreTmpBufferSync, {bufId:bufferId}, async () => {
|
|
52
|
+
if (_this._recycled) {
|
|
53
|
+
reject();
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
let newBlob: Blob = await (Blob as any).jsvCreateFromForge(bufferId);
|
|
57
|
+
resolve(newBlob);
|
|
58
|
+
});
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
// 不是对外接口
|
|
63
|
+
private doCommand(command: BitPaletteCommand, params: object, callback: ((result: any) => void) | undefined) {
|
|
64
|
+
// 用asyncPromise来支持 await 语法, 也可以直接用callback
|
|
65
|
+
let asyncPromise = new Promise((resolve, reject) => {
|
|
66
|
+
this._texture.doCommand(command, params? JSON.stringify(params) : "{}", (result: any) => {
|
|
67
|
+
if (this._recycled) {
|
|
68
|
+
reject();
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
callback?.(result); // 先回调callback, 再resolve
|
|
73
|
+
resolve(result);
|
|
74
|
+
});
|
|
75
|
+
});
|
|
76
|
+
return asyncPromise;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
markRecycled() {
|
|
80
|
+
this._recycled = true;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
/*
|
|
85
|
+
------------------------------------------------------------
|
|
86
|
+
BitPalette使用最佳实践, Ctrl属性在ready后才能使用
|
|
87
|
+
|
|
88
|
+
1. 使用callback方案
|
|
89
|
+
let hdl = new BitPalette(src, () => {
|
|
90
|
+
console.log("ready by callback");
|
|
91
|
+
hdl.Ctrl.doCommand(cmd_id, {...}, (result) => {
|
|
92
|
+
console.log("result:", result);
|
|
93
|
+
});
|
|
94
|
+
});
|
|
95
|
+
|
|
96
|
+
2. 使用Promise方案
|
|
97
|
+
let hdl = new BitPalette(src);
|
|
98
|
+
try {
|
|
99
|
+
await hdl.Ready;
|
|
100
|
+
} catch (error) {
|
|
101
|
+
console.error("canceled");
|
|
102
|
+
}
|
|
103
|
+
let result = await hdl.Ctrl.doCommand(cmd_id, {...});
|
|
104
|
+
|
|
105
|
+
3. 使用完毕要释放资源时
|
|
106
|
+
hdl.recycle(); // 此处理可以在callback之前或者之后都可以, 在callback之前相当于cancel
|
|
107
|
+
|
|
108
|
+
------------------------------------------------------------
|
|
109
|
+
BitPalette的命令行处理:
|
|
110
|
+
1. 使用callback方案
|
|
111
|
+
hdl.Ctrl.doCommand(cmd_id, {...}, (result) => {
|
|
112
|
+
console.log("result:", result);
|
|
113
|
+
});
|
|
114
|
+
|
|
115
|
+
2. 使用Promise方案(同步或者异步都如此调用)
|
|
116
|
+
let result = await hdl.Ctrl.doCommand(cmd_id, {...});
|
|
117
|
+
*/
|
|
118
|
+
|
|
119
|
+
export class BitPalette {
|
|
120
|
+
private _recycled: boolean = false;
|
|
121
|
+
private _readyReject: any = null;
|
|
122
|
+
private _texture: any = null;
|
|
123
|
+
|
|
124
|
+
public Ctrl: BitPaletteCtrl | null = null;
|
|
125
|
+
public Ready: Promise<BitPalette> | null = null;
|
|
126
|
+
|
|
127
|
+
constructor(src: string, callback?: () => void) {
|
|
128
|
+
const setting = { src };
|
|
129
|
+
this._texture = (ForgeHandles.TextureManager as any).GetImageProcessTexture(
|
|
130
|
+
JSON.stringify(setting)
|
|
131
|
+
);
|
|
132
|
+
// 关掉自动卸载, 靠主动的 RequestToUnload 来卸载
|
|
133
|
+
this._texture.DisableAutoRecycle();
|
|
134
|
+
|
|
135
|
+
// 声明 ready 以支持 await 语法
|
|
136
|
+
let _this = this;
|
|
137
|
+
this.Ready = new Promise((resolve, reject) => {
|
|
138
|
+
this._readyReject = reject;
|
|
139
|
+
this._texture.RegisterLoadImageCallback(src, () => {
|
|
140
|
+
if (this._recycled) {
|
|
141
|
+
return;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
// 完成ready后取消readyReject处理
|
|
145
|
+
this._readyReject = null;
|
|
146
|
+
|
|
147
|
+
// 构建 controller 以支持后续的 doCommand 调用
|
|
148
|
+
this.Ctrl = new BitPaletteCtrl(this._texture);
|
|
149
|
+
|
|
150
|
+
callback?.();
|
|
151
|
+
resolve(_this);
|
|
152
|
+
});
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
recycle() {
|
|
157
|
+
if (this._recycled) {
|
|
158
|
+
return;
|
|
159
|
+
}
|
|
160
|
+
this._recycled = true;
|
|
161
|
+
|
|
162
|
+
// 进行promise的reject处理, 保证ready的reject不被遗漏
|
|
163
|
+
this._readyReject?.();
|
|
164
|
+
this._readyReject = null;
|
|
165
|
+
|
|
166
|
+
// 释放texture资源
|
|
167
|
+
this._texture?.RequestToUnload();
|
|
168
|
+
this._texture = null;
|
|
169
|
+
|
|
170
|
+
// 让Ctrl处于recycle状态, 规避异步回调
|
|
171
|
+
this.Ctrl?.markRecycled();
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
static CommandType = {
|
|
175
|
+
GetDomainColorSync: BitPaletteCommand.Cmd_GetDomainColorSync,
|
|
176
|
+
SubMapBlob: BitPaletteCommand.Cmd_SubMapBlob,
|
|
177
|
+
SubMapTextureSync: BitPaletteCommand.Cmd_SubMapTextureSync,
|
|
178
|
+
ToStoreTmpBuffer: BitPaletteCommand.Cmd_ToStoreTmpBufferSync,
|
|
179
|
+
}
|
|
180
|
+
}
|
|
@@ -0,0 +1,304 @@
|
|
|
1
|
+
import { JsvTextureStoreApi } from "../JsvTextureStore";
|
|
2
|
+
import CanvasTexture from "./CanvasTexture";
|
|
3
|
+
import { CustomPath } from "./Path";
|
|
4
|
+
|
|
5
|
+
type Data = {
|
|
6
|
+
x: number;
|
|
7
|
+
y: number;
|
|
8
|
+
};
|
|
9
|
+
interface Plot {
|
|
10
|
+
data: Data[];
|
|
11
|
+
lineWidth: number;
|
|
12
|
+
lineColor: string;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
//曲线描画相关函数
|
|
16
|
+
// // 1. 处理边界:添加镜像虚拟点(优化首尾平滑)
|
|
17
|
+
// function addBoundaryPoints(data: Data[]): Data[] {
|
|
18
|
+
// const first = data[0];
|
|
19
|
+
// const last = data[data.length - 1];
|
|
20
|
+
// // 前加镜像点:2*first - second
|
|
21
|
+
// const prevVirtual = {
|
|
22
|
+
// x: 2 * first.x - data[1].x,
|
|
23
|
+
// y: 2 * first.y - data[1].y,
|
|
24
|
+
// };
|
|
25
|
+
// // 后加镜像点:2*last - secondLast
|
|
26
|
+
// const nextVirtual = {
|
|
27
|
+
// x: 2 * last.x - data[data.length - 2].x,
|
|
28
|
+
// y: 2 * last.y - data[data.length - 2].y,
|
|
29
|
+
// };
|
|
30
|
+
// return [prevVirtual, ...data, nextVirtual];
|
|
31
|
+
// }
|
|
32
|
+
// // 2. Catmull-Rom样条绘制平滑折线
|
|
33
|
+
// /**
|
|
34
|
+
// * Catmull-Rom样条插值
|
|
35
|
+
// * @param path {CustomPath} 路径对象
|
|
36
|
+
// * @param data {Data[]} 数据点数组,每个点包含 x 和 y 坐标
|
|
37
|
+
// * @param tension {Number} 张力参数,默认值 0
|
|
38
|
+
// */
|
|
39
|
+
// function drawCatmullRom(path: CustomPath, data: Data[], tension = 0): void {
|
|
40
|
+
// const points = addBoundaryPoints(data); // 含虚拟点的完整数据
|
|
41
|
+
// path.moveTo(data[0].x, data[0].y); // 起点(原始第一个点)
|
|
42
|
+
|
|
43
|
+
// for (let i = 1; i < data.length; i++) {
|
|
44
|
+
// const p0 = points[i - 1]; // 虚拟点/前一个点
|
|
45
|
+
// const p1 = points[i]; // 当前点(原始数据点)
|
|
46
|
+
// const p2 = points[i + 1]; // 下一个点(原始数据点)
|
|
47
|
+
// const p3 = points[i + 2]; // 虚拟点/后一个点
|
|
48
|
+
|
|
49
|
+
// // 计算贝塞尔控制点(含张力参数)
|
|
50
|
+
// const t = (1 - tension) / 6;
|
|
51
|
+
// const cp1x = p1.x + t * (p2.x - p0.x);
|
|
52
|
+
// const cp1y = p1.y + t * (p2.y - p0.y);
|
|
53
|
+
// const cp2x = p2.x - t * (p3.x - p1.x);
|
|
54
|
+
// const cp2y = p2.y - t * (p3.y - p1.y);
|
|
55
|
+
|
|
56
|
+
// // 绘制三次贝塞尔曲线(p1→p2)
|
|
57
|
+
// path.cubicTo(cp1x, cp1y, cp2x, cp2y, p2.x, p2.y);
|
|
58
|
+
// }
|
|
59
|
+
// }
|
|
60
|
+
|
|
61
|
+
// 3. 单调三次插值(Monotonic Cubic Interpolation)- 适合处理数据突变
|
|
62
|
+
/**
|
|
63
|
+
* 单调三次插值,避免在数据突变处产生凸起
|
|
64
|
+
* 基于 Fritsch-Carlson 算法,保持数据段的单调性
|
|
65
|
+
* @param path {CustomPath} 路径对象
|
|
66
|
+
* @param data {Data[]} 数据点数组,每个点包含 x 和 y 坐标
|
|
67
|
+
*/
|
|
68
|
+
function drawMonotonicCubic(path: CustomPath, data: Data[]): void {
|
|
69
|
+
if (data.length < 2) return;
|
|
70
|
+
if (data.length === 2) {
|
|
71
|
+
path.moveTo(data[0].x, data[0].y);
|
|
72
|
+
path.lineTo(data[1].x, data[1].y);
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
path.moveTo(data[0].x, data[0].y);
|
|
77
|
+
|
|
78
|
+
const n = data.length - 1;
|
|
79
|
+
const dx: number[] = [];
|
|
80
|
+
const dy: number[] = [];
|
|
81
|
+
const m: number[] = []; // 每段的斜率
|
|
82
|
+
|
|
83
|
+
// 计算每段的斜率和距离
|
|
84
|
+
for (let i = 0; i < n; i++) {
|
|
85
|
+
dx[i] = data[i + 1].x - data[i].x;
|
|
86
|
+
dy[i] = data[i + 1].y - data[i].y;
|
|
87
|
+
m[i] = dx[i] !== 0 ? dy[i] / dx[i] : 0;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
// 计算每个内点的切线斜率(Fritsch-Carlson 方法)
|
|
91
|
+
const delta: number[] = new Array(n + 1);
|
|
92
|
+
|
|
93
|
+
// 边界点的斜率
|
|
94
|
+
delta[0] = m[0];
|
|
95
|
+
delta[n] = m[n - 1];
|
|
96
|
+
|
|
97
|
+
// 计算内点的斜率
|
|
98
|
+
for (let i = 1; i < n; i++) {
|
|
99
|
+
if (m[i - 1] * m[i] <= 0) {
|
|
100
|
+
// 如果相邻段斜率符号相反(有极值),设为0
|
|
101
|
+
delta[i] = 0;
|
|
102
|
+
} else {
|
|
103
|
+
// 使用加权调和平均,确保单调性
|
|
104
|
+
const w1 = 2 * dx[i] + dx[i - 1];
|
|
105
|
+
const w2 = 2 * dx[i - 1] + dx[i];
|
|
106
|
+
const denominator = w1 / m[i - 1] + w2 / m[i];
|
|
107
|
+
delta[i] = denominator !== 0 ? (w1 + w2) / denominator : 0;
|
|
108
|
+
|
|
109
|
+
// 确保斜率在合理范围内(3倍限制,保持单调性)
|
|
110
|
+
if (Math.abs(delta[i]) > 3 * Math.abs(m[i - 1])) {
|
|
111
|
+
delta[i] = 3 * m[i - 1];
|
|
112
|
+
}
|
|
113
|
+
if (Math.abs(delta[i]) > 3 * Math.abs(m[i])) {
|
|
114
|
+
delta[i] = 3 * m[i];
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
// 绘制每段曲线
|
|
120
|
+
for (let i = 0; i < n; i++) {
|
|
121
|
+
const p0 = data[i];
|
|
122
|
+
const p1 = data[i + 1];
|
|
123
|
+
const dxi = dx[i];
|
|
124
|
+
|
|
125
|
+
// 获取当前段两端的切线斜率
|
|
126
|
+
const d0 = delta[i];
|
|
127
|
+
const d1 = delta[i + 1];
|
|
128
|
+
|
|
129
|
+
// 转换为三次贝塞尔曲线的控制点
|
|
130
|
+
// 对于三次 Hermite 插值,控制点位置为:
|
|
131
|
+
const cp1x = p0.x + dxi / 3;
|
|
132
|
+
const cp1y = p0.y + (d0 * dxi) / 3;
|
|
133
|
+
const cp2x = p1.x - dxi / 3;
|
|
134
|
+
const cp2y = p1.y - (d1 * dxi) / 3;
|
|
135
|
+
|
|
136
|
+
path.cubicTo(cp1x, cp1y, cp2x, cp2y, p1.x, p1.y);
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
// // 4. B样条插值
|
|
141
|
+
// /**
|
|
142
|
+
// * B样条插值(均匀B样条)
|
|
143
|
+
// * @param path {CustomPath} 路径对象
|
|
144
|
+
// * @param data {Data[]} 数据点数组
|
|
145
|
+
// * @param degree {number} B样条次数,默认3(三次B样条)
|
|
146
|
+
// */
|
|
147
|
+
// function drawBSpline(path: CustomPath, data: Data[], degree: number = 3): void {
|
|
148
|
+
// if (data.length < 2) return;
|
|
149
|
+
// if (data.length === 2) {
|
|
150
|
+
// path.moveTo(data[0].x, data[0].y);
|
|
151
|
+
// path.lineTo(data[1].x, data[1].y);
|
|
152
|
+
// return;
|
|
153
|
+
// }
|
|
154
|
+
|
|
155
|
+
// // 对于B样条,需要添加额外的控制点或使用近似方法
|
|
156
|
+
// // 这里使用简化的方法:将B样条转换为分段贝塞尔曲线
|
|
157
|
+
// path.moveTo(data[0].x, data[0].y);
|
|
158
|
+
|
|
159
|
+
// // 使用Catmull-Rom作为B样条的近似(当tension=0时,Catmull-Rom接近B样条)
|
|
160
|
+
// const points = addBoundaryPoints(data);
|
|
161
|
+
// for (let i = 1; i < data.length; i++) {
|
|
162
|
+
// const p0 = points[i - 1];
|
|
163
|
+
// const p1 = points[i];
|
|
164
|
+
// const p2 = points[i + 1];
|
|
165
|
+
// const p3 = points[i + 2];
|
|
166
|
+
|
|
167
|
+
// const t = 1 / 6;
|
|
168
|
+
// const cp1x = p1.x + t * (p2.x - p0.x);
|
|
169
|
+
// const cp1y = p1.y + t * (p2.y - p0.y);
|
|
170
|
+
// const cp2x = p2.x - t * (p3.x - p1.x);
|
|
171
|
+
// const cp2y = p2.y - t * (p3.y - p1.y);
|
|
172
|
+
|
|
173
|
+
// path.cubicTo(cp1x, cp1y, cp2x, cp2y, p2.x, p2.y);
|
|
174
|
+
// }
|
|
175
|
+
// }
|
|
176
|
+
|
|
177
|
+
// 5. 分段线性插值(简单折线)
|
|
178
|
+
/**
|
|
179
|
+
* 分段线性插值
|
|
180
|
+
* @param path {CustomPath} 路径对象
|
|
181
|
+
* @param data {Data[]} 数据点数组
|
|
182
|
+
*/
|
|
183
|
+
function drawLinear(path: CustomPath, data: Data[]): void {
|
|
184
|
+
if (data.length === 0) return;
|
|
185
|
+
path.moveTo(data[0].x, data[0].y);
|
|
186
|
+
for (let i = 1; i < data.length; i++) {
|
|
187
|
+
path.lineTo(data[i].x, data[i].y);
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
export class ChartHelper {
|
|
192
|
+
private width: number;
|
|
193
|
+
private height: number;
|
|
194
|
+
private xAxis: number[];
|
|
195
|
+
private yAxis: number[];
|
|
196
|
+
private originPosition: Data;
|
|
197
|
+
private canvasTexture: CanvasTexture;
|
|
198
|
+
|
|
199
|
+
/**
|
|
200
|
+
*
|
|
201
|
+
* @param w {number} 画布宽度
|
|
202
|
+
* @param h {number} 画布高度
|
|
203
|
+
* @param xAxis {number[]} x轴范围
|
|
204
|
+
* @param yAxis {number[]} y轴范围
|
|
205
|
+
* @throws {Error} 如果画布宽度或高度小于等于 0,或者 x 或 y 轴范围不是长度为 2 的数组,或者 x 或 y 轴范围不是升序
|
|
206
|
+
*/
|
|
207
|
+
constructor(w: number, h: number, xAxis: number[], yAxis: number[]) {
|
|
208
|
+
if (w <= 0 || h <= 0) {
|
|
209
|
+
throw new Error("Width and height must be greater than 0");
|
|
210
|
+
}
|
|
211
|
+
if (xAxis.length !== 2 || yAxis.length !== 2) {
|
|
212
|
+
throw new Error("X and y axis must be an array of 2 numbers");
|
|
213
|
+
}
|
|
214
|
+
if (xAxis[0] >= xAxis[1] || yAxis[0] >= yAxis[1]) {
|
|
215
|
+
throw new Error("X and y axis must be in ascending order");
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
this.width = w;
|
|
219
|
+
this.height = h;
|
|
220
|
+
this.xAxis = xAxis;
|
|
221
|
+
this.yAxis = yAxis;
|
|
222
|
+
this.originPosition = {
|
|
223
|
+
x: ((0 - this.xAxis[0]) / (this.xAxis[1] - this.xAxis[0])) * this.width,
|
|
224
|
+
y:
|
|
225
|
+
this.height -
|
|
226
|
+
((0 - this.yAxis[0]) / (this.yAxis[1] - this.yAxis[0])) * this.height,
|
|
227
|
+
};
|
|
228
|
+
this.canvasTexture = JsvTextureStoreApi.canvasTexture(
|
|
229
|
+
this.width,
|
|
230
|
+
this.height
|
|
231
|
+
);
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
/**
|
|
235
|
+
* @description 获取画布对象
|
|
236
|
+
* @returns {CanvasTexture} 画布对象
|
|
237
|
+
*/
|
|
238
|
+
getCanvas() {
|
|
239
|
+
return this.canvasTexture;
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
/**
|
|
243
|
+
* @description 获取原始数据点对应的坐标
|
|
244
|
+
* @returns {Data} 原始数据点对应的坐标
|
|
245
|
+
*/
|
|
246
|
+
getOriginPosition() {
|
|
247
|
+
return this.originPosition;
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
/**
|
|
251
|
+
* @description 根据数据获取绘制所需的position
|
|
252
|
+
* @param data {Data[]} 数据点数组,每个点包含 x 和 y 坐标
|
|
253
|
+
* @returns {Data[]} 数据点数组,每个点包含 x 和 y 坐标
|
|
254
|
+
*/
|
|
255
|
+
data2Pos(data: Data[]): Data[] {
|
|
256
|
+
const xAxisRange = this.xAxis[1] - this.xAxis[0];
|
|
257
|
+
const yAxisRange = this.yAxis[1] - this.yAxis[0];
|
|
258
|
+
return data.map((d) => ({
|
|
259
|
+
x: ((d.x - this.xAxis[0]) / xAxisRange) * this.width,
|
|
260
|
+
y: this.height - ((d.y - this.yAxis[0]) / yAxisRange) * this.height,
|
|
261
|
+
}));
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
/**
|
|
265
|
+
* linePath参数说明
|
|
266
|
+
* @param data {Data[]} 数据点数组,每个点包含 x 和 y 坐标
|
|
267
|
+
* @param isBroken {boolean} 是否为折线
|
|
268
|
+
* @param close {number}
|
|
269
|
+
* 0: 不闭合,绘制线段用,
|
|
270
|
+
* 1: 闭合到x轴(自动绘制左右两端垂直于x轴的线段), 需要填充颜色时用
|
|
271
|
+
* 2: 闭合到y轴(自动绘制上下两端垂直于y轴的线段), 需要填充颜色时用
|
|
272
|
+
* @returns {CustomPath, Data[]} 路径对象和数据点数组,每个点包含 x 和 y 坐标
|
|
273
|
+
*/
|
|
274
|
+
linePath(
|
|
275
|
+
data: Data[],
|
|
276
|
+
isBroken: boolean = false,
|
|
277
|
+
close: number = 0
|
|
278
|
+
): { path: CustomPath; position: Data[] } | undefined {
|
|
279
|
+
const path = this.canvasTexture.customPath();
|
|
280
|
+
if (path) {
|
|
281
|
+
const posList = this.data2Pos(data);
|
|
282
|
+
|
|
283
|
+
if (isBroken) {
|
|
284
|
+
drawLinear(path, posList);
|
|
285
|
+
} else {
|
|
286
|
+
drawMonotonicCubic(path, posList);
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
if (close == 1) {
|
|
290
|
+
//关闭到x轴
|
|
291
|
+
path.lineTo(posList[posList.length - 1].x, this.originPosition.y);
|
|
292
|
+
path.lineTo(posList[0].x, this.originPosition.y);
|
|
293
|
+
path.close();
|
|
294
|
+
} else if (close == 2) {
|
|
295
|
+
//关闭到y轴
|
|
296
|
+
path.lineTo(this.originPosition.x, posList[posList.length - 1].y);
|
|
297
|
+
path.lineTo(this.originPosition.x, posList[0].y);
|
|
298
|
+
path.close();
|
|
299
|
+
}
|
|
300
|
+
return { path, position: posList };
|
|
301
|
+
}
|
|
302
|
+
return undefined;
|
|
303
|
+
}
|
|
304
|
+
}
|
|
@@ -88,6 +88,21 @@ class DrawingPath {
|
|
|
88
88
|
this.finishedDraw = true;
|
|
89
89
|
}
|
|
90
90
|
|
|
91
|
+
public fillWithLinearGradient(fromX: Number, fromY: Number, toX: Number, toY: Number, colorList: Array<String>, positionList: Array<Number>) {
|
|
92
|
+
this.drawCommandsRefs.push({
|
|
93
|
+
"cmd": Constants.CMD_PREPARE_PAINT,
|
|
94
|
+
"type": "fill_linear_gradient",
|
|
95
|
+
"x0": fromX,
|
|
96
|
+
"y0": fromY,
|
|
97
|
+
"x1": toX,
|
|
98
|
+
"y1": toY,
|
|
99
|
+
"clrs": colorList,
|
|
100
|
+
"stops": positionList
|
|
101
|
+
});
|
|
102
|
+
this.onFinishDraw(); // 调用继承类的完成处理执行绘制
|
|
103
|
+
this.finishedDraw = true;
|
|
104
|
+
}
|
|
105
|
+
|
|
91
106
|
protected onFinishDraw(): void {
|
|
92
107
|
// should override be extends class
|
|
93
108
|
}
|
|
@@ -184,6 +199,29 @@ export class CustomPath extends DrawingPath {
|
|
|
184
199
|
});
|
|
185
200
|
}
|
|
186
201
|
|
|
202
|
+
/**
|
|
203
|
+
* cubicTo
|
|
204
|
+
* 绘制三次贝塞尔曲线
|
|
205
|
+
*
|
|
206
|
+
* @param {Number} x0 控制点1的x坐标
|
|
207
|
+
* @param {Number} y0 控制点1的y坐标
|
|
208
|
+
* @param {Number} x1 控制点2的x坐标
|
|
209
|
+
* @param {Number} y1 控制点2的y坐标
|
|
210
|
+
* @param {Number} x2 目标点的x坐标
|
|
211
|
+
* @param {Number} y2 目标点的y坐标
|
|
212
|
+
*/
|
|
213
|
+
cubicTo(x0: Number, y0: Number, x1: Number, y1: Number, x2: Number, y2: Number) {
|
|
214
|
+
this.pathCommands?.push({
|
|
215
|
+
"cmd": Constants.PATH_CUBIC_TO,
|
|
216
|
+
"x0": x0,
|
|
217
|
+
"y0": y0,
|
|
218
|
+
"x1": x1,
|
|
219
|
+
"y1": y1,
|
|
220
|
+
"x2": x2,
|
|
221
|
+
"y2": y2
|
|
222
|
+
});
|
|
223
|
+
}
|
|
224
|
+
|
|
187
225
|
/**
|
|
188
226
|
* arcTo
|
|
189
227
|
* 绘制以(left, top, right, bottom)围城的矩形为横轴比的椭圆圆弧
|
|
@@ -6,37 +6,53 @@ export type CapturedCallback = (
|
|
|
6
6
|
textureAccessName: string,
|
|
7
7
|
autoRecycleSet: boolean,
|
|
8
8
|
width: number,
|
|
9
|
-
height: number
|
|
9
|
+
height: number,
|
|
10
|
+
isCannceled: boolean) => void;
|
|
10
11
|
|
|
11
12
|
export class CapturedTexture extends TextureBase {
|
|
12
|
-
private _AutoRecycle: boolean;
|
|
13
13
|
private _Callback: CapturedCallback | null;
|
|
14
14
|
private _CaptureDiv: any;
|
|
15
15
|
private _Canceled: boolean = false;
|
|
16
|
-
|
|
16
|
+
private _Done: boolean = false;
|
|
17
|
+
private _PostProcessParams: any = null;
|
|
17
18
|
constructor(
|
|
18
19
|
captureDiv: any,
|
|
19
20
|
callback: CapturedCallback,
|
|
20
|
-
autoRecycle: boolean
|
|
21
|
+
autoRecycle: boolean,
|
|
22
|
+
postProcessParams: any = null) {
|
|
21
23
|
super(null);
|
|
22
24
|
|
|
25
|
+
if (!captureDiv || !callback) {
|
|
26
|
+
throw new Error("CapturedTexture: captureDiv and callback are required");
|
|
27
|
+
}
|
|
28
|
+
|
|
23
29
|
// 激活引擎的功能支持
|
|
24
30
|
JsvUseFeature('JsvTextureStoreApi', FeatureNames.Capture2Texture);
|
|
25
31
|
|
|
26
32
|
this._CaptureDiv = captureDiv;
|
|
27
33
|
this._Callback = callback;
|
|
28
|
-
this.
|
|
34
|
+
this.autoRecycle = autoRecycle;
|
|
35
|
+
this._PostProcessParams = postProcessParams;
|
|
29
36
|
}
|
|
30
37
|
|
|
31
38
|
// 清理对Callback和div的引用,防止泄露
|
|
32
39
|
cancel() {
|
|
33
40
|
if (!this._Canceled) {
|
|
41
|
+
if (!this._Done) {
|
|
42
|
+
// 补调用未完成的回调
|
|
43
|
+
this._Callback?.("", this.autoRecycle, 0, 0, true);
|
|
44
|
+
}
|
|
34
45
|
this._Callback = null;
|
|
35
46
|
this._CaptureDiv = null;
|
|
36
47
|
this._Canceled = true;
|
|
37
48
|
}
|
|
38
49
|
}
|
|
39
50
|
|
|
51
|
+
override recycle() {
|
|
52
|
+
this.cancel();
|
|
53
|
+
super.recycle();
|
|
54
|
+
}
|
|
55
|
+
|
|
40
56
|
override commit(): String {
|
|
41
57
|
this.textureRef = (ForgeHandles.TextureManager as any).GetCapturedTexture();
|
|
42
58
|
this._CaptureDiv.jsvGetProxyView(true).Capture2Texture(this.textureRef,
|
|
@@ -47,18 +63,20 @@ export class CapturedTexture extends TextureBase {
|
|
|
47
63
|
return;
|
|
48
64
|
}
|
|
49
65
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
66
|
+
//由于自动回收是三帧后回收, 所以需要先添加到store
|
|
67
|
+
this.addToStore();
|
|
68
|
+
|
|
69
|
+
this._Done = true;
|
|
54
70
|
|
|
55
71
|
// 回调
|
|
56
72
|
this._Callback?.(
|
|
57
73
|
this.getStoreName(),
|
|
58
|
-
this.
|
|
74
|
+
this.autoRecycle,
|
|
59
75
|
resultObj.width as number,
|
|
60
|
-
resultObj.height as number
|
|
61
|
-
|
|
76
|
+
resultObj.height as number,
|
|
77
|
+
false);
|
|
78
|
+
},
|
|
79
|
+
this._PostProcessParams
|
|
62
80
|
);
|
|
63
81
|
return '';
|
|
64
82
|
}
|