scichart 3.1.348 → 3.2.0-beta
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/Charting/ChartModifiers/ChartModifierBase.d.ts +15 -1
- package/Charting/ChartModifiers/ChartModifierBase.js +65 -7
- package/Charting/ChartModifiers/CursorModifier.js +13 -1
- package/Charting/ChartModifiers/LegendModifier.d.ts +1 -1
- package/Charting/ChartModifiers/LegendModifier.js +8 -6
- package/Charting/ChartModifiers/PinchZoomModifier.d.ts +38 -8
- package/Charting/ChartModifiers/PinchZoomModifier.js +103 -40
- package/Charting/ChartModifiers/RolloverModifier.js +10 -3
- package/Charting/ChartModifiers/RubberBandXyZoomModifier.d.ts +1 -1
- package/Charting/ChartModifiers/SeriesSelectionModifier.js +32 -24
- package/Charting/ChartModifiers/ZoomPanModifier.d.ts +13 -38
- package/Charting/ChartModifiers/ZoomPanModifier.js +54 -99
- package/Charting/Drawing/BaseCache.d.ts +2 -1
- package/Charting/Drawing/BaseCache.js +40 -7
- package/Charting/Drawing/RenderSurface.d.ts +1 -0
- package/Charting/Drawing/RenderSurface.js +5 -1
- package/Charting/Drawing/SolidBrushCache.d.ts +2 -1
- package/Charting/Drawing/SolidBrushCache.js +23 -3
- package/Charting/Drawing/WebGlBrush.d.ts +2 -1
- package/Charting/Drawing/WebGlBrush.js +22 -3
- package/Charting/Drawing/WebGlPen.d.ts +2 -1
- package/Charting/Drawing/WebGlPen.js +23 -4
- package/Charting/Drawing/WebGlRenderContext2D.d.ts +4 -3
- package/Charting/Drawing/WebGlRenderContext2D.js +26 -7
- package/Charting/Model/BaseDataSeries.d.ts +67 -2
- package/Charting/Model/BaseDataSeries.js +193 -42
- package/Charting/Model/BaseHeatmapDataSeries.js +1 -1
- package/Charting/Model/ChartData/SeriesInfo.d.ts +16 -0
- package/Charting/Model/ChartData/SeriesInfo.js +7 -0
- package/Charting/Model/ChartData/XyzSeriesInfo.d.ts +8 -0
- package/Charting/Model/ChartData/XyzSeriesInfo.js +36 -0
- package/Charting/Model/DoubleVectorProvider.d.ts +19 -0
- package/Charting/Model/DoubleVectorProvider.js +95 -0
- package/Charting/Model/HlcDataSeries.d.ts +3 -0
- package/Charting/Model/HlcDataSeries.js +44 -15
- package/Charting/Model/IDataSeries.d.ts +23 -0
- package/Charting/Model/NonUniformHeatmapDataSeries.js +2 -0
- package/Charting/Model/OhlcDataSeries.d.ts +3 -0
- package/Charting/Model/OhlcDataSeries.js +56 -24
- package/Charting/Model/PointSeries/BasePointSeriesResampled.d.ts +4 -5
- package/Charting/Model/PointSeries/BasePointSeriesResampled.js +29 -21
- package/Charting/Model/PointSeries/BasePointSeriesWrapped.d.ts +2 -0
- package/Charting/Model/PointSeries/BasePointSeriesWrapped.js +2 -0
- package/Charting/Model/PointSeries/IPointSeries.d.ts +2 -1
- package/Charting/Model/PointSeries/OhlcPointSeriesResampled.js +1 -1
- package/Charting/Model/PointSeries/XyPointSeriesWrapped.d.ts +2 -1
- package/Charting/Model/PointSeries/XyPointSeriesWrapped.js +2 -2
- package/Charting/Model/PointSeries/XyyPointSeriesResampled.js +1 -1
- package/Charting/Model/UniformHeatmapDataSeries.d.ts +31 -11
- package/Charting/Model/UniformHeatmapDataSeries.js +72 -4
- package/Charting/Model/XyDataSeries.d.ts +0 -8
- package/Charting/Model/XyDataSeries.js +21 -5
- package/Charting/Model/XyTextDataSeries.d.ts +2 -0
- package/Charting/Model/XyTextDataSeries.js +35 -4
- package/Charting/Model/XyyDataSeries.d.ts +2 -0
- package/Charting/Model/XyyDataSeries.js +35 -10
- package/Charting/Model/XyzDataSeries.d.ts +3 -0
- package/Charting/Model/XyzDataSeries.js +36 -10
- package/Charting/Numerics/CoordinateCalculators/CategoryCoordinateCalculator.d.ts +3 -5
- package/Charting/Numerics/CoordinateCalculators/CategoryCoordinateCalculator.js +5 -7
- package/Charting/Numerics/CoordinateCalculators/CoordinateCalculatorBase.d.ts +2 -1
- package/Charting/Numerics/CoordinateCalculators/CoordinateCalculatorBase.js +29 -9
- package/Charting/Numerics/CoordinateCalculators/FlippedCategoryCoordinateCalculator.d.ts +3 -5
- package/Charting/Numerics/CoordinateCalculators/FlippedCategoryCoordinateCalculator.js +5 -7
- package/Charting/Numerics/Resamplers/ExtremeResamplerHelper.d.ts +14 -10
- package/Charting/Numerics/Resamplers/ExtremeResamplerHelper.js +105 -69
- package/Charting/Numerics/Resamplers/ResamplingParams.d.ts +4 -2
- package/Charting/Numerics/Resamplers/ResamplingParams.js +12 -7
- package/Charting/Numerics/TickCoordinateProviders/TickCoordinatesProvider.d.ts +5 -0
- package/Charting/Numerics/TickCoordinateProviders/TickCoordinatesProvider.js +7 -0
- package/Charting/Numerics/TickProviders/NumericTickProvider.js +3 -4
- package/Charting/Numerics/TickProviders/TickProvider.d.ts +5 -0
- package/Charting/Numerics/TickProviders/TickProvider.js +7 -0
- package/Charting/Services/SciChartRenderer.js +15 -5
- package/Charting/Services/TitleRenderer.d.ts +2 -1
- package/Charting/Services/TitleRenderer.js +35 -14
- package/Charting/Visuals/Annotations/AdornerLayer.d.ts +1 -1
- package/Charting/Visuals/Annotations/AnnotationBase.d.ts +6 -6
- package/Charting/Visuals/Annotations/AnnotationBase.js +81 -61
- package/Charting/Visuals/Annotations/CursorTooltipSvgAnnotation.js +8 -0
- package/Charting/Visuals/Annotations/IAnnotation.d.ts +9 -4
- package/Charting/Visuals/Annotations/IAnnotation.js +6 -0
- package/Charting/Visuals/Annotations/LineAnnotation.js +3 -1
- package/Charting/Visuals/Annotations/RenderContextAnnotationBase.d.ts +5 -0
- package/Charting/Visuals/Annotations/RenderContextAnnotationBase.js +16 -0
- package/Charting/Visuals/Annotations/RolloverTooltipSvgAnnotation.js +6 -0
- package/Charting/Visuals/Annotations/constants.d.ts +1 -0
- package/Charting/Visuals/Annotations/constants.js +1 -0
- package/Charting/Visuals/Axis/AxisBase2D.d.ts +20 -5
- package/Charting/Visuals/Axis/AxisBase2D.js +46 -10
- package/Charting/Visuals/Axis/AxisCore.d.ts +4 -1
- package/Charting/Visuals/Axis/AxisCore.js +100 -54
- package/Charting/Visuals/Axis/AxisRenderer.d.ts +2 -1
- package/Charting/Visuals/Axis/AxisRenderer.js +40 -16
- package/Charting/Visuals/Axis/AxisTitleRenderer.d.ts +1 -0
- package/Charting/Visuals/Axis/AxisTitleRenderer.js +4 -0
- package/Charting/Visuals/Axis/CategoryAxisBase.js +4 -4
- package/Charting/Visuals/Axis/DeltaCalculator/DateTimeDeltaCalculator.js +14 -9
- package/Charting/Visuals/Axis/DeltaCalculator/DeltaCalculator.d.ts +5 -0
- package/Charting/Visuals/Axis/DeltaCalculator/DeltaCalculator.js +7 -0
- package/Charting/Visuals/Axis/LabelProvider/LabelCache.d.ts +2 -2
- package/Charting/Visuals/Axis/LabelProvider/LabelCache.js +8 -1
- package/Charting/Visuals/Axis/LabelProvider/LabelProvider.d.ts +7 -1
- package/Charting/Visuals/Axis/LabelProvider/LabelProvider.js +34 -8
- package/Charting/Visuals/Axis/LabelProvider/LabelProviderBase2D.d.ts +4 -2
- package/Charting/Visuals/Axis/LabelProvider/LabelProviderBase2D.js +8 -2
- package/Charting/Visuals/Axis/LabelProvider/PieLabelProvider.d.ts +1 -0
- package/Charting/Visuals/Axis/LabelProvider/PieLabelProvider.js +1 -0
- package/Charting/Visuals/HeatmapLegend.d.ts +3 -2
- package/Charting/Visuals/HeatmapLegend.js +33 -12
- package/Charting/Visuals/Helpers/NativeObject.d.ts +8 -5
- package/Charting/Visuals/Helpers/NativeObject.js +42 -21
- package/Charting/Visuals/Helpers/drawLabel.js +3 -1
- package/Charting/Visuals/I2DSurfaceOptions.d.ts +0 -15
- package/Charting/Visuals/Legend/SciChartLegendBase.d.ts +3 -1
- package/Charting/Visuals/Legend/SciChartLegendBase.js +35 -14
- package/Charting/Visuals/Legend/SciChartPieLegend.js +1 -1
- package/Charting/Visuals/PointMarkers/BasePointMarker.d.ts +13 -1
- package/Charting/Visuals/PointMarkers/BasePointMarker.js +72 -19
- package/Charting/Visuals/PointMarkers/Constants.d.ts +2 -1
- package/Charting/Visuals/PointMarkers/Constants.js +1 -0
- package/Charting/Visuals/PointMarkers/IPointMarker.d.ts +2 -0
- package/Charting/Visuals/RenderableSeries/Animations/SeriesAnimation.js +4 -1
- package/Charting/Visuals/RenderableSeries/Animations/animationHelpers.d.ts +1 -1
- package/Charting/Visuals/RenderableSeries/BaseBandRenderableSeries.js +8 -7
- package/Charting/Visuals/RenderableSeries/BaseHeatmapRenderableSeries.d.ts +1 -0
- package/Charting/Visuals/RenderableSeries/BaseHeatmapRenderableSeries.js +5 -0
- package/Charting/Visuals/RenderableSeries/BaseOhlcRenderableSeries.js +10 -9
- package/Charting/Visuals/RenderableSeries/BaseRenderableSeries.d.ts +2 -1
- package/Charting/Visuals/RenderableSeries/BaseRenderableSeries.js +101 -69
- package/Charting/Visuals/RenderableSeries/BaseStackedCollection.js +13 -4
- package/Charting/Visuals/RenderableSeries/BaseStackedRenderableSeries.js +12 -3
- package/Charting/Visuals/RenderableSeries/DataLabels/BaseDataLabelProvider.d.ts +2 -0
- package/Charting/Visuals/RenderableSeries/DataLabels/BaseDataLabelProvider.js +5 -0
- package/Charting/Visuals/RenderableSeries/DataLabels/DataLabelProvider.js +6 -0
- package/Charting/Visuals/RenderableSeries/DataLabels/DataLabelState.d.ts +1 -0
- package/Charting/Visuals/RenderableSeries/DataLabels/DataLabelState.js +18 -5
- package/Charting/Visuals/RenderableSeries/DataLabels/NonUniformHeatmapDataLabelProvider.js +0 -1
- package/Charting/Visuals/RenderableSeries/DataLabels/TextDataLabelProvider.js +8 -2
- package/Charting/Visuals/RenderableSeries/DrawingProviders/BandSeriesDrawingProvider.d.ts +1 -0
- package/Charting/Visuals/RenderableSeries/DrawingProviders/BandSeriesDrawingProvider.js +35 -16
- package/Charting/Visuals/RenderableSeries/DrawingProviders/BaseSeriesDrawingProvider.d.ts +2 -1
- package/Charting/Visuals/RenderableSeries/DrawingProviders/BaseSeriesDrawingProvider.js +62 -33
- package/Charting/Visuals/RenderableSeries/DrawingProviders/BubbleSeriesDrawingProvider.d.ts +1 -0
- package/Charting/Visuals/RenderableSeries/DrawingProviders/BubbleSeriesDrawingProvider.js +30 -9
- package/Charting/Visuals/RenderableSeries/DrawingProviders/ColumnSeriesDrawingProvider.d.ts +1 -0
- package/Charting/Visuals/RenderableSeries/DrawingProviders/ColumnSeriesDrawingProvider.js +37 -16
- package/Charting/Visuals/RenderableSeries/DrawingProviders/HeatmapHelpers.d.ts +47 -0
- package/Charting/Visuals/RenderableSeries/DrawingProviders/HeatmapHelpers.js +258 -0
- package/Charting/Visuals/RenderableSeries/DrawingProviders/LineSeriesDrawingProvider.js +26 -2
- package/Charting/Visuals/RenderableSeries/DrawingProviders/MountainSeriesDrawingProvider.d.ts +1 -0
- package/Charting/Visuals/RenderableSeries/DrawingProviders/MountainSeriesDrawingProvider.js +34 -15
- package/Charting/Visuals/RenderableSeries/DrawingProviders/NonUniformHeatmapDrawingProvider.js +5 -230
- package/Charting/Visuals/RenderableSeries/DrawingProviders/OhlcSeriesDrawingProvider.d.ts +1 -0
- package/Charting/Visuals/RenderableSeries/DrawingProviders/OhlcSeriesDrawingProvider.js +62 -37
- package/Charting/Visuals/RenderableSeries/DrawingProviders/PointMarkerDrawingProvider.js +30 -3
- package/Charting/Visuals/RenderableSeries/DrawingProviders/UniformHeatmapDrawingProvider.d.ts +1 -0
- package/Charting/Visuals/RenderableSeries/DrawingProviders/UniformHeatmapDrawingProvider.js +4 -1
- package/Charting/Visuals/RenderableSeries/FastBubbleRenderableSeries.d.ts +0 -2
- package/Charting/Visuals/RenderableSeries/FastBubbleRenderableSeries.js +0 -4
- package/Charting/Visuals/RenderableSeries/FastTextRenderableSeries.d.ts +3 -0
- package/Charting/Visuals/RenderableSeries/FastTextRenderableSeries.js +10 -0
- package/Charting/Visuals/RenderableSeries/HitTest/BubbleSeriesHitTestProvider.d.ts +4 -0
- package/Charting/Visuals/RenderableSeries/HitTest/BubbleSeriesHitTestProvider.js +7 -0
- package/Charting/Visuals/RenderableSeries/HitTest/HitTestInfo.d.ts +4 -0
- package/Charting/Visuals/RenderableSeries/HitTest/HitTestInfo.js +9 -0
- package/Charting/Visuals/RenderableSeries/ShaderEffect.d.ts +3 -2
- package/Charting/Visuals/RenderableSeries/ShaderEffect.js +29 -9
- package/Charting/Visuals/RenderableSeries/SplineBandRenderableSeries.js +7 -0
- package/Charting/Visuals/RenderableSeries/SplineLineRenderableSeries.js +7 -0
- package/Charting/Visuals/RenderableSeries/SplineMountainRenderableSeries.js +7 -0
- package/Charting/Visuals/RenderableSeries/StackedColumnCollection.js +3 -0
- package/Charting/Visuals/RenderableSeries/StackedMountainCollection.d.ts +0 -2
- package/Charting/Visuals/RenderableSeries/StackedMountainCollection.js +4 -4
- package/Charting/Visuals/RenderableSeries/StackedMountainRenderableSeries.d.ts +1 -0
- package/Charting/Visuals/RenderableSeries/StackedMountainRenderableSeries.js +8 -0
- package/Charting/Visuals/RenderableSeries/XyScatterRenderableSeries.d.ts +1 -2
- package/Charting/Visuals/RenderableSeries/XyScatterRenderableSeries.js +8 -3
- package/Charting/Visuals/RubberBandSvgRect/RubberBandSvgRect.d.ts +3 -1
- package/Charting/Visuals/RubberBandSvgRect/RubberBandSvgRect.js +30 -10
- package/Charting/Visuals/SciChartDefaults.d.ts +10 -0
- package/Charting/Visuals/SciChartDefaults.js +10 -0
- package/Charting/Visuals/SciChartOverview.d.ts +2 -1
- package/Charting/Visuals/SciChartOverview.js +28 -8
- package/Charting/Visuals/SciChartPieSurface/SciChartPieSurface.d.ts +10 -3
- package/Charting/Visuals/SciChartPieSurface/SciChartPieSurface.js +118 -60
- package/Charting/Visuals/SciChartSurface.d.ts +4 -36
- package/Charting/Visuals/SciChartSurface.js +48 -61
- package/Charting/Visuals/SciChartSurfaceBase.d.ts +99 -13
- package/Charting/Visuals/SciChartSurfaceBase.js +155 -32
- package/Charting/Visuals/TextureManager/CanvasTexture.d.ts +2 -1
- package/Charting/Visuals/TextureManager/CanvasTexture.js +37 -17
- package/Charting/Visuals/TextureManager/TextureManager.d.ts +2 -1
- package/Charting/Visuals/TextureManager/TextureManager.js +27 -7
- package/Charting/Visuals/createMaster.d.ts +4 -2
- package/Charting/Visuals/createMaster.js +92 -28
- package/Charting/Visuals/createSingle.d.ts +0 -2
- package/Charting/Visuals/createSingle.js +44 -9
- package/Charting/Visuals/licenseManager2D.d.ts +7 -5
- package/Charting/Visuals/licenseManager2D.js +105 -53
- package/Charting/Visuals/loader.js +3 -1
- package/Charting/Visuals/sciChartInitCommon.d.ts +1 -1
- package/Charting/Visuals/sciChartInitCommon.js +5 -1
- package/Charting3D/CameraController.d.ts +1 -1
- package/Charting3D/CameraController.js +21 -7
- package/Charting3D/ChartModifiers/ChartModifierBase3D.d.ts +1 -0
- package/Charting3D/ChartModifiers/ChartModifierBase3D.js +4 -1
- package/Charting3D/ChartModifiers/OrbitModifier3D.d.ts +17 -5
- package/Charting3D/ChartModifiers/OrbitModifier3D.js +62 -26
- package/Charting3D/ChartModifiers/PinchZoomModifier3D.d.ts +81 -0
- package/Charting3D/ChartModifiers/PinchZoomModifier3D.js +164 -0
- package/Charting3D/ChartModifiers/TooltipModifier3D.d.ts +87 -0
- package/Charting3D/ChartModifiers/TooltipModifier3D.js +391 -0
- package/Charting3D/I3DSurfaceOptions.d.ts +10 -0
- package/Charting3D/I3DSurfaceOptions.js +2 -0
- package/Charting3D/Model/DataSeries/BaseDataSeries3D.d.ts +2 -1
- package/Charting3D/Model/DataSeries/BaseDataSeries3D.js +27 -6
- package/Charting3D/Model/DataSeries/UniformGridDataSeries3D.d.ts +8 -0
- package/Charting3D/Model/DataSeries/UniformGridDataSeries3D.js +12 -0
- package/Charting3D/Model/DataSeries/XyzDataSeries3D.d.ts +2 -2
- package/Charting3D/Model/DataSeries/XyzDataSeries3D.js +1 -1
- package/Charting3D/Vector3.d.ts +5 -0
- package/Charting3D/Vector3.js +7 -0
- package/Charting3D/Visuals/Annotations/TooltipSvgAnnotation3D.d.ts +88 -0
- package/Charting3D/Visuals/Annotations/TooltipSvgAnnotation3D.js +291 -0
- package/Charting3D/Visuals/Axis/AxisBase3D.d.ts +21 -2
- package/Charting3D/Visuals/Axis/AxisBase3D.js +48 -18
- package/Charting3D/Visuals/Axis/AxisBase3DLabelStyle.js +2 -1
- package/Charting3D/Visuals/Axis/AxisCubeEntity.d.ts +0 -4
- package/Charting3D/Visuals/Axis/AxisCubeEntity.js +3 -6
- package/Charting3D/Visuals/Axis/IAxisDescriptor.d.ts +2 -2
- package/Charting3D/Visuals/Axis/IAxisDescriptor.js +2 -2
- package/Charting3D/Visuals/Primitives/BaseSceneEntity3D.d.ts +41 -30
- package/Charting3D/Visuals/Primitives/BaseSceneEntity3D.js +78 -26
- package/Charting3D/Visuals/Primitives/CrosshairLinesSceneEntity.d.ts +47 -0
- package/Charting3D/Visuals/Primitives/CrosshairLinesSceneEntity.js +106 -0
- package/Charting3D/Visuals/Primitives/EntityIdProvider.d.ts +29 -0
- package/Charting3D/Visuals/Primitives/EntityIdProvider.js +28 -0
- package/Charting3D/Visuals/Primitives/PointLine3DSceneEntity.d.ts +51 -0
- package/Charting3D/Visuals/Primitives/PointLine3DSceneEntity.js +188 -0
- package/Charting3D/Visuals/Primitives/RenderableSeriesSceneEntity.d.ts +12 -0
- package/Charting3D/Visuals/Primitives/RenderableSeriesSceneEntity.js +14 -0
- package/Charting3D/Visuals/Primitives/ScatterPointsSceneEntity.d.ts +11 -0
- package/Charting3D/Visuals/Primitives/ScatterPointsSceneEntity.js +18 -0
- package/Charting3D/Visuals/Primitives/SurfaceMeshSceneEntity.d.ts +3 -0
- package/Charting3D/Visuals/Primitives/SurfaceMeshSceneEntity.js +15 -0
- package/Charting3D/Visuals/RenderableSeries/BaseRenderableSeries3D.d.ts +16 -1
- package/Charting3D/Visuals/RenderableSeries/BaseRenderableSeries3D.js +64 -12
- package/Charting3D/Visuals/RenderableSeries/Constants.d.ts +2 -0
- package/Charting3D/Visuals/RenderableSeries/Constants.js +2 -0
- package/Charting3D/Visuals/RenderableSeries/ESeriesType.d.ts +2 -1
- package/Charting3D/Visuals/RenderableSeries/ESeriesType.js +1 -0
- package/Charting3D/Visuals/RenderableSeries/HitTestInfo3D.d.ts +37 -0
- package/Charting3D/Visuals/RenderableSeries/HitTestInfo3D.js +22 -0
- package/Charting3D/Visuals/RenderableSeries/PointLineRenderableSeries3D.d.ts +64 -0
- package/Charting3D/Visuals/RenderableSeries/PointLineRenderableSeries3D.js +105 -0
- package/Charting3D/Visuals/RenderableSeries/SeriesInfo3D.d.ts +51 -0
- package/Charting3D/Visuals/RenderableSeries/SeriesInfo3D.js +32 -0
- package/Charting3D/Visuals/RenderableSeries/SurfaceMeshSeriesInfo3D.d.ts +15 -0
- package/Charting3D/Visuals/RenderableSeries/SurfaceMeshSeriesInfo3D.js +112 -0
- package/Charting3D/Visuals/RenderableSeries/XyzSeriesInfo3D.d.ts +20 -0
- package/Charting3D/Visuals/RenderableSeries/XyzSeriesInfo3D.js +60 -0
- package/Charting3D/Visuals/RootSceneEntity.d.ts +0 -4
- package/Charting3D/Visuals/RootSceneEntity.js +3 -8
- package/Charting3D/Visuals/SciChart3DRenderer.d.ts +2 -0
- package/Charting3D/Visuals/SciChart3DRenderer.js +49 -0
- package/Charting3D/Visuals/SciChart3DSurface.d.ts +44 -3
- package/Charting3D/Visuals/SciChart3DSurface.js +103 -9
- package/Charting3D/Visuals/ViewportManager3DBase.d.ts +4 -0
- package/Charting3D/Visuals/ViewportManager3DBase.js +7 -1
- package/Charting3D/Visuals/createMaster3d.d.ts +1 -2
- package/Charting3D/Visuals/createMaster3d.js +76 -14
- package/Charting3D/Visuals/createSingle3d.js +34 -4
- package/Charting3D/Visuals/licenseManager3D.js +29 -25
- package/Core/BuildStamp.d.ts +1 -1
- package/Core/BuildStamp.js +2 -2
- package/Core/DeletableEntity.d.ts +28 -0
- package/Core/DeletableEntity.js +141 -0
- package/Core/Globals.d.ts +11 -0
- package/Core/Globals.js +13 -0
- package/Core/Guard.d.ts +6 -0
- package/Core/Guard.js +10 -0
- package/Core/Mouse/MouseManager.d.ts +23 -0
- package/Core/Mouse/MouseManager.js +47 -0
- package/Core/Telemetry.js +4 -6
- package/_wasm/scichart.browser.js +1 -1
- package/_wasm/scichart2d.data +0 -0
- package/_wasm/scichart2d.js +4 -294
- package/_wasm/scichart2d.wasm +0 -0
- package/_wasm/scichart3d.data +0 -0
- package/_wasm/scichart3d.js +4 -294
- package/_wasm/scichart3d.wasm +0 -0
- package/index.d.ts +43 -2
- package/index.js +89 -27
- package/index.min.js +1 -1
- package/package.json +3 -4
- package/types/ChartModifierType.d.ts +2 -0
- package/types/ChartModifierType.js +2 -0
- package/types/DefaultRenderLayer.d.ts +9 -8
- package/types/DefaultRenderLayer.js +9 -8
- package/types/NumberArray.d.ts +1 -0
- package/types/NumberArray.js +12 -1
- package/types/SceneEntityType.d.ts +13 -5
- package/types/SceneEntityType.js +13 -5
- package/types/TSciChart.d.ts +37 -8
- package/types/TSciChart3D.d.ts +126 -7
- package/types/licensingClasses.d.ts +2 -1
- package/types/licensingClasses.js +1 -0
- package/utils/MemoryUsageHelper.d.ts +45 -0
- package/utils/MemoryUsageHelper.js +171 -0
- package/utils/array.d.ts +8 -0
- package/utils/array.js +58 -1
- package/utils/logger.d.ts +2 -0
- package/utils/logger.js +11 -0
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { TSciChart3D } from "../../../types/TSciChart3D";
|
|
2
|
+
import { BaseRenderableSeries3D, IBaseRenderableSeries3DOptions } from "./BaseRenderableSeries3D";
|
|
3
|
+
import { ESeriesType3D } from "./ESeriesType";
|
|
4
|
+
export interface IPointLineRenderableSeries3DOptions extends IBaseRenderableSeries3DOptions {
|
|
5
|
+
/**
|
|
6
|
+
* The strokethickness of the 3D line series in world units. Set a strokeThickness of 0 to hide the line
|
|
7
|
+
*/
|
|
8
|
+
strokeThickness?: number;
|
|
9
|
+
/**
|
|
10
|
+
* When true, creates a polyline, else each pair of points in {@link XyzDataSeries3D} will be connected with a line with a break before the next pair. Default true
|
|
11
|
+
*/
|
|
12
|
+
isLineStrip?: boolean;
|
|
13
|
+
/**
|
|
14
|
+
* When true, the line will be anti-aliased. Default true
|
|
15
|
+
*/
|
|
16
|
+
isAntiAliased?: boolean;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Defines a 3D poine-line series or 3D line chart type in the SciChart's High Performance Real-time
|
|
20
|
+
* {@link https://www.scichart.com/javascript-chart-features | JavaScript 3D Charts}
|
|
21
|
+
* @remarks
|
|
22
|
+
* To add a 3D line series to a {@link SciChart3DSurface} you need to declare both the {@link PointLineRenderableSeries3D}
|
|
23
|
+
* and a {@link XyzDataSeries3D}. Simplified code sample below:
|
|
24
|
+
*
|
|
25
|
+
* ```ts
|
|
26
|
+
* const sciChart3DSurface: SciChart3DSurface;
|
|
27
|
+
* const wasmContext: TSciChart3D;
|
|
28
|
+
* // Create and fill the dataseries
|
|
29
|
+
* const dataSeries = new XyzDataSeries3D(wasmContext);
|
|
30
|
+
* dataSeries.append(1,2,3);
|
|
31
|
+
* dataSeries.append(3,4,5);
|
|
32
|
+
* // Create the renderableSeries
|
|
33
|
+
* const lineSeries3D = new PointLineRenderableSeries3D(wasmContext);
|
|
34
|
+
* lineSeries3D.dataSeries = dataSeries;
|
|
35
|
+
* lineSeries3D.pointMarker = new SpherePointMarker3D(wasmContext, {
|
|
36
|
+
* size: 3,
|
|
37
|
+
* fill: "#FF0000"
|
|
38
|
+
* });
|
|
39
|
+
* // append to the SciChartSurface
|
|
40
|
+
* sciChart3DSurface.renderableSeries.add(lineSeries3D);
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
export declare class PointLineRenderableSeries3D extends BaseRenderableSeries3D {
|
|
44
|
+
/**
|
|
45
|
+
* @inheritDoc
|
|
46
|
+
*/
|
|
47
|
+
readonly type: ESeriesType3D;
|
|
48
|
+
private strokeThicknessProperty;
|
|
49
|
+
private isLineStripProperty;
|
|
50
|
+
private isAntiAliasedProperty;
|
|
51
|
+
/**
|
|
52
|
+
* Creates an instance of a {@link PointLineRenderableSeries3D}
|
|
53
|
+
* @param webAssemblyContext The {@link TSciChart3D | SciChart 3D WebAssembly Context} containing
|
|
54
|
+
* native methods and access to our WebGL2 WebAssembly Drawing Engine
|
|
55
|
+
* @param options Optional parameters of type {@link IBaseRenderableSeries3DOptions} to configure the series
|
|
56
|
+
*/
|
|
57
|
+
constructor(webAssemblyContext: TSciChart3D, options?: IPointLineRenderableSeries3DOptions);
|
|
58
|
+
get strokeThickness(): number;
|
|
59
|
+
set strokeThickness(value: number);
|
|
60
|
+
get isLineStrip(): boolean;
|
|
61
|
+
set isLineStrip(value: boolean);
|
|
62
|
+
get isAntiAliased(): boolean;
|
|
63
|
+
set isAntiAliased(value: boolean);
|
|
64
|
+
}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.PointLineRenderableSeries3D = void 0;
|
|
19
|
+
var PointLine3DSceneEntity_1 = require("../Primitives/PointLine3DSceneEntity");
|
|
20
|
+
var BaseRenderableSeries3D_1 = require("./BaseRenderableSeries3D");
|
|
21
|
+
var Constants_1 = require("./Constants");
|
|
22
|
+
var ESeriesType_1 = require("./ESeriesType");
|
|
23
|
+
/**
|
|
24
|
+
* Defines a 3D poine-line series or 3D line chart type in the SciChart's High Performance Real-time
|
|
25
|
+
* {@link https://www.scichart.com/javascript-chart-features | JavaScript 3D Charts}
|
|
26
|
+
* @remarks
|
|
27
|
+
* To add a 3D line series to a {@link SciChart3DSurface} you need to declare both the {@link PointLineRenderableSeries3D}
|
|
28
|
+
* and a {@link XyzDataSeries3D}. Simplified code sample below:
|
|
29
|
+
*
|
|
30
|
+
* ```ts
|
|
31
|
+
* const sciChart3DSurface: SciChart3DSurface;
|
|
32
|
+
* const wasmContext: TSciChart3D;
|
|
33
|
+
* // Create and fill the dataseries
|
|
34
|
+
* const dataSeries = new XyzDataSeries3D(wasmContext);
|
|
35
|
+
* dataSeries.append(1,2,3);
|
|
36
|
+
* dataSeries.append(3,4,5);
|
|
37
|
+
* // Create the renderableSeries
|
|
38
|
+
* const lineSeries3D = new PointLineRenderableSeries3D(wasmContext);
|
|
39
|
+
* lineSeries3D.dataSeries = dataSeries;
|
|
40
|
+
* lineSeries3D.pointMarker = new SpherePointMarker3D(wasmContext, {
|
|
41
|
+
* size: 3,
|
|
42
|
+
* fill: "#FF0000"
|
|
43
|
+
* });
|
|
44
|
+
* // append to the SciChartSurface
|
|
45
|
+
* sciChart3DSurface.renderableSeries.add(lineSeries3D);
|
|
46
|
+
* ```
|
|
47
|
+
*/
|
|
48
|
+
var PointLineRenderableSeries3D = /** @class */ (function (_super) {
|
|
49
|
+
__extends(PointLineRenderableSeries3D, _super);
|
|
50
|
+
/**
|
|
51
|
+
* Creates an instance of a {@link PointLineRenderableSeries3D}
|
|
52
|
+
* @param webAssemblyContext The {@link TSciChart3D | SciChart 3D WebAssembly Context} containing
|
|
53
|
+
* native methods and access to our WebGL2 WebAssembly Drawing Engine
|
|
54
|
+
* @param options Optional parameters of type {@link IBaseRenderableSeries3DOptions} to configure the series
|
|
55
|
+
*/
|
|
56
|
+
function PointLineRenderableSeries3D(webAssemblyContext, options) {
|
|
57
|
+
var _this = this;
|
|
58
|
+
var _a, _b, _c;
|
|
59
|
+
_this = _super.call(this, webAssemblyContext, options) || this;
|
|
60
|
+
/**
|
|
61
|
+
* @inheritDoc
|
|
62
|
+
*/
|
|
63
|
+
_this.type = ESeriesType_1.ESeriesType3D.PointLineRenderableSeries3D;
|
|
64
|
+
_this.strokeThicknessProperty = (_a = options === null || options === void 0 ? void 0 : options.strokeThickness) !== null && _a !== void 0 ? _a : 2;
|
|
65
|
+
_this.isLineStripProperty = (_b = options === null || options === void 0 ? void 0 : options.isLineStrip) !== null && _b !== void 0 ? _b : true;
|
|
66
|
+
_this.isAntiAliasedProperty = (_c = options === null || options === void 0 ? void 0 : options.isAntiAliased) !== null && _c !== void 0 ? _c : true;
|
|
67
|
+
_this.setSceneEntity(new PointLine3DSceneEntity_1.PointLine3DSceneEntity(webAssemblyContext, _this));
|
|
68
|
+
return _this;
|
|
69
|
+
}
|
|
70
|
+
Object.defineProperty(PointLineRenderableSeries3D.prototype, "strokeThickness", {
|
|
71
|
+
get: function () {
|
|
72
|
+
return this.strokeThicknessProperty;
|
|
73
|
+
},
|
|
74
|
+
set: function (value) {
|
|
75
|
+
this.strokeThicknessProperty = value;
|
|
76
|
+
this.notifyPropertyChanged(Constants_1.PROPERTY.STROKE_THICKNESS);
|
|
77
|
+
},
|
|
78
|
+
enumerable: false,
|
|
79
|
+
configurable: true
|
|
80
|
+
});
|
|
81
|
+
Object.defineProperty(PointLineRenderableSeries3D.prototype, "isLineStrip", {
|
|
82
|
+
get: function () {
|
|
83
|
+
return this.isLineStripProperty;
|
|
84
|
+
},
|
|
85
|
+
set: function (value) {
|
|
86
|
+
this.isLineStripProperty = value;
|
|
87
|
+
this.notifyPropertyChanged(Constants_1.PROPERTY.IS_LINE_STRIP);
|
|
88
|
+
},
|
|
89
|
+
enumerable: false,
|
|
90
|
+
configurable: true
|
|
91
|
+
});
|
|
92
|
+
Object.defineProperty(PointLineRenderableSeries3D.prototype, "isAntiAliased", {
|
|
93
|
+
get: function () {
|
|
94
|
+
return this.isAntiAliasedProperty;
|
|
95
|
+
},
|
|
96
|
+
set: function (value) {
|
|
97
|
+
this.isAntiAliasedProperty = value;
|
|
98
|
+
this.notifyPropertyChanged(Constants_1.PROPERTY.IS_ANTIALIASED);
|
|
99
|
+
},
|
|
100
|
+
enumerable: false,
|
|
101
|
+
configurable: true
|
|
102
|
+
});
|
|
103
|
+
return PointLineRenderableSeries3D;
|
|
104
|
+
}(BaseRenderableSeries3D_1.BaseRenderableSeries3D));
|
|
105
|
+
exports.PointLineRenderableSeries3D = PointLineRenderableSeries3D;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { EDataSeriesType3D } from "../../Model/DataSeries/BaseDataSeries3D";
|
|
2
|
+
import { Vector3 } from "../../Vector3";
|
|
3
|
+
import { IRenderableSeries3D } from "./BaseRenderableSeries3D";
|
|
4
|
+
import { HitTestInfo3D } from "./HitTestInfo3D";
|
|
5
|
+
/**
|
|
6
|
+
* SeriesInfo3D is a data-structure which provides enriched information about a hit-test operation in SciChart 3D.
|
|
7
|
+
* It's derived by calling {@link BaseRenderableSeries3D.hitTest}. There is a class hierachy for {@link SeriesInfo3D} which
|
|
8
|
+
* is a different class depending on series type, e.g. 3D Scatter series has {@link XyzSeriesInfo3D},
|
|
9
|
+
* 3D Surface mesh series has {@link SurfaceMeshSeriesInfo3D} etc.
|
|
10
|
+
*/
|
|
11
|
+
export declare class SeriesInfo3D {
|
|
12
|
+
/**
|
|
13
|
+
* The default empty {@link HitTestInfo3D} instance
|
|
14
|
+
*/
|
|
15
|
+
static empty(): SeriesInfo3D;
|
|
16
|
+
/**
|
|
17
|
+
* When true, the {@link SeriesInfo3D} is empty
|
|
18
|
+
*/
|
|
19
|
+
isEmpty: boolean;
|
|
20
|
+
/**
|
|
21
|
+
* When {@link isHit} is true, this is the X-value of the data-point in the {@link XyzDataSeries3D} that was hit
|
|
22
|
+
*/
|
|
23
|
+
xValue: number;
|
|
24
|
+
/**
|
|
25
|
+
* When {@link isHit} is true, this is the Y-value of the data-point in the {@link XyzDataSeries3D} that was hit
|
|
26
|
+
*/
|
|
27
|
+
yValue: number;
|
|
28
|
+
/**
|
|
29
|
+
* When {@link isHit} is true, this is the Z-value of the data-point in the {@link XyzDataSeries3D} that was hit
|
|
30
|
+
*/
|
|
31
|
+
zValue: number;
|
|
32
|
+
/**
|
|
33
|
+
* When {@link isHit} is true, this is the {@link Vector3} 3D World Coordinates of the data-point that was hit
|
|
34
|
+
*/
|
|
35
|
+
hitWorldCoords: Vector3;
|
|
36
|
+
/**
|
|
37
|
+
* The name of the associated {@link BaseDataSeries3D | DataSeries}
|
|
38
|
+
*/
|
|
39
|
+
dataSeriesName: string;
|
|
40
|
+
dataSeriesType: EDataSeriesType3D;
|
|
41
|
+
/**
|
|
42
|
+
* The associated {@link IRenderableSeries3D | RenderableSeries}
|
|
43
|
+
*/
|
|
44
|
+
renderableSeries: IRenderableSeries3D;
|
|
45
|
+
/**
|
|
46
|
+
* When true, the result of the hit-test operation is hit (mouse over data-point)
|
|
47
|
+
*/
|
|
48
|
+
isHit: boolean;
|
|
49
|
+
protected hitTestInfo: HitTestInfo3D;
|
|
50
|
+
constructor(series: IRenderableSeries3D, hitTestInfo: HitTestInfo3D);
|
|
51
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SeriesInfo3D = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* SeriesInfo3D is a data-structure which provides enriched information about a hit-test operation in SciChart 3D.
|
|
6
|
+
* It's derived by calling {@link BaseRenderableSeries3D.hitTest}. There is a class hierachy for {@link SeriesInfo3D} which
|
|
7
|
+
* is a different class depending on series type, e.g. 3D Scatter series has {@link XyzSeriesInfo3D},
|
|
8
|
+
* 3D Surface mesh series has {@link SurfaceMeshSeriesInfo3D} etc.
|
|
9
|
+
*/
|
|
10
|
+
var SeriesInfo3D = /** @class */ (function () {
|
|
11
|
+
function SeriesInfo3D(series, hitTestInfo) {
|
|
12
|
+
var _a;
|
|
13
|
+
/**
|
|
14
|
+
* When true, the {@link SeriesInfo3D} is empty
|
|
15
|
+
*/
|
|
16
|
+
this.isEmpty = false;
|
|
17
|
+
this.renderableSeries = series;
|
|
18
|
+
this.dataSeriesName = (_a = series === null || series === void 0 ? void 0 : series.dataSeries) === null || _a === void 0 ? void 0 : _a.dataSeriesName;
|
|
19
|
+
this.isHit = hitTestInfo.isHit;
|
|
20
|
+
this.hitTestInfo = hitTestInfo;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* The default empty {@link HitTestInfo3D} instance
|
|
24
|
+
*/
|
|
25
|
+
SeriesInfo3D.empty = function () {
|
|
26
|
+
var si = new SeriesInfo3D(undefined, undefined);
|
|
27
|
+
si.isEmpty = true;
|
|
28
|
+
return si;
|
|
29
|
+
};
|
|
30
|
+
return SeriesInfo3D;
|
|
31
|
+
}());
|
|
32
|
+
exports.SeriesInfo3D = SeriesInfo3D;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { IRenderableSeries3D } from "./BaseRenderableSeries3D";
|
|
2
|
+
import { HitTestInfo3D } from "./HitTestInfo3D";
|
|
3
|
+
import { SeriesInfo3D } from "./SeriesInfo3D";
|
|
4
|
+
export declare class SurfaceMeshSeriesInfo3D extends SeriesInfo3D {
|
|
5
|
+
/**
|
|
6
|
+
* When {@link isHit} is true, this is the index to the Z-cell in the {@link UniformGridDataSeries3D} that was hit
|
|
7
|
+
*/
|
|
8
|
+
zIndex: number;
|
|
9
|
+
/**
|
|
10
|
+
* When {@link isHit} is true, this is the index to the X-cell in the {@link UniformGridDataSeries3D} that was hit
|
|
11
|
+
*/
|
|
12
|
+
xIndex: number;
|
|
13
|
+
constructor(series: IRenderableSeries3D, hitTestInfo: HitTestInfo3D);
|
|
14
|
+
private enrichSeriesInfo;
|
|
15
|
+
}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.SurfaceMeshSeriesInfo3D = void 0;
|
|
19
|
+
var pointUtil_1 = require("../../../utils/pointUtil");
|
|
20
|
+
var BaseDataSeries3D_1 = require("../../Model/DataSeries/BaseDataSeries3D");
|
|
21
|
+
var Vector3_1 = require("../../Vector3");
|
|
22
|
+
var SeriesInfo3D_1 = require("./SeriesInfo3D");
|
|
23
|
+
var SurfaceMeshSeriesInfo3D = /** @class */ (function (_super) {
|
|
24
|
+
__extends(SurfaceMeshSeriesInfo3D, _super);
|
|
25
|
+
function SurfaceMeshSeriesInfo3D(series, hitTestInfo) {
|
|
26
|
+
var _this = _super.call(this, series, hitTestInfo) || this;
|
|
27
|
+
_this.dataSeriesType = BaseDataSeries3D_1.EDataSeriesType3D.UniformGrid3D;
|
|
28
|
+
_this.enrichSeriesInfo();
|
|
29
|
+
return _this;
|
|
30
|
+
}
|
|
31
|
+
SurfaceMeshSeriesInfo3D.prototype.enrichSeriesInfo = function () {
|
|
32
|
+
// We know the cell that was hit. We need to get the four corners of the cell in
|
|
33
|
+
// data space. Then convert to world space. Then convert to screen space
|
|
34
|
+
// Using this, figure out which corner the pointer was closest to and report that
|
|
35
|
+
// as the hit-test value
|
|
36
|
+
if (!this.isHit || !this.renderableSeries) {
|
|
37
|
+
// console.log(`not a hit apparently`);
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
var ds = this.renderableSeries.dataSeries;
|
|
41
|
+
if (!ds)
|
|
42
|
+
return;
|
|
43
|
+
// Get the x0z0 index of the cell that was hit
|
|
44
|
+
var x0z0 = { x: this.hitTestInfo.selectionIjIndices.x, z: this.hitTestInfo.selectionIjIndices.y };
|
|
45
|
+
// Convert x0z0 and four corners of quad-hit to data-values
|
|
46
|
+
// nomenclature: d (data values at), x0 (x index + 0), z0 (z index + 0)
|
|
47
|
+
var dx0z0 = { x: ds.getX(x0z0.x), y: ds.getYValue(x0z0.z, x0z0.x), z: ds.getZ(x0z0.z) };
|
|
48
|
+
var dx1z0 = { x: ds.getX(x0z0.x + 1), y: ds.getYValue(x0z0.z, x0z0.x + 1), z: ds.getZ(x0z0.z) };
|
|
49
|
+
var dx0z1 = { x: ds.getX(x0z0.x), y: ds.getYValue(x0z0.z + 1, x0z0.x), z: ds.getZ(x0z0.z + 1) };
|
|
50
|
+
var dx1z1 = { x: ds.getX(x0z0.x + 1), y: ds.getYValue(x0z0.z + 1, x0z0.x + 1), z: ds.getZ(x0z0.z + 1) };
|
|
51
|
+
var scs = this.renderableSeries.parentSurface;
|
|
52
|
+
if (!scs || !scs.xAxis || !scs.yAxis || !scs.zAxis)
|
|
53
|
+
return;
|
|
54
|
+
var xCalc = scs.xAxis.getCurrentCoordinateCalculator();
|
|
55
|
+
var yCalc = scs.yAxis.getCurrentCoordinateCalculator();
|
|
56
|
+
var zCalc = scs.zAxis.getCurrentCoordinateCalculator();
|
|
57
|
+
// convert data-values to world coordinates
|
|
58
|
+
// nomenclature: w (world coord at), x0 (x index + 0), y, z0 (z index + 0)
|
|
59
|
+
var wx0z0 = new Vector3_1.Vector3(xCalc.getCoordinate(dx0z0.x), yCalc.getCoordinate(dx0z0.y), zCalc.getCoordinate(dx0z0.z));
|
|
60
|
+
var wx1z0 = new Vector3_1.Vector3(xCalc.getCoordinate(dx1z0.x), yCalc.getCoordinate(dx1z0.y), zCalc.getCoordinate(dx1z0.z));
|
|
61
|
+
var wx0z1 = new Vector3_1.Vector3(xCalc.getCoordinate(dx0z1.x), yCalc.getCoordinate(dx0z1.y), zCalc.getCoordinate(dx0z1.z));
|
|
62
|
+
var wx1z1 = new Vector3_1.Vector3(xCalc.getCoordinate(dx1z1.x), yCalc.getCoordinate(dx1z1.y), zCalc.getCoordinate(dx1z1.z));
|
|
63
|
+
// Transform all to screen space
|
|
64
|
+
// nomenclature: s (screenspace 2d coordinate) for data at x0 (x index + 0), z0 (z index + 0)
|
|
65
|
+
var sx0z0 = scs.worldToScreenCoord(wx0z0);
|
|
66
|
+
var sx1z0 = scs.worldToScreenCoord(wx1z0);
|
|
67
|
+
var sx0z1 = scs.worldToScreenCoord(wx0z1);
|
|
68
|
+
var sx1z1 = scs.worldToScreenCoord(wx1z1);
|
|
69
|
+
// calculate euclidean distance from hit-test point to each corner in screen space
|
|
70
|
+
var x0z0distance = (0, pointUtil_1.calcDistance)(sx0z0.x, sx0z0.y, this.hitTestInfo.hitTestPoint.x, this.hitTestInfo.hitTestPoint.y);
|
|
71
|
+
var x1z0distance = (0, pointUtil_1.calcDistance)(sx1z0.x, sx1z0.y, this.hitTestInfo.hitTestPoint.x, this.hitTestInfo.hitTestPoint.y);
|
|
72
|
+
var x0z1distance = (0, pointUtil_1.calcDistance)(sx0z1.x, sx0z1.y, this.hitTestInfo.hitTestPoint.x, this.hitTestInfo.hitTestPoint.y);
|
|
73
|
+
var x1z1distance = (0, pointUtil_1.calcDistance)(sx1z1.x, sx1z1.y, this.hitTestInfo.hitTestPoint.x, this.hitTestInfo.hitTestPoint.y);
|
|
74
|
+
var xOffset = scs.worldDimensions.x * 0.5;
|
|
75
|
+
var zOffset = scs.worldDimensions.z * 0.5;
|
|
76
|
+
var minDistance = Math.min(x0z0distance, x1z0distance, x0z1distance, x1z1distance);
|
|
77
|
+
if (minDistance === x0z0distance) {
|
|
78
|
+
this.xIndex = x0z0.x;
|
|
79
|
+
this.zIndex = x0z0.z;
|
|
80
|
+
this.xValue = dx0z0.x;
|
|
81
|
+
this.yValue = dx0z0.y;
|
|
82
|
+
this.zValue = dx0z0.z;
|
|
83
|
+
this.hitWorldCoords = new Vector3_1.Vector3(wx0z0.x - xOffset, wx0z0.y, wx0z0.z - zOffset);
|
|
84
|
+
}
|
|
85
|
+
if (minDistance === x0z1distance) {
|
|
86
|
+
this.xIndex = x0z0.x;
|
|
87
|
+
this.zIndex = x0z0.z + 1;
|
|
88
|
+
this.xValue = dx0z1.x;
|
|
89
|
+
this.yValue = dx0z1.y;
|
|
90
|
+
this.zValue = dx0z1.z;
|
|
91
|
+
this.hitWorldCoords = new Vector3_1.Vector3(wx0z1.x - xOffset, wx0z1.y, wx0z1.z - zOffset);
|
|
92
|
+
}
|
|
93
|
+
if (minDistance === x1z0distance) {
|
|
94
|
+
this.xIndex = x0z0.x + 1;
|
|
95
|
+
this.zIndex = x0z0.z;
|
|
96
|
+
this.xValue = dx1z0.x;
|
|
97
|
+
this.yValue = dx1z0.y;
|
|
98
|
+
this.zValue = dx1z0.z;
|
|
99
|
+
this.hitWorldCoords = new Vector3_1.Vector3(wx1z0.x - xOffset, wx1z0.y, wx1z0.z - zOffset);
|
|
100
|
+
}
|
|
101
|
+
if (minDistance === x1z1distance) {
|
|
102
|
+
this.xIndex = x0z0.x + 1;
|
|
103
|
+
this.zIndex = x0z0.z + 1;
|
|
104
|
+
this.xValue = dx1z1.x;
|
|
105
|
+
this.yValue = dx1z1.y;
|
|
106
|
+
this.zValue = dx1z1.z;
|
|
107
|
+
this.hitWorldCoords = new Vector3_1.Vector3(wx1z1.x - xOffset, wx1z1.y, wx1z1.z - zOffset);
|
|
108
|
+
}
|
|
109
|
+
};
|
|
110
|
+
return SurfaceMeshSeriesInfo3D;
|
|
111
|
+
}(SeriesInfo3D_1.SeriesInfo3D));
|
|
112
|
+
exports.SurfaceMeshSeriesInfo3D = SurfaceMeshSeriesInfo3D;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { IPointMetadata3D } from "../../Model/DataSeries/IPointMetadata3D";
|
|
2
|
+
import { IRenderableSeries3D } from "./BaseRenderableSeries3D";
|
|
3
|
+
import { HitTestInfo3D } from "./HitTestInfo3D";
|
|
4
|
+
import { SeriesInfo3D } from "./SeriesInfo3D";
|
|
5
|
+
/**
|
|
6
|
+
* XyzSeriesInfo3D is a data-structure which provides enriched information about a hit-test operation on an XYZ series in SciChart 3D.
|
|
7
|
+
* It's derived by calling {@link BaseRenderableSeries3D.hitTest}.
|
|
8
|
+
*/
|
|
9
|
+
export declare class XyzSeriesInfo3D extends SeriesInfo3D {
|
|
10
|
+
/**
|
|
11
|
+
* When {@link isHit} is true, this is the index of the data-point in the {@link XyzDataSeries3D} that was hit
|
|
12
|
+
*/
|
|
13
|
+
dataSeriesIndex: number;
|
|
14
|
+
/**
|
|
15
|
+
* When {@link isHit} is true, this metadata on the data-point in the {@link XyzDataSeries3D} that was hit
|
|
16
|
+
*/
|
|
17
|
+
pointMetadata: IPointMetadata3D;
|
|
18
|
+
constructor(series: IRenderableSeries3D, hitTestInfo: HitTestInfo3D);
|
|
19
|
+
private enrichSeriesInfo;
|
|
20
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.XyzSeriesInfo3D = void 0;
|
|
19
|
+
var BaseDataSeries3D_1 = require("../../Model/DataSeries/BaseDataSeries3D");
|
|
20
|
+
var Vector3_1 = require("../../Vector3");
|
|
21
|
+
var SeriesInfo3D_1 = require("./SeriesInfo3D");
|
|
22
|
+
/**
|
|
23
|
+
* XyzSeriesInfo3D is a data-structure which provides enriched information about a hit-test operation on an XYZ series in SciChart 3D.
|
|
24
|
+
* It's derived by calling {@link BaseRenderableSeries3D.hitTest}.
|
|
25
|
+
*/
|
|
26
|
+
var XyzSeriesInfo3D = /** @class */ (function (_super) {
|
|
27
|
+
__extends(XyzSeriesInfo3D, _super);
|
|
28
|
+
function XyzSeriesInfo3D(series, hitTestInfo) {
|
|
29
|
+
var _this = _super.call(this, series, hitTestInfo) || this;
|
|
30
|
+
_this.dataSeriesType = BaseDataSeries3D_1.EDataSeriesType3D.Xyz3D;
|
|
31
|
+
_this.enrichSeriesInfo();
|
|
32
|
+
return _this;
|
|
33
|
+
}
|
|
34
|
+
XyzSeriesInfo3D.prototype.enrichSeriesInfo = function () {
|
|
35
|
+
if (!this.isHit || !this.renderableSeries)
|
|
36
|
+
return;
|
|
37
|
+
this.dataSeriesIndex = this.hitTestInfo.selectionIndex - 1;
|
|
38
|
+
var xyzDataSeries = this.renderableSeries.dataSeries;
|
|
39
|
+
if (xyzDataSeries) {
|
|
40
|
+
this.xValue = xyzDataSeries.getNativeXValues().get(this.dataSeriesIndex);
|
|
41
|
+
this.yValue = xyzDataSeries.getNativeYValues().get(this.dataSeriesIndex);
|
|
42
|
+
this.zValue = xyzDataSeries.getNativeZValues().get(this.dataSeriesIndex);
|
|
43
|
+
var metadatas = xyzDataSeries.getMetadataValues();
|
|
44
|
+
if (metadatas && metadatas.length > this.dataSeriesIndex) {
|
|
45
|
+
this.pointMetadata = metadatas[this.dataSeriesIndex];
|
|
46
|
+
}
|
|
47
|
+
var scs = this.renderableSeries.parentSurface;
|
|
48
|
+
if (scs) {
|
|
49
|
+
var xOffset = scs.worldDimensions.x * 0.5;
|
|
50
|
+
var zOffset = scs.worldDimensions.z * 0.5;
|
|
51
|
+
var x = scs.xAxis.getCurrentCoordinateCalculator().getCoordinate(this.xValue) - xOffset;
|
|
52
|
+
var y = scs.yAxis.getCurrentCoordinateCalculator().getCoordinate(this.yValue);
|
|
53
|
+
var z = scs.zAxis.getCurrentCoordinateCalculator().getCoordinate(this.zValue) - zOffset;
|
|
54
|
+
this.hitWorldCoords = new Vector3_1.Vector3(x, y, z);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
return XyzSeriesInfo3D;
|
|
59
|
+
}(SeriesInfo3D_1.SeriesInfo3D));
|
|
60
|
+
exports.XyzSeriesInfo3D = XyzSeriesInfo3D;
|
|
@@ -26,10 +26,6 @@ export declare class RootSceneEntity extends BaseSceneEntity3D<SCRTSceneEntity>
|
|
|
26
26
|
* access to our WebGL2 Engine and WebAssembly numerical methods
|
|
27
27
|
*/
|
|
28
28
|
constructor(webAssemblyContext: TSciChart3D, parentSurface: SciChart3DSurface);
|
|
29
|
-
/**
|
|
30
|
-
* @inheritDoc
|
|
31
|
-
*/
|
|
32
|
-
delete(): void;
|
|
33
29
|
/**
|
|
34
30
|
* @inheritDoc
|
|
35
31
|
*/
|
|
@@ -18,6 +18,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
18
18
|
exports.RootSceneEntity = void 0;
|
|
19
19
|
var SceneEntityType_1 = require("../../types/SceneEntityType");
|
|
20
20
|
var BaseSceneEntity3D_1 = require("./Primitives/BaseSceneEntity3D");
|
|
21
|
+
var EntityIdProvider_1 = require("./Primitives/EntityIdProvider");
|
|
21
22
|
var Guard_1 = require("../../Core/Guard");
|
|
22
23
|
/**
|
|
23
24
|
* @summary Defines a special {@link BaseSceneEntity3D} type which is the root of the entire scene in
|
|
@@ -43,24 +44,18 @@ var RootSceneEntity = /** @class */ (function (_super) {
|
|
|
43
44
|
_this.type = SceneEntityType_1.ESceneEntityType.RootSceneEntity;
|
|
44
45
|
Guard_1.Guard.notNull(parentSurface, "parentSurface");
|
|
45
46
|
_this.parentSurface = parentSurface;
|
|
47
|
+
_this.entityIdProvider = new EntityIdProvider_1.DefaultEntityIdProvider();
|
|
46
48
|
return _this;
|
|
47
49
|
}
|
|
48
|
-
/**
|
|
49
|
-
* @inheritDoc
|
|
50
|
-
*/
|
|
51
|
-
RootSceneEntity.prototype.delete = function () {
|
|
52
|
-
_super.prototype.delete.call(this);
|
|
53
|
-
};
|
|
54
50
|
/**
|
|
55
51
|
* @inheritDoc
|
|
56
52
|
*/
|
|
57
53
|
RootSceneEntity.prototype.attachChild = function (childEntity) {
|
|
58
|
-
// TODO: entity.EntityIdProvider = this.EntityIdProvider;
|
|
59
|
-
// console.log("Adding child entity to the root!");
|
|
60
54
|
var parentEntity = this;
|
|
61
55
|
if (childEntity === null || childEntity === void 0 ? void 0 : childEntity.nativeEntity) {
|
|
62
56
|
this.world.AddEntity(childEntity.nativeEntity);
|
|
63
57
|
}
|
|
58
|
+
childEntity.entityIdProvider = this.entityIdProvider;
|
|
64
59
|
childEntity.parent = parentEntity;
|
|
65
60
|
childEntity.onAttached();
|
|
66
61
|
};
|
|
@@ -25,12 +25,14 @@ export declare class SciChart3DRenderer {
|
|
|
25
25
|
static tryPerformAutoRangeOn(axis: AxisBase3D, scs: SciChart3DSurface): void;
|
|
26
26
|
private readonly scs;
|
|
27
27
|
private wasmContext;
|
|
28
|
+
private prevRect;
|
|
28
29
|
private previousTime;
|
|
29
30
|
constructor(scs: SciChart3DSurface, wasmContext: TSciChart3D);
|
|
30
31
|
/**
|
|
31
32
|
* The main render loop
|
|
32
33
|
*/
|
|
33
34
|
render(): void;
|
|
35
|
+
private updateSvgCanvasSize;
|
|
34
36
|
private updateWatermark;
|
|
35
37
|
private isSurfaceValid;
|
|
36
38
|
private prepareAxes;
|
|
@@ -1,8 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
3
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
4
|
+
if (ar || !(i in from)) {
|
|
5
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
6
|
+
ar[i] = from[i];
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
10
|
+
};
|
|
2
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
12
|
exports.SciChart3DRenderer = void 0;
|
|
13
|
+
var IAnnotation_1 = require("../../Charting/Visuals/Annotations/IAnnotation");
|
|
14
|
+
var DpiHelper_1 = require("../../Charting/Visuals/TextureManager/DpiHelper");
|
|
4
15
|
var Deleter_1 = require("../../Core/Deleter");
|
|
5
16
|
var Guard_1 = require("../../Core/Guard");
|
|
17
|
+
var Rect_1 = require("../../Core/Rect");
|
|
6
18
|
var AutoRange_1 = require("../../types/AutoRange");
|
|
7
19
|
var WatermarkPosition_1 = require("../../types/WatermarkPosition");
|
|
8
20
|
var AxisCubeDescriptor_1 = require("./Primitives/AxisCubeDescriptor");
|
|
@@ -83,6 +95,10 @@ var SciChart3DRenderer = /** @class */ (function () {
|
|
|
83
95
|
var tsrCamera = sceneWorld.GetMainCamera();
|
|
84
96
|
var typescriptCamera = this.scs.camera;
|
|
85
97
|
typescriptCamera.updateEngineCamera(tsrCamera);
|
|
98
|
+
var _a = this.scs.viewportManager, width = _a.width, height = _a.height;
|
|
99
|
+
var viewRect = new Rect_1.Rect(0, 0, width, height);
|
|
100
|
+
this.scs.setSeriesViewRect(viewRect);
|
|
101
|
+
this.updateSvgCanvasSize(viewRect);
|
|
86
102
|
// Animation Step
|
|
87
103
|
var timeElapsed = this.previousTime ? Date.now() - this.previousTime : undefined;
|
|
88
104
|
this.previousTime = Date.now();
|
|
@@ -96,6 +112,15 @@ var SciChart3DRenderer = /** @class */ (function () {
|
|
|
96
112
|
// Step 5: Prepare the Axis Cube
|
|
97
113
|
// Viewport3D already checked to be not null in IsSurfaceValid
|
|
98
114
|
this.scs.rootEntity.visitEntities(function (e) { return e.setRenderPassData(rpd); });
|
|
115
|
+
var userAnnotations = this.scs.annotations.asArray();
|
|
116
|
+
var modifierAnnotations = this.scs.modifierAnnotations.asArray();
|
|
117
|
+
var annotations = __spreadArray(__spreadArray([], userAnnotations, true), modifierAnnotations, true);
|
|
118
|
+
var svgAnnotations = annotations.filter(function (el) {
|
|
119
|
+
return el.type === IAnnotation_1.EAnnotationType.SVG ||
|
|
120
|
+
el.type === IAnnotation_1.EAnnotationType.SVGTextAnnotation ||
|
|
121
|
+
el.type === IAnnotation_1.EAnnotationType.SVGCustomAnnotation;
|
|
122
|
+
});
|
|
123
|
+
svgAnnotations.forEach(function (svg) { return svg.update(undefined, undefined, 0, 0); });
|
|
99
124
|
// We add the same padding as we have for 2D 6px
|
|
100
125
|
this.updateWatermark();
|
|
101
126
|
// Step 6: Notify that scene is about to be drawn
|
|
@@ -105,6 +130,30 @@ var SciChart3DRenderer = /** @class */ (function () {
|
|
|
105
130
|
setTimeout(this.scs.invalidateElement, 0);
|
|
106
131
|
}
|
|
107
132
|
};
|
|
133
|
+
SciChart3DRenderer.prototype.updateSvgCanvasSize = function (seriesViewRect) {
|
|
134
|
+
// Convert seriesViewRect back to device pixels
|
|
135
|
+
// e.g. at Retina display canvas size may be 400x300 but seriesViewRect size would be 800x600
|
|
136
|
+
var viewRectInDevicePixels = new Rect_1.Rect(seriesViewRect.x / DpiHelper_1.DpiHelper.PIXEL_RATIO, seriesViewRect.y / DpiHelper_1.DpiHelper.PIXEL_RATIO, seriesViewRect.width / DpiHelper_1.DpiHelper.PIXEL_RATIO, seriesViewRect.height / DpiHelper_1.DpiHelper.PIXEL_RATIO);
|
|
137
|
+
if (!this.prevRect) {
|
|
138
|
+
this.prevRect = viewRectInDevicePixels;
|
|
139
|
+
}
|
|
140
|
+
else if (Rect_1.Rect.isEqual(this.prevRect, viewRectInDevicePixels)) {
|
|
141
|
+
return;
|
|
142
|
+
}
|
|
143
|
+
var svgRootElement = this.scs.domSvgContainer;
|
|
144
|
+
if (svgRootElement) {
|
|
145
|
+
svgRootElement.style.marginLeft = "".concat(viewRectInDevicePixels.x, "px");
|
|
146
|
+
svgRootElement.style.marginTop = "".concat(viewRectInDevicePixels.y, "px");
|
|
147
|
+
// Set width, height
|
|
148
|
+
svgRootElement.setAttribute("width", viewRectInDevicePixels.width.toString());
|
|
149
|
+
svgRootElement.setAttribute("height", viewRectInDevicePixels.height.toString());
|
|
150
|
+
// Set display width, height
|
|
151
|
+
svgRootElement.style.width = viewRectInDevicePixels.width + "px";
|
|
152
|
+
svgRootElement.style.height = viewRectInDevicePixels.height + "px";
|
|
153
|
+
// Set scaling so annotations, tooltips etc are in right position after DPI Scaling
|
|
154
|
+
svgRootElement.currentScale = 1;
|
|
155
|
+
}
|
|
156
|
+
};
|
|
108
157
|
SciChart3DRenderer.prototype.updateWatermark = function () {
|
|
109
158
|
var chartHeight = this.scs.getMainCanvas().clientHeight;
|
|
110
159
|
var chartWidth = this.scs.getMainCanvas().clientWidth;
|