scichart 3.1.346 → 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/ObservableArray.d.ts +11 -5
- package/Core/ObservableArray.js +25 -6
- 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
package/Charting/Visuals/RenderableSeries/DrawingProviders/NonUniformHeatmapDrawingProvider.js
CHANGED
|
@@ -30,13 +30,12 @@ exports.NonUniformHeatmapDrawingProvider = void 0;
|
|
|
30
30
|
var Deleter_1 = require("../../../../Core/Deleter");
|
|
31
31
|
var NumberRange_1 = require("../../../../Core/NumberRange");
|
|
32
32
|
var Rect_1 = require("../../../../Core/Rect");
|
|
33
|
-
var colorUtil_1 = require("../../../../utils/colorUtil");
|
|
34
33
|
var memoize_1 = require("../../../../utils/memoize");
|
|
35
|
-
var parseColor_1 = require("../../../../utils/parseColor");
|
|
36
34
|
var TextureCache_1 = require("../../../Drawing/TextureCache");
|
|
37
35
|
var BaseHeatmapRenderableSeries_1 = require("../BaseHeatmapRenderableSeries");
|
|
38
36
|
var constants_1 = require("../constants");
|
|
39
37
|
var BaseSeriesDrawingProvider_1 = require("./BaseSeriesDrawingProvider");
|
|
38
|
+
var HeatmapHelpers_1 = require("./HeatmapHelpers");
|
|
40
39
|
// TODO figure out if other value is needed
|
|
41
40
|
var precision = 100;
|
|
42
41
|
/**
|
|
@@ -79,7 +78,7 @@ var NonUniformHeatmapDrawingProvider = /** @class */ (function (_super) {
|
|
|
79
78
|
propertyName === constants_1.PROPERTY.OPACITY;
|
|
80
79
|
if (recreateGradientColorScale) {
|
|
81
80
|
// TODO check case when colormap is passed via setter
|
|
82
|
-
this.colorGradientScale = createColorMap(this.parentSeries.colorMap.gradientStops, precision);
|
|
81
|
+
this.colorGradientScale = (0, HeatmapHelpers_1.createColorMap)(this.parentSeries.colorMap.gradientStops, precision);
|
|
83
82
|
}
|
|
84
83
|
};
|
|
85
84
|
/**
|
|
@@ -202,7 +201,7 @@ var NonUniformHeatmapDrawingProvider = /** @class */ (function (_super) {
|
|
|
202
201
|
var visibleTextureHeight = Math.ceil(Math.abs(yMinCoordinate - yMaxCoordinate));
|
|
203
202
|
var heatmapRect = new Rect_1.Rect(heatmapStartX, heatmapStartY, heatmapWidth, heatmapHeight);
|
|
204
203
|
// calculates cell offsets in pixels from cell sizes
|
|
205
|
-
var _a = calculateOffsets(heatmapRect, isVerticalChart, xCellSizes, yCellSizes, horStartInd, horCellCount, horInc, vertStartInd, vertCellCount, vertInc, seriesViewRect), horCellOffsets = _a.horCellOffsets, vertCellOffsets = _a.vertCellOffsets;
|
|
204
|
+
var _a = (0, HeatmapHelpers_1.calculateOffsets)(heatmapRect, isVerticalChart, xCellSizes, yCellSizes, horStartInd, horCellCount, horInc, vertStartInd, vertCellCount, vertInc, seriesViewRect), horCellOffsets = _a.horCellOffsets, vertCellOffsets = _a.vertCellOffsets;
|
|
206
205
|
var texture = this.calculateHeatmapTexture({
|
|
207
206
|
xStartInd: horStartInd,
|
|
208
207
|
textureWidth: visibleTextureWidth,
|
|
@@ -257,237 +256,13 @@ var NonUniformHeatmapDrawingProvider = /** @class */ (function (_super) {
|
|
|
257
256
|
areArraysEqual(currentHorCellOffsets, prevHorCellOffsets) &&
|
|
258
257
|
areArraysEqual(currVertCellOffsets, prevVertCellOffsets));
|
|
259
258
|
};
|
|
260
|
-
this.getMemoizedHeatmapTexture = (0, memoize_1.memoize)(calculateHeatmapTexture, customCompare);
|
|
259
|
+
this.getMemoizedHeatmapTexture = (0, memoize_1.memoize)(HeatmapHelpers_1.calculateHeatmapTexture, customCompare);
|
|
261
260
|
}
|
|
262
261
|
var areArraysEqual = function (arr1, arr2) {
|
|
263
262
|
return !arr1.some(function (value, index) { return value !== arr2[index]; });
|
|
264
263
|
};
|
|
265
|
-
return this.getMemoizedHeatmapTexture(colorDataParams, this.colorDataVector, this.heatTextureCache);
|
|
264
|
+
return this.getMemoizedHeatmapTexture(colorDataParams, this.colorDataVector, this.heatTextureCache, precision);
|
|
266
265
|
};
|
|
267
266
|
return NonUniformHeatmapDrawingProvider;
|
|
268
267
|
}(BaseSeriesDrawingProvider_1.BaseSeriesDrawingProvider));
|
|
269
268
|
exports.NonUniformHeatmapDrawingProvider = NonUniformHeatmapDrawingProvider;
|
|
270
|
-
var getColorDataForTexture = function (params, _colorData) {
|
|
271
|
-
var xStartInd = params.xStartInd, textureWidth = params.textureWidth, xInc = params.xInc, yStartInd = params.yStartInd, textureHeight = params.textureHeight, yInc = params.yInc, zValues = params.zValues, webAssemblyContext = params.webAssemblyContext, colorMap = params.colorMap, opacity = params.opacity, horCellCount = params.horCellCount, vertCellCount = params.vertCellCount, horCellOffsets = params.horCellOffsets, vertCellOffsets = params.vertCellOffsets, colorMin = params.colorMin, colorMax = params.colorMax, arrayWidth = params.arrayWidth, arrayHeight = params.arrayHeight, fillValuesOutOfRange = params.fillValuesOutOfRange;
|
|
272
|
-
// const _colorData = new webAssemblyContext.UIntVector();
|
|
273
|
-
_colorData.resize(textureWidth * textureHeight, 0);
|
|
274
|
-
// const _colorData = Array.from(Array(textureWidth * textureHeight));
|
|
275
|
-
var yOffsetInd = 0;
|
|
276
|
-
var yCellEnd = vertCellOffsets[yOffsetInd];
|
|
277
|
-
var cachedColors = new Array(horCellCount);
|
|
278
|
-
var hasCachedColors = false;
|
|
279
|
-
var xCellIndex = xStartInd;
|
|
280
|
-
var yCellIndex = yStartInd;
|
|
281
|
-
var color;
|
|
282
|
-
for (var y = 0; y < textureHeight; y++) {
|
|
283
|
-
var xOffsetInd = 0;
|
|
284
|
-
var xCellEnd = horCellOffsets[xOffsetInd];
|
|
285
|
-
if (y > yCellEnd) {
|
|
286
|
-
// New cell - need to refill the cache
|
|
287
|
-
hasCachedColors = false;
|
|
288
|
-
// Get the end coord of the next cell and a color for it
|
|
289
|
-
yOffsetInd++;
|
|
290
|
-
yCellEnd = vertCellOffsets[yOffsetInd];
|
|
291
|
-
// If yCellEnd falls inside a pixel, reiterate and get the next color
|
|
292
|
-
var yDiff = y - yCellEnd;
|
|
293
|
-
if (yDiff > Number.EPSILON && Math.floor(yCellEnd) + 1 === y) {
|
|
294
|
-
y--;
|
|
295
|
-
continue;
|
|
296
|
-
}
|
|
297
|
-
}
|
|
298
|
-
if (hasCachedColors) {
|
|
299
|
-
// Get color cached on previous iteration
|
|
300
|
-
color = cachedColors[xOffsetInd];
|
|
301
|
-
}
|
|
302
|
-
else {
|
|
303
|
-
xCellIndex = xStartInd + xOffsetInd * xInc;
|
|
304
|
-
yCellIndex = yStartInd + yOffsetInd * yInc;
|
|
305
|
-
color = getColor(yCellIndex, xCellIndex, colorMap, opacity, zValues, webAssemblyContext, colorMin, colorMax, arrayWidth, arrayHeight, fillValuesOutOfRange);
|
|
306
|
-
// New cell - refill the cache
|
|
307
|
-
cachedColors[xOffsetInd] = color;
|
|
308
|
-
}
|
|
309
|
-
for (var x = 0; x < textureWidth; x++) {
|
|
310
|
-
if (x > xCellEnd) {
|
|
311
|
-
// Get the end coord of the next cell and a color for it
|
|
312
|
-
xOffsetInd++;
|
|
313
|
-
xCellEnd = horCellOffsets[xOffsetInd];
|
|
314
|
-
// If xCellEnd falls inside a pixel, reiterate and get the next color
|
|
315
|
-
var xDiff = x - xCellEnd;
|
|
316
|
-
if (xDiff > Number.EPSILON && Math.floor(xCellEnd) + 1 === x) {
|
|
317
|
-
x--;
|
|
318
|
-
continue;
|
|
319
|
-
}
|
|
320
|
-
if (hasCachedColors) {
|
|
321
|
-
// Get color cached on previous iteration
|
|
322
|
-
color = cachedColors[xOffsetInd];
|
|
323
|
-
}
|
|
324
|
-
else {
|
|
325
|
-
xCellIndex = xStartInd + xOffsetInd * xInc;
|
|
326
|
-
color = getColor(yCellIndex, xCellIndex, colorMap, opacity, zValues, webAssemblyContext, colorMin, colorMax, arrayWidth, arrayHeight, fillValuesOutOfRange);
|
|
327
|
-
cachedColors[xOffsetInd] = color;
|
|
328
|
-
}
|
|
329
|
-
}
|
|
330
|
-
// Fill a texture pixel
|
|
331
|
-
// _colorData[y * textureWidth + x] = color;
|
|
332
|
-
_colorData.set(y * textureWidth + x, color);
|
|
333
|
-
}
|
|
334
|
-
hasCachedColors = true;
|
|
335
|
-
}
|
|
336
|
-
return _colorData;
|
|
337
|
-
};
|
|
338
|
-
var getColor = function (yIndex, xIndex, colorPalette, opacity,
|
|
339
|
-
// zValues: SCRTDoubleVector,
|
|
340
|
-
zValues, webAssemblyContext, colorMin, colorMax, arrayWidth, arrayHeight, fillValuesOutOfRange) {
|
|
341
|
-
// TODO is this check needed?
|
|
342
|
-
if (yIndex >= arrayHeight || xIndex >= arrayWidth) {
|
|
343
|
-
// transparent
|
|
344
|
-
return 0;
|
|
345
|
-
}
|
|
346
|
-
// const zValue = zValues.get(yIndex * arrayWidth + xIndex);
|
|
347
|
-
var zValue = zValues[yIndex][xIndex];
|
|
348
|
-
var cellColor = getCellColor(zValue, colorPalette, colorMin, colorMax, fillValuesOutOfRange, webAssemblyContext);
|
|
349
|
-
return (0, colorUtil_1.uintArgbColorMultiplyOpacity)(cellColor, opacity);
|
|
350
|
-
};
|
|
351
|
-
/** @ignore */
|
|
352
|
-
var getCellColor = function (value, _colorMap, colorMin, colorMax, fillValuesOutOfRange, webAssemblyContext) {
|
|
353
|
-
if (isNaN(value)) {
|
|
354
|
-
// transparent
|
|
355
|
-
return 0;
|
|
356
|
-
}
|
|
357
|
-
// comment from the original C# code
|
|
358
|
-
// TODO move this to DataSeries.GetZAsDoubles(min, max) to avoid it here
|
|
359
|
-
if (fillValuesOutOfRange) {
|
|
360
|
-
// Clip to ColorMap.Min, Max
|
|
361
|
-
value = value < colorMin ? colorMin : value;
|
|
362
|
-
value = value > colorMax ? colorMax : value;
|
|
363
|
-
}
|
|
364
|
-
else if (value < colorMin || value > colorMax) {
|
|
365
|
-
// transparent
|
|
366
|
-
return 0;
|
|
367
|
-
}
|
|
368
|
-
var _scaleFactor = (precision - 1) / Math.abs(colorMax - colorMin);
|
|
369
|
-
var colorMapValue = (value - colorMin) * _scaleFactor;
|
|
370
|
-
// Round to the nearest integer
|
|
371
|
-
var colorIndex = Math.floor(colorMapValue + Math.sign(value) * 0.5);
|
|
372
|
-
colorIndex = webAssemblyContext.NumberUtil.Constrain(colorIndex, 0, _colorMap.length - 1);
|
|
373
|
-
return _colorMap[colorIndex];
|
|
374
|
-
};
|
|
375
|
-
// TODO configure precision
|
|
376
|
-
var createColorMap = function (gradientStops, precision) {
|
|
377
|
-
var colorMap = Array.from(Array(precision));
|
|
378
|
-
var count = gradientStops.length;
|
|
379
|
-
var first = gradientStops[0].offset;
|
|
380
|
-
var last = gradientStops[gradientStops.length - 1].offset;
|
|
381
|
-
var diff = last - first;
|
|
382
|
-
var change = diff / (precision - 1);
|
|
383
|
-
// let prevColor = ApplyOpacity(gradientStops[0].color, _opacity);
|
|
384
|
-
var prevColor = gradientStops[0].color;
|
|
385
|
-
var prevOffset = gradientStops[0].offset;
|
|
386
|
-
var nextColor = prevColor;
|
|
387
|
-
var nextOffset = prevOffset;
|
|
388
|
-
if (count > 1) {
|
|
389
|
-
// nextColor = ApplyOpacity(gradientStops[1].color, _opacity);
|
|
390
|
-
nextColor = gradientStops[1].color;
|
|
391
|
-
nextOffset = gradientStops[1].offset;
|
|
392
|
-
}
|
|
393
|
-
diff = nextOffset - prevOffset;
|
|
394
|
-
var offsetInd = 0;
|
|
395
|
-
for (var i = 0; i < precision; ++i) {
|
|
396
|
-
var offset = first + i * change;
|
|
397
|
-
if (offset >= nextOffset) {
|
|
398
|
-
offsetInd++;
|
|
399
|
-
prevOffset = nextOffset;
|
|
400
|
-
prevColor = nextColor;
|
|
401
|
-
if (offsetInd + 1 < count) {
|
|
402
|
-
// nextColor = ApplyOpacity(gradientStops[offsetInd + 1].color, _opacity);
|
|
403
|
-
nextColor = gradientStops[offsetInd + 1].color;
|
|
404
|
-
nextOffset = gradientStops[offsetInd + 1].offset;
|
|
405
|
-
}
|
|
406
|
-
diff = nextOffset - prevOffset;
|
|
407
|
-
}
|
|
408
|
-
var color = void 0;
|
|
409
|
-
if (prevColor === nextColor || diff <= Number.EPSILON) {
|
|
410
|
-
color = Number.parseInt((0, parseColor_1.parseColorToHexStringArgb)(nextColor), 16);
|
|
411
|
-
}
|
|
412
|
-
else {
|
|
413
|
-
var coef = (offset - prevOffset) / diff;
|
|
414
|
-
color = getInterpolatedColor(prevColor, nextColor, coef);
|
|
415
|
-
}
|
|
416
|
-
colorMap[i] = color;
|
|
417
|
-
}
|
|
418
|
-
return colorMap;
|
|
419
|
-
};
|
|
420
|
-
var getInterpolatedColor = function (htmlColor1, htmlColor2, coef) {
|
|
421
|
-
var color1 = (0, parseColor_1.parseColorToTArgb)(htmlColor1);
|
|
422
|
-
var color2 = (0, parseColor_1.parseColorToTArgb)(htmlColor2);
|
|
423
|
-
var a1 = color1.opacity;
|
|
424
|
-
var a2 = color2.opacity;
|
|
425
|
-
var r1 = color1.red;
|
|
426
|
-
var r2 = color2.red;
|
|
427
|
-
var g1 = color1.green;
|
|
428
|
-
var g2 = color2.green;
|
|
429
|
-
var b1 = color1.blue;
|
|
430
|
-
var b2 = color2.blue;
|
|
431
|
-
var r = r1 + Math.floor((r2 - r1) * coef);
|
|
432
|
-
var g = g1 + Math.floor((g2 - g1) * coef);
|
|
433
|
-
var b = b1 + Math.floor((b2 - b1) * coef);
|
|
434
|
-
var a = a1 + Math.floor((a2 - a1) * coef);
|
|
435
|
-
return Number.parseInt("0x" + (0, parseColor_1.toHex)(a) + (0, parseColor_1.toHex)(r) + (0, parseColor_1.toHex)(g) + (0, parseColor_1.toHex)(b), 16);
|
|
436
|
-
// return (a << 24) | (r << 16) | (g << 8) | b;
|
|
437
|
-
};
|
|
438
|
-
var calculateOffsets = function (heatmapRect, isVerticalChart, xCellSizes, yCellSizes, horStartInd, horCellCount, horInc, vertStartInd, vertCellCount, vertInc, seriesViewRect) {
|
|
439
|
-
// TODO can be optimized - no need to recalculate these offsets at every redraw
|
|
440
|
-
// TODO can be optimized for large heatmaps - skip cells that
|
|
441
|
-
// falls within a single pixel & count them for the iteration in ComputeColorMap()
|
|
442
|
-
// Find heatmap cells positions
|
|
443
|
-
var offsetX = heatmapRect.left < 0 ? -heatmapRect.left : 0;
|
|
444
|
-
var offsetY = heatmapRect.top < 0 ? -heatmapRect.top : 0;
|
|
445
|
-
if (isVerticalChart) {
|
|
446
|
-
// consider that heatmap texture is rotated
|
|
447
|
-
offsetX = heatmapRect.right > seriesViewRect.bottom ? heatmapRect.right - seriesViewRect.bottom : 0;
|
|
448
|
-
}
|
|
449
|
-
// Horizontal offsets == X offsets on texture, vertical offsets == Y offsets on texture
|
|
450
|
-
var horCellOffsets = calculateCellCoordinates(xCellSizes, heatmapRect.width, horStartInd, horCellCount, horInc, -offsetX);
|
|
451
|
-
var vertCellOffsets = calculateCellCoordinates(yCellSizes, heatmapRect.height, vertStartInd, vertCellCount, vertInc, -offsetY);
|
|
452
|
-
return { horCellOffsets: horCellOffsets, vertCellOffsets: vertCellOffsets };
|
|
453
|
-
};
|
|
454
|
-
/**
|
|
455
|
-
* Calculates absolute coordinates of the heatmap cells
|
|
456
|
-
* @param inputArr relative cell sizes
|
|
457
|
-
* @param dimension texture size
|
|
458
|
-
* @param startInd
|
|
459
|
-
* @param count
|
|
460
|
-
* @param inc
|
|
461
|
-
* @param offset
|
|
462
|
-
* @returns
|
|
463
|
-
*/
|
|
464
|
-
var calculateCellCoordinates = function (inputArr, dimension, startInd, count, inc, offset) {
|
|
465
|
-
// Find a stretch coef
|
|
466
|
-
var sum = 0;
|
|
467
|
-
var ind = startInd;
|
|
468
|
-
for (var i = 0; i < count; i++, ind += inc) {
|
|
469
|
-
sum += inputArr[ind];
|
|
470
|
-
}
|
|
471
|
-
var coef = 1 / sum;
|
|
472
|
-
var offsets = new Array(count);
|
|
473
|
-
var length = offset;
|
|
474
|
-
for (var i = 0; i < count - 1; i++) {
|
|
475
|
-
var index = i * inc + startInd;
|
|
476
|
-
var cellSize = inputArr[index] * coef * dimension;
|
|
477
|
-
length = length + cellSize;
|
|
478
|
-
offsets[i] = length;
|
|
479
|
-
}
|
|
480
|
-
offsets[count - 1] = dimension + offset;
|
|
481
|
-
return offsets;
|
|
482
|
-
};
|
|
483
|
-
var calculateHeatmapTexture = function (colorDataParams, intVector, heatTextureCache) {
|
|
484
|
-
var textureWidth = colorDataParams.textureWidth, textureHeight = colorDataParams.textureHeight, webAssemblyContext = colorDataParams.webAssemblyContext, useInterpolation = colorDataParams.useInterpolation;
|
|
485
|
-
// calculate colors from zValues
|
|
486
|
-
// per pixel colors
|
|
487
|
-
var colorArray = getColorDataForTexture(colorDataParams, intVector);
|
|
488
|
-
// create and fill texture
|
|
489
|
-
var texture = heatTextureCache.create(textureWidth, textureHeight, webAssemblyContext.eTSRTextureFormat.TSR_TEXTUREFORMAT_A8B8G8R8);
|
|
490
|
-
webAssemblyContext.SCRTSetTextureLinearSamplerEnabled(texture, useInterpolation);
|
|
491
|
-
webAssemblyContext.SCRTFillTextureAbgr(texture, textureWidth, textureHeight, colorArray);
|
|
492
|
-
return texture;
|
|
493
|
-
};
|
|
@@ -19,6 +19,7 @@ export declare class OhlcSeriesDrawingProvider extends BaseSeriesDrawingProvider
|
|
|
19
19
|
private brushUpCache;
|
|
20
20
|
private brushDownCache;
|
|
21
21
|
private drawingMode;
|
|
22
|
+
private args;
|
|
22
23
|
/**
|
|
23
24
|
* Creates an instance of the {@link OhlcSeriesDrawingProvider}
|
|
24
25
|
* @param webAssemblyContext The {@link TSciChart | SciChart 2D WebAssembly Context} containing native methods and
|
|
@@ -43,6 +43,7 @@ var OhlcSeriesDrawingProvider = /** @class */ (function (_super) {
|
|
|
43
43
|
var _this = _super.call(this, webAssemblyContext, parentSeries) || this;
|
|
44
44
|
_this.drawingMode = drawingMode;
|
|
45
45
|
_this.nativeDrawingProvider = new _this.webAssemblyContext.SCRTCandlestickSeriesDrawingProvider();
|
|
46
|
+
_this.args = new _this.webAssemblyContext.SCRTOhlcDrawingParams();
|
|
46
47
|
var strokeThickness = parentSeries.strokeThickness, strokeUp = parentSeries.strokeUp, strokeDown = parentSeries.strokeDown, opacity = parentSeries.opacity;
|
|
47
48
|
var candlestickSeries = parentSeries;
|
|
48
49
|
_this.strokeUpPenCache = new Pen2DCache_1.Pen2DCache(webAssemblyContext);
|
|
@@ -95,47 +96,70 @@ var OhlcSeriesDrawingProvider = /** @class */ (function (_super) {
|
|
|
95
96
|
* @inheritDoc
|
|
96
97
|
*/
|
|
97
98
|
OhlcSeriesDrawingProvider.prototype.draw = function (renderContext, renderPassData) {
|
|
99
|
+
var _a;
|
|
98
100
|
var pointSeries = renderPassData.pointSeries;
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
if (!brushUp || !brushDown) {
|
|
106
|
-
return;
|
|
107
|
-
}
|
|
108
|
-
args.SetBrushes(brushUp, brushDown);
|
|
109
|
-
}
|
|
110
|
-
var strokeUpPen = (0, Pen2DCache_1.getScrtPenFromCache)(this.strokeUpPenCache);
|
|
111
|
-
var strokeDownPen = (0, Pen2DCache_1.getScrtPenFromCache)(this.strokeDownPenCache);
|
|
112
|
-
// OHLC and Candle both require stroke up, down
|
|
113
|
-
if (!strokeUpPen || !strokeDownPen) {
|
|
101
|
+
this.args.Reset();
|
|
102
|
+
// Candles only requires brush up, down
|
|
103
|
+
if (this.drawingMode === EOhlcDrawingMode.Candles) {
|
|
104
|
+
var brushUp = (0, BrushCache_1.getScrtBrushFromCache)(this.brushUpCache);
|
|
105
|
+
var brushDown = (0, BrushCache_1.getScrtBrushFromCache)(this.brushDownCache);
|
|
106
|
+
if (!brushUp || !brushDown) {
|
|
114
107
|
return;
|
|
115
108
|
}
|
|
116
|
-
args.
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
109
|
+
this.args.SetBrushes(brushUp, brushDown);
|
|
110
|
+
}
|
|
111
|
+
var strokeUpPen = (0, Pen2DCache_1.getScrtPenFromCache)(this.strokeUpPenCache);
|
|
112
|
+
var strokeDownPen = (0, Pen2DCache_1.getScrtPenFromCache)(this.strokeDownPenCache);
|
|
113
|
+
// OHLC and Candle both require stroke up, down
|
|
114
|
+
if (!strokeUpPen || !strokeDownPen) {
|
|
115
|
+
return;
|
|
116
|
+
}
|
|
117
|
+
this.args.SetPens(strokeUpPen, strokeDownPen);
|
|
118
|
+
// Paletting per point
|
|
119
|
+
var neutralColor = "#ffffffff";
|
|
120
|
+
_super.prototype.applyStrokeFillPaletting.call(this, neutralColor, undefined, neutralColor, undefined, this.parentSeries.opacity);
|
|
121
|
+
this.args.SetPalettedColors(this.palettingState.palettedColors);
|
|
122
|
+
this.args.forceShaderMethod = true;
|
|
123
|
+
this.args.verticalChart = renderPassData.isVerticalChart;
|
|
124
|
+
this.args.candleWidth = this.parentSeries.getDataPointWidth(renderPassData.xCoordinateCalculator, this.parentSeries.dataPointWidth);
|
|
125
|
+
this.args.drawAsOhlc = this.drawingMode === EOhlcDrawingMode.Ohlc;
|
|
126
|
+
var nativeContext = renderContext.getNativeContext();
|
|
127
|
+
var viewRect = this.parentSeries.parentSurface.seriesViewRect;
|
|
128
|
+
var dataSeries = this.parentSeries.dataSeries;
|
|
129
|
+
var isCategoryAxis = renderPassData.xCoordinateCalculator.isCategoryCoordinateCalculator;
|
|
130
|
+
var xValues = pointSeries.xValues;
|
|
131
|
+
var openValues = pointSeries.openValues;
|
|
132
|
+
var highValues = pointSeries.highValues;
|
|
133
|
+
var lowValues = pointSeries.lowValues;
|
|
134
|
+
var closeValues = pointSeries.closeValues;
|
|
135
|
+
if (!pointSeries.resampled && ((_a = renderPassData.indexRange) === null || _a === void 0 ? void 0 : _a.diff) > 0) {
|
|
136
|
+
this.args.count = Math.min(renderPassData.indexRange.diff + 1, closeValues.size());
|
|
137
|
+
this.args.startIndex = renderPassData.indexRange.min;
|
|
136
138
|
}
|
|
137
|
-
|
|
138
|
-
args.
|
|
139
|
+
else {
|
|
140
|
+
this.args.count = closeValues.size();
|
|
141
|
+
}
|
|
142
|
+
var _b = this.parentSeries.dataSeries, fifoCapacity = _b.fifoCapacity, fifoSweeping = _b.fifoSweeping, fifoSweepingGap = _b.fifoSweepingGap;
|
|
143
|
+
var fifoStartIndex = pointSeries.fifoStartIndex;
|
|
144
|
+
if (fifoSweeping && fifoCapacity === this.parentSeries.dataSeries.count()) {
|
|
145
|
+
this.args.count = fifoStartIndex;
|
|
146
|
+
}
|
|
147
|
+
// let sx = "";
|
|
148
|
+
// let sy = "";
|
|
149
|
+
// for (let i = 0; i < closeValues.size(); i++) {
|
|
150
|
+
// sx += pointSeries.indexes.get(i) + ",";
|
|
151
|
+
// sy += closeValues.get(i).toFixed(2) + ",";
|
|
152
|
+
// }
|
|
153
|
+
// console.log(sx);
|
|
154
|
+
// console.log(sy);
|
|
155
|
+
var xDrawValues = isCategoryAxis ? pointSeries.indexes : xValues;
|
|
156
|
+
this.nativeDrawingProvider.DrawPointsVec(nativeContext, xDrawValues, openValues, highValues, lowValues, closeValues, renderPassData.xCoordinateCalculator.nativeCalculator, renderPassData.yCoordinateCalculator.nativeCalculator, this.args);
|
|
157
|
+
if (fifoSweeping && fifoCapacity === this.parentSeries.dataSeries.count()) {
|
|
158
|
+
this.args.startIndex = Math.min(closeValues.size(), fifoStartIndex + fifoSweepingGap);
|
|
159
|
+
this.args.count = Math.max(0, closeValues.size() - fifoStartIndex - fifoSweepingGap);
|
|
160
|
+
if (this.args.count > 0) {
|
|
161
|
+
this.nativeDrawingProvider.DrawPointsVec(nativeContext, xDrawValues, openValues, highValues, lowValues, closeValues, renderPassData.xCoordinateCalculator.nativeCalculator, renderPassData.yCoordinateCalculator.nativeCalculator, this.args);
|
|
162
|
+
}
|
|
139
163
|
}
|
|
140
164
|
};
|
|
141
165
|
/**
|
|
@@ -147,6 +171,7 @@ var OhlcSeriesDrawingProvider = /** @class */ (function (_super) {
|
|
|
147
171
|
this.brushUpCache = (0, Deleter_1.deleteSafe)(this.brushUpCache);
|
|
148
172
|
this.brushDownCache = (0, Deleter_1.deleteSafe)(this.brushDownCache);
|
|
149
173
|
this.nativeDrawingProvider = (0, Deleter_1.deleteSafe)(this.nativeDrawingProvider);
|
|
174
|
+
this.args = (0, Deleter_1.deleteSafe)(this.args);
|
|
150
175
|
_super.prototype.delete.call(this);
|
|
151
176
|
};
|
|
152
177
|
return OhlcSeriesDrawingProvider;
|
|
@@ -54,7 +54,7 @@ var PointMarkerDrawingProvider = /** @class */ (function (_super) {
|
|
|
54
54
|
* @inheritDoc
|
|
55
55
|
*/
|
|
56
56
|
PointMarkerDrawingProvider.prototype.draw = function (renderContext, renderPassData) {
|
|
57
|
-
var _a;
|
|
57
|
+
var _a, _b;
|
|
58
58
|
var pointMarker = (_a = this.getProperties(this.parentSeries)) === null || _a === void 0 ? void 0 : _a.pointMarker;
|
|
59
59
|
if (pointMarker === undefined) {
|
|
60
60
|
return;
|
|
@@ -84,18 +84,45 @@ var PointMarkerDrawingProvider = /** @class */ (function (_super) {
|
|
|
84
84
|
}
|
|
85
85
|
}
|
|
86
86
|
this.args.Reset();
|
|
87
|
-
this.args.count = yValues.size();
|
|
88
87
|
this.args.verticalChart = renderPassData.isVerticalChart;
|
|
89
88
|
this.args.forceShaderMethod = true;
|
|
90
89
|
this.args.SetSpriteTexture(spriteTexture.getTexture());
|
|
91
90
|
if (strokeMaskTexture) {
|
|
92
91
|
this.args.SetStrokeMask(strokeMaskTexture.getTexture());
|
|
93
92
|
}
|
|
93
|
+
var _c = this.parentSeries.dataSeries, fifoCapacity = _c.fifoCapacity, fifoSweeping = _c.fifoSweeping, fifoSweepingGap = _c.fifoSweepingGap;
|
|
94
|
+
var fifoStartIndex = pointSeries.fifoStartIndex;
|
|
95
|
+
if (pointMarker.lastPointOnly && yValues.size() > 0) {
|
|
96
|
+
this.args.count = 1;
|
|
97
|
+
this.args.startIndex =
|
|
98
|
+
fifoSweeping && this.parentSeries.dataSeries.count() === fifoCapacity
|
|
99
|
+
? fifoStartIndex - 1
|
|
100
|
+
: yValues.size() - 1;
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
if (!pointSeries.resampled && ((_b = renderPassData.indexRange) === null || _b === void 0 ? void 0 : _b.diff) > 0) {
|
|
104
|
+
this.args.count = Math.min(renderPassData.indexRange.diff + 1, yValues.size());
|
|
105
|
+
this.args.startIndex = renderPassData.indexRange.min;
|
|
106
|
+
}
|
|
107
|
+
else {
|
|
108
|
+
this.args.count = yValues.size();
|
|
109
|
+
}
|
|
110
|
+
if (fifoSweeping && fifoCapacity === this.parentSeries.dataSeries.count()) {
|
|
111
|
+
this.args.count = fifoStartIndex;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
94
114
|
// Paletting per point
|
|
95
|
-
|
|
115
|
+
this.applyStrokeFillPaletting(pointMarker.stroke, undefined, pointMarker.fill, undefined, this.parentSeries.opacity);
|
|
96
116
|
this.args.SetPalettedColors(this.palettingState.palettedColors);
|
|
97
117
|
var nativeContext = renderContext.getNativeContext();
|
|
98
118
|
this.drawPoints(nativeContext, isCategoryAxis ? pointSeries.indexes : xValues, yValues, renderPassData.xCoordinateCalculator.nativeCalculator, renderPassData.yCoordinateCalculator.nativeCalculator, this.args, this.parentSeries.parentSurface.seriesViewRect);
|
|
119
|
+
if (fifoSweeping && fifoCapacity === this.parentSeries.dataSeries.count() && !pointMarker.lastPointOnly) {
|
|
120
|
+
this.args.startIndex = Math.min(yValues.size(), fifoStartIndex + fifoSweepingGap);
|
|
121
|
+
this.args.count = Math.max(0, yValues.size() - fifoStartIndex - fifoSweepingGap);
|
|
122
|
+
if (this.args.count > 0) {
|
|
123
|
+
this.drawPoints(nativeContext, isCategoryAxis ? pointSeries.indexes : xValues, yValues, renderPassData.xCoordinateCalculator.nativeCalculator, renderPassData.yCoordinateCalculator.nativeCalculator, this.args, this.parentSeries.parentSurface.seriesViewRect);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
99
126
|
};
|
|
100
127
|
/**
|
|
101
128
|
* @inheritDoc
|
|
@@ -59,7 +59,7 @@ var UniformHeatmapDrawingProvider = /** @class */ (function (_super) {
|
|
|
59
59
|
var recreatePalette = propertyName === constants_1.PROPERTY.COLOR_MAP ||
|
|
60
60
|
propertyName.includes(BaseHeatmapRenderableSeries_1.COLOR_MAP_PREFIX) ||
|
|
61
61
|
propertyName === constants_1.PROPERTY.OPACITY;
|
|
62
|
-
var recreateHeat = propertyName === constants_1.PROPERTY.DATA_SERIES || constants_1.PROPERTY.USE_LINEAR_TEXTURE_FILTERING;
|
|
62
|
+
var recreateHeat = propertyName === constants_1.PROPERTY.DATA_SERIES || propertyName === constants_1.PROPERTY.USE_LINEAR_TEXTURE_FILTERING;
|
|
63
63
|
if (recreatePalette) {
|
|
64
64
|
this.recreatePalette();
|
|
65
65
|
}
|
|
@@ -75,6 +75,9 @@ var UniformHeatmapDrawingProvider = /** @class */ (function (_super) {
|
|
|
75
75
|
}
|
|
76
76
|
}
|
|
77
77
|
};
|
|
78
|
+
UniformHeatmapDrawingProvider.prototype.seriesHasDataChanges = function () {
|
|
79
|
+
this.onSeriesPropertyChange(constants_1.PROPERTY.DATA_SERIES);
|
|
80
|
+
};
|
|
78
81
|
/**
|
|
79
82
|
* @inheritDoc
|
|
80
83
|
*/
|
|
@@ -74,8 +74,6 @@ export declare class FastBubbleRenderableSeries extends BaseRenderableSeries {
|
|
|
74
74
|
* @param pointIndex
|
|
75
75
|
*/
|
|
76
76
|
getBubbleDiameter(pointIndex: number): number;
|
|
77
|
-
/** @inheritDoc */
|
|
78
|
-
delete(): void;
|
|
79
77
|
/**
|
|
80
78
|
* Returns the {@link XyyDataSeries.getNativeZValues} for the associated {@link dataSeries}
|
|
81
79
|
*/
|
|
@@ -124,10 +124,6 @@ var FastBubbleRenderableSeries = /** @class */ (function (_super) {
|
|
|
124
124
|
FastBubbleRenderableSeries.prototype.getBubbleDiameter = function (pointIndex) {
|
|
125
125
|
return this.dataSeries.getNativeZValues().get(pointIndex);
|
|
126
126
|
};
|
|
127
|
-
/** @inheritDoc */
|
|
128
|
-
FastBubbleRenderableSeries.prototype.delete = function () {
|
|
129
|
-
_super.prototype.delete.call(this);
|
|
130
|
-
};
|
|
131
127
|
/**
|
|
132
128
|
* Returns the {@link XyyDataSeries.getNativeZValues} for the associated {@link dataSeries}
|
|
133
129
|
*/
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ESeriesType } from "../../../types/SeriesType";
|
|
2
2
|
import { TSciChart } from "../../../types/TSciChart";
|
|
3
|
+
import { ResamplingParams } from "../../Numerics/Resamplers/ResamplingParams";
|
|
3
4
|
import { BaseRenderableSeries } from "./BaseRenderableSeries";
|
|
4
5
|
import { ITextDataLabelProviderOptions } from "./DataLabels/TextDataLabelProvider";
|
|
5
6
|
import { IHitTestProvider } from "./HitTest/IHitTestProvider";
|
|
@@ -13,5 +14,7 @@ export interface ITextRenderableSeriesOptions extends IBaseRenderableSeriesOptio
|
|
|
13
14
|
export declare class FastTextRenderableSeries extends BaseRenderableSeries {
|
|
14
15
|
type: ESeriesType;
|
|
15
16
|
constructor(webAssemblyContext: TSciChart, options?: ITextRenderableSeriesOptions);
|
|
17
|
+
/** @inheritDoc */
|
|
18
|
+
needsResampling(rp: ResamplingParams): boolean;
|
|
16
19
|
protected newHitTestProvider(): IHitTestProvider;
|
|
17
20
|
}
|
|
@@ -17,6 +17,7 @@ var __extends = (this && this.__extends) || (function () {
|
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
exports.FastTextRenderableSeries = void 0;
|
|
19
19
|
var SeriesType_1 = require("../../../types/SeriesType");
|
|
20
|
+
var ResamplingMode_1 = require("../../Numerics/Resamplers/ResamplingMode");
|
|
20
21
|
var BaseRenderableSeries_1 = require("./BaseRenderableSeries");
|
|
21
22
|
var TextDataLabelProvider_1 = require("./DataLabels/TextDataLabelProvider");
|
|
22
23
|
var PointMarkerDrawingProvider_1 = require("./DrawingProviders/PointMarkerDrawingProvider");
|
|
@@ -37,6 +38,15 @@ var FastTextRenderableSeries = /** @class */ (function (_super) {
|
|
|
37
38
|
}
|
|
38
39
|
return _this;
|
|
39
40
|
}
|
|
41
|
+
/** @inheritDoc */
|
|
42
|
+
FastTextRenderableSeries.prototype.needsResampling = function (rp) {
|
|
43
|
+
if (this.dataSeries.fifoCapacity) {
|
|
44
|
+
rp.resamplingMode = ResamplingMode_1.EResamplingMode.None;
|
|
45
|
+
this.resamplerHelper.resetAndFillBasicNativeArgs(rp, this.getNativeXValues());
|
|
46
|
+
return true;
|
|
47
|
+
}
|
|
48
|
+
return false;
|
|
49
|
+
};
|
|
40
50
|
FastTextRenderableSeries.prototype.newHitTestProvider = function () {
|
|
41
51
|
return new TextSeriesHitTestProvider_1.TextSeriesHitTestProvider(this, this.webAssemblyContext);
|
|
42
52
|
};
|
|
@@ -9,6 +9,10 @@ export declare class BubbleSeriesHitTestProvider extends BaseHitTestProvider<Fas
|
|
|
9
9
|
* @inheritDoc
|
|
10
10
|
*/
|
|
11
11
|
hitTest(x: number, y: number, hitTestRadius?: number): HitTestInfo;
|
|
12
|
+
/**
|
|
13
|
+
* @inheritDoc
|
|
14
|
+
*/
|
|
15
|
+
hitTestDataPoint(x: number, y: number, hitTestRadius?: number): HitTestInfo;
|
|
12
16
|
/**
|
|
13
17
|
* @inheritDoc
|
|
14
18
|
*/
|
|
@@ -77,6 +77,13 @@ var BubbleSeriesHitTestProvider = /** @class */ (function (_super) {
|
|
|
77
77
|
}
|
|
78
78
|
return hitTestInfo;
|
|
79
79
|
};
|
|
80
|
+
/**
|
|
81
|
+
* @inheritDoc
|
|
82
|
+
*/
|
|
83
|
+
BubbleSeriesHitTestProvider.prototype.hitTestDataPoint = function (x, y, hitTestRadius) {
|
|
84
|
+
if (hitTestRadius === void 0) { hitTestRadius = BaseHitTestProvider_1.BaseHitTestProvider.DEFAULT_HIT_TEST_RADIUS; }
|
|
85
|
+
return this.hitTest(x, y, hitTestRadius);
|
|
86
|
+
};
|
|
80
87
|
/**
|
|
81
88
|
* @inheritDoc
|
|
82
89
|
*/
|
|
@@ -10,6 +10,10 @@ export declare class HitTestInfo {
|
|
|
10
10
|
* The default empty {@link HitTestInfo} instance
|
|
11
11
|
*/
|
|
12
12
|
static empty(): HitTestInfo;
|
|
13
|
+
/**
|
|
14
|
+
* Euclidean distance between the hitTestPoint and the nearest data-point
|
|
15
|
+
*/
|
|
16
|
+
getEuclideanDistance(): number;
|
|
13
17
|
/**
|
|
14
18
|
* Gets the associated series that this {@link HitTestInfo} was generated by
|
|
15
19
|
*/
|
|
@@ -16,6 +16,15 @@ var HitTestInfo = /** @class */ (function () {
|
|
|
16
16
|
HitTestInfo.empty = function () {
|
|
17
17
|
return new HitTestInfo(undefined, true);
|
|
18
18
|
};
|
|
19
|
+
/**
|
|
20
|
+
* Euclidean distance between the hitTestPoint and the nearest data-point
|
|
21
|
+
*/
|
|
22
|
+
HitTestInfo.prototype.getEuclideanDistance = function () {
|
|
23
|
+
var _a, _b;
|
|
24
|
+
var dx = ((_a = this.hitTestPoint) === null || _a === void 0 ? void 0 : _a.x) - this.xCoord;
|
|
25
|
+
var dy = ((_b = this.hitTestPoint) === null || _b === void 0 ? void 0 : _b.y) - this.yCoord;
|
|
26
|
+
return Math.sqrt(dx * dx + dy * dy);
|
|
27
|
+
};
|
|
19
28
|
return HitTestInfo;
|
|
20
29
|
}());
|
|
21
30
|
exports.HitTestInfo = HitTestInfo;
|
|
@@ -5,6 +5,7 @@ import { PropertyChangedEventArgs } from "../../../Core/PropertyChangedEventArgs
|
|
|
5
5
|
import { EShaderEffectType } from "../../../types/ShaderEffectType";
|
|
6
6
|
import { SCRTSeriesEffect, TSciChart } from "../../../types/TSciChart";
|
|
7
7
|
import { IDeletable } from "../../../Core/IDeletable";
|
|
8
|
+
import { DeletableEntity } from "../../../Core/DeletableEntity";
|
|
8
9
|
export interface IShaderEffectOptions {
|
|
9
10
|
intensity?: number;
|
|
10
11
|
range?: number;
|
|
@@ -15,13 +16,13 @@ export interface IShaderEffectOptions {
|
|
|
15
16
|
* A {@link ShaderEffect} can be applied to a {@link BaseRenderableSeries | RenderableSeries} via the
|
|
16
17
|
* {@link BaseRenderableSeries.effect} property. The effect modifies the render output of the chart type.
|
|
17
18
|
*/
|
|
18
|
-
export declare abstract class ShaderEffect implements IDeletable {
|
|
19
|
+
export declare abstract class ShaderEffect extends DeletableEntity implements IDeletable {
|
|
19
20
|
abstract readonly type: EShaderEffectType;
|
|
20
21
|
/**
|
|
21
22
|
* Event handler for when properties change, signalling that the parent {@link SciChartSurface} needs to redraw
|
|
22
23
|
*/
|
|
23
24
|
propertyChanged: EventHandler<PropertyChangedEventArgs>;
|
|
24
|
-
private
|
|
25
|
+
private webAssemblyContext;
|
|
25
26
|
private nativeEffect;
|
|
26
27
|
private offsetProperty;
|
|
27
28
|
private colorProperty;
|