scichart 2.0.2228 → 2.1.0-beta.40

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.
Files changed (179) hide show
  1. package/Charting/ChartModifiers/DataPointSelectionModifier.js +0 -1
  2. package/Charting/Drawing/WebGlRenderContext2D.d.ts +1 -0
  3. package/Charting/Drawing/WebGlRenderContext2D.js +4 -1
  4. package/Charting/Model/BaseDataSeries.d.ts +42 -15
  5. package/Charting/Model/BaseDataSeries.js +77 -28
  6. package/Charting/Model/BaseHeatmapDataSeries.d.ts +31 -23
  7. package/Charting/Model/BaseHeatmapDataSeries.js +45 -18
  8. package/Charting/Model/DataDistributionCalculator/DataDistributionCalculator.d.ts +23 -0
  9. package/Charting/Model/DataDistributionCalculator/DataDistributionCalculator.js +122 -0
  10. package/Charting/Model/DataDistributionCalculator/IDataDistributionCalculator.d.ts +57 -0
  11. package/Charting/Model/DataDistributionCalculator/IDataDistributionCalculator.js +2 -0
  12. package/Charting/Model/Filters/OhlcFilterBase.d.ts +2 -2
  13. package/Charting/Model/Filters/XyFilterBase.d.ts +3 -3
  14. package/Charting/Model/Filters/XyMovingAverageFilter.js +1 -1
  15. package/Charting/Model/Filters/XyyFilterBase.d.ts +4 -4
  16. package/Charting/Model/Filters/XyzFilterBase.d.ts +4 -4
  17. package/Charting/Model/IDataSeries.d.ts +37 -5
  18. package/Charting/Model/OhlcDataSeries.d.ts +12 -11
  19. package/Charting/Model/OhlcDataSeries.js +37 -34
  20. package/Charting/Model/PointSeries/BasePointSeriesResampled.d.ts +21 -0
  21. package/Charting/Model/PointSeries/BasePointSeriesResampled.js +56 -0
  22. package/Charting/Model/PointSeries/BasePointSeriesWrapped.d.ts +14 -0
  23. package/Charting/Model/PointSeries/BasePointSeriesWrapped.js +23 -0
  24. package/Charting/Model/PointSeries/IPointSeries.d.ts +31 -0
  25. package/Charting/Model/PointSeries/IPointSeries.js +2 -0
  26. package/Charting/Model/PointSeries/OhlcPointSeriesResampled.d.ts +13 -0
  27. package/Charting/Model/PointSeries/OhlcPointSeriesResampled.js +59 -0
  28. package/Charting/Model/PointSeries/OhlcPointSeriesWrapped.d.ts +11 -0
  29. package/Charting/Model/PointSeries/OhlcPointSeriesWrapped.js +32 -0
  30. package/Charting/Model/PointSeries/XyPointSeriesResampled.d.ts +7 -0
  31. package/Charting/Model/PointSeries/XyPointSeriesResampled.js +27 -0
  32. package/Charting/Model/PointSeries/XyPointSeriesWrapped.d.ts +6 -0
  33. package/Charting/Model/PointSeries/XyPointSeriesWrapped.js +27 -0
  34. package/Charting/Model/PointSeries/XyyPointSeriesResampled.d.ts +10 -0
  35. package/Charting/Model/PointSeries/XyyPointSeriesResampled.js +48 -0
  36. package/Charting/Model/PointSeries/XyyPointSeriesWrapped.d.ts +8 -0
  37. package/Charting/Model/PointSeries/XyyPointSeriesWrapped.js +29 -0
  38. package/Charting/Model/PointSeries/XyzPointSeriesWrapped.d.ts +8 -0
  39. package/Charting/Model/PointSeries/XyzPointSeriesWrapped.js +29 -0
  40. package/Charting/Model/XyDataSeries.d.ts +3 -2
  41. package/Charting/Model/XyDataSeries.js +22 -22
  42. package/Charting/Model/XyyDataSeries.d.ts +5 -5
  43. package/Charting/Model/XyyDataSeries.js +24 -21
  44. package/Charting/Model/XyzDataSeries.d.ts +5 -5
  45. package/Charting/Model/XyzDataSeries.js +24 -21
  46. package/Charting/Numerics/CoordinateCalculators/CategoryCoordinateCalculator.d.ts +2 -2
  47. package/Charting/Numerics/CoordinateCalculators/FlippedCategoryCoordinateCalculator.d.ts +2 -2
  48. package/Charting/Numerics/CoordinateCalculators/FlippedNumericCoordinateCalculator.d.ts +2 -1
  49. package/Charting/Numerics/CoordinateCalculators/FlippedNumericCoordinateCalculator.js +6 -2
  50. package/Charting/Numerics/CoordinateCalculators/NumericCoordinateCalculator.d.ts +2 -1
  51. package/Charting/Numerics/CoordinateCalculators/NumericCoordinateCalculator.js +6 -2
  52. package/Charting/Numerics/Resamplers/ExtremeResamplerHelper.d.ts +54 -0
  53. package/Charting/Numerics/Resamplers/ExtremeResamplerHelper.js +232 -0
  54. package/Charting/Numerics/Resamplers/ResamplingMode.d.ts +37 -0
  55. package/Charting/Numerics/Resamplers/ResamplingMode.js +41 -0
  56. package/Charting/Numerics/Resamplers/ResamplingParams.d.ts +39 -0
  57. package/Charting/Numerics/Resamplers/ResamplingParams.js +52 -0
  58. package/Charting/Services/RenderPassData.d.ts +6 -1
  59. package/Charting/Services/RenderPassData.js +5 -1
  60. package/Charting/Services/RenderPassInfo.d.ts +18 -0
  61. package/Charting/Services/RenderPassInfo.js +14 -0
  62. package/Charting/Services/SciChartRenderer.d.ts +14 -1
  63. package/Charting/Services/SciChartRenderer.js +122 -31
  64. package/Charting/Visuals/Axis/AxisCore.d.ts +11 -0
  65. package/Charting/Visuals/Axis/AxisCore.js +39 -18
  66. package/Charting/Visuals/Axis/AxisRenderer.d.ts +1 -0
  67. package/Charting/Visuals/Axis/AxisRenderer.js +6 -6
  68. package/Charting/Visuals/Axis/IAxisCoreOptions.d.ts +5 -0
  69. package/Charting/Visuals/Axis/NumericAxis.js +2 -2
  70. package/Charting/Visuals/Axis/constants.d.ts +1 -0
  71. package/Charting/Visuals/Axis/constants.js +1 -0
  72. package/Charting/Visuals/RenderableSeries/Animations/FadeAnimation.d.ts +2 -2
  73. package/Charting/Visuals/RenderableSeries/Animations/ScaleAnimation.d.ts +2 -2
  74. package/Charting/Visuals/RenderableSeries/Animations/SeriesAnimation.d.ts +3 -3
  75. package/Charting/Visuals/RenderableSeries/Animations/SweepAnimation.d.ts +2 -2
  76. package/Charting/Visuals/RenderableSeries/Animations/WaveAnimation.d.ts +2 -2
  77. package/Charting/Visuals/RenderableSeries/Animations/animationHelpers.d.ts +6 -6
  78. package/Charting/Visuals/RenderableSeries/Animations/animationHelpers.js +2 -2
  79. package/Charting/Visuals/RenderableSeries/BaseBandRenderableSeries.d.ts +9 -2
  80. package/Charting/Visuals/RenderableSeries/BaseBandRenderableSeries.js +45 -1
  81. package/Charting/Visuals/RenderableSeries/BaseLineRenderableSeries.d.ts +1 -0
  82. package/Charting/Visuals/RenderableSeries/BaseLineRenderableSeries.js +1 -0
  83. package/Charting/Visuals/RenderableSeries/BaseMountainRenderableSeries.d.ts +1 -0
  84. package/Charting/Visuals/RenderableSeries/BaseMountainRenderableSeries.js +1 -0
  85. package/Charting/Visuals/RenderableSeries/BaseOhlcRenderableSeries.d.ts +12 -5
  86. package/Charting/Visuals/RenderableSeries/BaseOhlcRenderableSeries.js +59 -0
  87. package/Charting/Visuals/RenderableSeries/BaseRenderableSeries.d.ts +40 -5
  88. package/Charting/Visuals/RenderableSeries/BaseRenderableSeries.js +114 -10
  89. package/Charting/Visuals/RenderableSeries/BaseStackedCollection.d.ts +36 -4
  90. package/Charting/Visuals/RenderableSeries/BaseStackedCollection.js +51 -3
  91. package/Charting/Visuals/RenderableSeries/BaseStackedRenderableSeries.d.ts +38 -4
  92. package/Charting/Visuals/RenderableSeries/BaseStackedRenderableSeries.js +54 -3
  93. package/Charting/Visuals/RenderableSeries/DrawingProviders/BandSeriesDrawingProvider.d.ts +1 -1
  94. package/Charting/Visuals/RenderableSeries/DrawingProviders/BandSeriesDrawingProvider.js +8 -14
  95. package/Charting/Visuals/RenderableSeries/DrawingProviders/BaseSeriesDrawingProvider.js +4 -3
  96. package/Charting/Visuals/RenderableSeries/DrawingProviders/BubbleSeriesDrawingProvider.js +5 -11
  97. package/Charting/Visuals/RenderableSeries/DrawingProviders/ColumnSeriesDrawingProvider.js +4 -11
  98. package/Charting/Visuals/RenderableSeries/DrawingProviders/LineSeriesDrawingProvider.d.ts +2 -1
  99. package/Charting/Visuals/RenderableSeries/DrawingProviders/LineSeriesDrawingProvider.js +17 -21
  100. package/Charting/Visuals/RenderableSeries/DrawingProviders/MountainSeriesDrawingProvider.js +6 -12
  101. package/Charting/Visuals/RenderableSeries/DrawingProviders/OhlcSeriesDrawingProvider.js +9 -15
  102. package/Charting/Visuals/RenderableSeries/DrawingProviders/PointMarkerDrawingProvider.d.ts +4 -3
  103. package/Charting/Visuals/RenderableSeries/DrawingProviders/PointMarkerDrawingProvider.js +16 -21
  104. package/Charting/Visuals/RenderableSeries/DrawingProviders/UniformContoursDrawingProvider.js +2 -9
  105. package/Charting/Visuals/RenderableSeries/DrawingProviders/UniformHeatmapDrawingProvider.js +0 -7
  106. package/Charting/Visuals/RenderableSeries/FastBubbleRenderableSeries.d.ts +6 -2
  107. package/Charting/Visuals/RenderableSeries/FastBubbleRenderableSeries.js +5 -0
  108. package/Charting/Visuals/RenderableSeries/FastColumnRenderableSeries.d.ts +1 -0
  109. package/Charting/Visuals/RenderableSeries/FastColumnRenderableSeries.js +1 -0
  110. package/Charting/Visuals/RenderableSeries/FastLineRenderableSeries.d.ts +1 -0
  111. package/Charting/Visuals/RenderableSeries/FastLineRenderableSeries.js +6 -0
  112. package/Charting/Visuals/RenderableSeries/HitTest/BandSeriesHitTestProvider.js +2 -2
  113. package/Charting/Visuals/RenderableSeries/HitTest/BaseHitTestProvider.js +1 -1
  114. package/Charting/Visuals/RenderableSeries/HitTest/BubbleSeriesHitTestProvider.js +1 -1
  115. package/Charting/Visuals/RenderableSeries/HitTest/ColumnSeriesHitTestProvider.js +2 -2
  116. package/Charting/Visuals/RenderableSeries/HitTest/LineSeriesHitTestProvider.js +2 -2
  117. package/Charting/Visuals/RenderableSeries/HitTest/MountainSeriesHitTestProvider.js +1 -1
  118. package/Charting/Visuals/RenderableSeries/HitTest/OhlcSeriesHitTestProvider.js +2 -2
  119. package/Charting/Visuals/RenderableSeries/HitTest/ScatterSeriesHitTestProvider.js +1 -1
  120. package/Charting/Visuals/RenderableSeries/HitTest/StackedColumnSeriesHitTestProvider.js +2 -2
  121. package/Charting/Visuals/RenderableSeries/HitTest/StackedMountainSeriesHitTestProvider.js +2 -2
  122. package/Charting/Visuals/RenderableSeries/HitTest/hitTestHelpers.d.ts +6 -6
  123. package/Charting/Visuals/RenderableSeries/HitTest/hitTestHelpers.js +1 -1
  124. package/Charting/Visuals/RenderableSeries/IBaseRenderableSeriesOptions.d.ts +12 -1
  125. package/Charting/Visuals/RenderableSeries/IRenderableSeries.d.ts +38 -2
  126. package/Charting/Visuals/RenderableSeries/ISpline.d.ts +3 -3
  127. package/Charting/Visuals/RenderableSeries/SplineBandRenderableSeries.d.ts +4 -4
  128. package/Charting/Visuals/RenderableSeries/SplineBandRenderableSeries.js +5 -5
  129. package/Charting/Visuals/RenderableSeries/SplineLineRenderableSeries.d.ts +3 -3
  130. package/Charting/Visuals/RenderableSeries/SplineLineRenderableSeries.js +3 -3
  131. package/Charting/Visuals/RenderableSeries/SplineMountainRenderableSeries.d.ts +3 -3
  132. package/Charting/Visuals/RenderableSeries/SplineMountainRenderableSeries.js +3 -3
  133. package/Charting/Visuals/RenderableSeries/StackedColumnCollection.js +0 -6
  134. package/Charting/Visuals/RenderableSeries/StackedMountainCollection.d.ts +1 -1
  135. package/Charting/Visuals/RenderableSeries/StackedMountainCollection.js +1 -7
  136. package/Charting/Visuals/RenderableSeries/UniformContoursRenderableSeries.d.ts +5 -0
  137. package/Charting/Visuals/RenderableSeries/UniformContoursRenderableSeries.js +6 -0
  138. package/Charting/Visuals/RenderableSeries/UniformHeatmapRenderableSeries.d.ts +5 -0
  139. package/Charting/Visuals/RenderableSeries/UniformHeatmapRenderableSeries.js +6 -0
  140. package/Charting/Visuals/RenderableSeries/XyScatterRenderableSeries.d.ts +5 -3
  141. package/Charting/Visuals/RenderableSeries/XyScatterRenderableSeries.js +6 -3
  142. package/Charting/Visuals/RenderableSeries/constants.d.ts +3 -0
  143. package/Charting/Visuals/RenderableSeries/constants.js +3 -0
  144. package/Charting/Visuals/SciChartDefaults.d.ts +9 -1
  145. package/Charting/Visuals/SciChartDefaults.js +9 -1
  146. package/Charting/Visuals/licenseManager2D.js +19 -20
  147. package/Charting/Visuals/licenseManager2dState.d.ts +4 -0
  148. package/Charting/Visuals/licenseManager2dState.js +12 -0
  149. package/Charting3D/Model/DataSeries/XyzDataSeries3D.d.ts +7 -7
  150. package/Charting3D/Model/DataSeries/XyzDataSeries3D.js +3 -3
  151. package/Core/BuildStamp.d.ts +1 -1
  152. package/Core/BuildStamp.js +2 -2
  153. package/Core/OneTimePerformanceWarning.d.ts +6 -0
  154. package/Core/OneTimePerformanceWarning.js +19 -0
  155. package/Core/storage/localStorageApi.d.ts +9 -0
  156. package/Core/storage/localStorageApi.js +32 -0
  157. package/_wasm/scichart.browser.js +1 -1
  158. package/_wasm/scichart2d.js +95 -95
  159. package/_wasm/scichart2d.wasm +0 -0
  160. package/_wasm/scichart3d.js +96 -96
  161. package/_wasm/scichart3d.wasm +0 -0
  162. package/constants/performanceWarnings.d.ts +5 -0
  163. package/constants/performanceWarnings.js +8 -0
  164. package/package.json +1 -1
  165. package/types/SearchMode.d.ts +21 -0
  166. package/types/SearchMode.js +25 -0
  167. package/types/TSciChart.d.ts +143 -40
  168. package/types/TSciChart3D.d.ts +66 -28
  169. package/utils/array.d.ts +7 -0
  170. package/utils/array.js +19 -1
  171. package/utils/calcAverage.d.ts +2 -2
  172. package/utils/ccall/appendDoubleVectorFromJsArray.d.ts +19 -0
  173. package/utils/ccall/appendDoubleVectorFromJsArray.js +91 -0
  174. package/utils/hash.d.ts +7 -0
  175. package/utils/hash.js +35 -0
  176. package/utils/ccall/fillDoubleVectorFromJsArray.d.ts +0 -3
  177. package/utils/ccall/fillDoubleVectorFromJsArray.js +0 -33
  178. package/utils/performance.d.ts +0 -5
  179. package/utils/performance.js +0 -11
@@ -40,7 +40,7 @@ var LineSeriesHitTestProvider = /** @class */ (function (_super) {
40
40
  var isVerticalChart = this.currentRenderPassData.isVerticalChart;
41
41
  var xHitCoord = isVerticalChart ? hitTestPoint.y : hitTestPoint.x;
42
42
  var yHitCoord = isVerticalChart ? hitTestPoint.x : hitTestPoint.y;
43
- var isSortedData = this.parentSeries.dataSeries.isSorted;
43
+ var isSortedData = this.parentSeries.dataSeries.dataDistributionCalculator.isSortedAscending;
44
44
  if (isSortedData) {
45
45
  return this.hitTestSorted(xHitCoord, yHitCoord, hitTestRadius);
46
46
  }
@@ -51,7 +51,7 @@ var LineSeriesHitTestProvider = /** @class */ (function (_super) {
51
51
  LineSeriesHitTestProvider.prototype.hitTestSorted = function (xHitCoord, yHitCoord, hitTestRadius) {
52
52
  var _a = this.currentRenderPassData, xCoordinateCalculator = _a.xCoordinateCalculator, yCoordinateCalculator = _a.yCoordinateCalculator, isVerticalChart = _a.isVerticalChart;
53
53
  var dataSeries = this.parentSeries.dataSeries;
54
- var nearestPointIndex = hitTestHelpers_1.hitTestHelpers.getNearestXPoint(this.webAssemblyContext, xCoordinateCalculator, dataSeries, xHitCoord, dataSeries.isSorted);
54
+ var nearestPointIndex = hitTestHelpers_1.hitTestHelpers.getNearestXPoint(this.webAssemblyContext, xCoordinateCalculator, dataSeries, xHitCoord, dataSeries.dataDistributionCalculator.isSortedAscending);
55
55
  var xNativeValues = dataSeries.getNativeXValues();
56
56
  var yNativeValues = dataSeries.getNativeYValues();
57
57
  var hitTestInfo = hitTestHelpers_1.hitTestHelpers.createHitTestInfo(this.parentSeries, xCoordinateCalculator, yCoordinateCalculator, isVerticalChart, dataSeries, xNativeValues, yNativeValues, xHitCoord, yHitCoord, nearestPointIndex, hitTestRadius);
@@ -40,7 +40,7 @@ var MountainSeriesHitTestProvider = /** @class */ (function (_super) {
40
40
  var yHitCoord = isVerticalChart ? hitTestPoint.x : hitTestPoint.y;
41
41
  var renderableSeries = this.parentSeries;
42
42
  var dataSeries = renderableSeries.dataSeries;
43
- var nearestPointIndex = hitTestHelpers_1.hitTestHelpers.getNearestXPoint(this.webAssemblyContext, xCoordinateCalculator, dataSeries, xHitCoord, dataSeries.isSorted);
43
+ var nearestPointIndex = hitTestHelpers_1.hitTestHelpers.getNearestXPoint(this.webAssemblyContext, xCoordinateCalculator, dataSeries, xHitCoord, dataSeries.dataDistributionCalculator.isSortedAscending);
44
44
  var xNativeValues = dataSeries.getNativeXValues();
45
45
  var yNativeValues = dataSeries.getNativeYValues();
46
46
  var hitTestInfo = hitTestHelpers_1.hitTestHelpers.createHitTestInfo(renderableSeries, xCoordinateCalculator, yCoordinateCalculator, isVerticalChart, dataSeries, xNativeValues, yNativeValues, xHitCoord, yHitCoord, nearestPointIndex, 0);
@@ -42,7 +42,7 @@ var OhlcSeriesHitTestProvider = /** @class */ (function (_super) {
42
42
  var yHitCoord = isVerticalChart ? hitTestPoint.x : hitTestPoint.y;
43
43
  var renderableSeries = this.parentSeries;
44
44
  var dataSeries = this.parentSeries.dataSeries;
45
- var nearestPointIndex = hitTestHelpers_1.hitTestHelpers.getNearestXPoint(this.webAssemblyContext, xCoordinateCalculator, dataSeries, xHitCoord, dataSeries.isSorted);
45
+ var nearestPointIndex = hitTestHelpers_1.hitTestHelpers.getNearestXPoint(this.webAssemblyContext, xCoordinateCalculator, dataSeries, xHitCoord, dataSeries.dataDistributionCalculator.isSortedAscending);
46
46
  var xNativeValues = dataSeries.getNativeXValues();
47
47
  var yNativeValues = dataSeries.getNativeYValues();
48
48
  var hitTestInfo = hitTestHelpers_1.hitTestHelpers.createHitTestInfo(this.parentSeries, xCoordinateCalculator, yCoordinateCalculator, isVerticalChart, dataSeries, xNativeValues, yNativeValues, xHitCoord, yHitCoord, nearestPointIndex, hitTestRadius);
@@ -80,7 +80,7 @@ var OhlcSeriesHitTestProvider = /** @class */ (function (_super) {
80
80
  var dataSeries = this.parentSeries.dataSeries;
81
81
  var xNativeValues = dataSeries.getNativeXValues();
82
82
  var yNativeValues = dataSeries.getNativeYValues();
83
- var nearestPointIndex = hitTestHelpers_1.hitTestHelpers.getNearestXPoint(this.webAssemblyContext, xCoordinateCalculator, dataSeries, xHitCoord, dataSeries.isSorted);
83
+ var nearestPointIndex = hitTestHelpers_1.hitTestHelpers.getNearestXPoint(this.webAssemblyContext, xCoordinateCalculator, dataSeries, xHitCoord, dataSeries.dataDistributionCalculator.isSortedAscending);
84
84
  var hitTestInfo = hitTestHelpers_1.hitTestHelpers.createHitTestInfo(this.parentSeries, xCoordinateCalculator, yCoordinateCalculator, isVerticalChart, dataSeries, xNativeValues, yNativeValues, xHitCoord, yHitCoord, nearestPointIndex, 0);
85
85
  if (nearestPointIndex >= 0) {
86
86
  hitTestInfo.openValue = dataSeries.getNativeOpenValues().get(nearestPointIndex);
@@ -74,7 +74,7 @@ var ScatterSeriesHitTestProvider = /** @class */ (function (_super) {
74
74
  var dataSeries = this.parentSeries.dataSeries;
75
75
  var xNativeValues = dataSeries.getNativeXValues();
76
76
  var yNativeValues = dataSeries.getNativeYValues();
77
- var nearestPointIndex = hitTestHelpers_1.hitTestHelpers.getNearestXPoint(this.webAssemblyContext, xCoordinateCalculator, dataSeries, xHitCoord, dataSeries.isSorted);
77
+ var nearestPointIndex = hitTestHelpers_1.hitTestHelpers.getNearestXPoint(this.webAssemblyContext, xCoordinateCalculator, dataSeries, xHitCoord, dataSeries.dataDistributionCalculator.isSortedAscending);
78
78
  var hitTestInfo = hitTestHelpers_1.hitTestHelpers.createHitTestInfo(this.parentSeries, xCoordinateCalculator, yCoordinateCalculator, isVerticalChart, dataSeries, xNativeValues, yNativeValues, xHitCoord, yHitCoord, nearestPointIndex, 0);
79
79
  if (nearestPointIndex >= 0) {
80
80
  var isCategoryAxis = xCoordinateCalculator.isCategoryCoordinateCalculator;
@@ -40,7 +40,7 @@ var StackedColumnSeriesHitTestProvider = /** @class */ (function (_super) {
40
40
  var xHitCoord = isVerticalChart ? hitTestPoint.y : hitTestPoint.x;
41
41
  var yHitCoord = isVerticalChart ? hitTestPoint.x : hitTestPoint.y;
42
42
  var dataSeries = this.parentSeries.dataSeries;
43
- var nearestPointIndex = hitTestHelpers_1.hitTestHelpers.getNearestXPoint(this.webAssemblyContext, xCoordinateCalculator, dataSeries, xHitCoord, dataSeries.isSorted);
43
+ var nearestPointIndex = hitTestHelpers_1.hitTestHelpers.getNearestXPoint(this.webAssemblyContext, xCoordinateCalculator, dataSeries, xHitCoord, dataSeries.dataDistributionCalculator.isSortedAscending);
44
44
  var xNativeValues = dataSeries.getNativeXValues();
45
45
  var yNativeValues = dataSeries.getNativeYValues();
46
46
  var _b = this.parentSeries, accumulatedValues = _b.accumulatedValues, getGroupIndex = _b.getGroupIndex, getGroupsCount = _b.getGroupsCount, getColumnWidth = _b.getColumnWidth;
@@ -98,7 +98,7 @@ var StackedColumnSeriesHitTestProvider = /** @class */ (function (_super) {
98
98
  var xHitCoord = isVerticalChart ? hitTestPoint.y : hitTestPoint.x;
99
99
  var yHitCoord = isVerticalChart ? hitTestPoint.x : hitTestPoint.y;
100
100
  var dataSeries = this.parentSeries.dataSeries;
101
- var nearestPointIndex = hitTestHelpers_1.hitTestHelpers.getNearestXPoint(this.webAssemblyContext, xCoordinateCalculator, dataSeries, xHitCoord, dataSeries.isSorted);
101
+ var nearestPointIndex = hitTestHelpers_1.hitTestHelpers.getNearestXPoint(this.webAssemblyContext, xCoordinateCalculator, dataSeries, xHitCoord, dataSeries.dataDistributionCalculator.isSortedAscending);
102
102
  var xNativeValues = dataSeries.getNativeXValues();
103
103
  var yNativeValues = dataSeries.getNativeYValues();
104
104
  var _b = this.parentSeries, accumulatedValues = _b.accumulatedValues, getGroupIndex = _b.getGroupIndex, getGroupsCount = _b.getGroupsCount, getColumnWidth = _b.getColumnWidth;
@@ -39,7 +39,7 @@ var StackedMountainSeriesHitTestProvider = /** @class */ (function (_super) {
39
39
  var xHitCoord = isVerticalChart ? hitTestPoint.y : hitTestPoint.x;
40
40
  var yHitCoord = isVerticalChart ? hitTestPoint.x : hitTestPoint.y;
41
41
  var dataSeries = this.parentSeries.dataSeries;
42
- var nearestPointIndex = hitTestHelpers_1.hitTestHelpers.getNearestXPoint(this.webAssemblyContext, xCoordinateCalculator, dataSeries, xHitCoord, dataSeries.isSorted);
42
+ var nearestPointIndex = hitTestHelpers_1.hitTestHelpers.getNearestXPoint(this.webAssemblyContext, xCoordinateCalculator, dataSeries, xHitCoord, dataSeries.dataDistributionCalculator.isSortedAscending);
43
43
  var xNativeValues = dataSeries.getNativeXValues();
44
44
  var accumulatedValues = this.parentSeries.accumulatedValues;
45
45
  var hitTestInfo = hitTestHelpers_1.hitTestHelpers.createHitTestInfo(this.parentSeries, xCoordinateCalculator, yCoordinateCalculator, isVerticalChart, dataSeries, xNativeValues, accumulatedValues, xHitCoord, yHitCoord, nearestPointIndex, 0);
@@ -69,7 +69,7 @@ var StackedMountainSeriesHitTestProvider = /** @class */ (function (_super) {
69
69
  var xHitCoord = isVerticalChart ? hitTestPoint.y : hitTestPoint.x;
70
70
  var yHitCoord = isVerticalChart ? hitTestPoint.x : hitTestPoint.y;
71
71
  var dataSeries = this.parentSeries.dataSeries;
72
- var nearestPointIndex = hitTestHelpers_1.hitTestHelpers.getNearestXPoint(this.webAssemblyContext, xCoordinateCalculator, dataSeries, xHitCoord, dataSeries.isSorted);
72
+ var nearestPointIndex = hitTestHelpers_1.hitTestHelpers.getNearestXPoint(this.webAssemblyContext, xCoordinateCalculator, dataSeries, xHitCoord, dataSeries.dataDistributionCalculator.isSortedAscending);
73
73
  var xNativeValues = dataSeries.getNativeXValues();
74
74
  var yNativeValues = dataSeries.getNativeYValues();
75
75
  var accumulatedValues = this.parentSeries.accumulatedValues;
@@ -1,4 +1,4 @@
1
- import { DoubleVector, TSciChart } from "../../../../types/TSciChart";
1
+ import { SCRTDoubleVector, TSciChart } from "../../../../types/TSciChart";
2
2
  import { BaseDataSeries } from "../../../Model/BaseDataSeries";
3
3
  import { IDataSeries } from "../../../Model/IDataSeries";
4
4
  import { OhlcDataSeries } from "../../../Model/OhlcDataSeries";
@@ -11,7 +11,7 @@ import { FastColumnRenderableSeries } from "../FastColumnRenderableSeries";
11
11
  import { IRenderableSeries } from "../IRenderableSeries";
12
12
  import { HitTestInfo } from "./HitTestInfo";
13
13
  export declare const hitTestHelpers: {
14
- createHitTestInfo: (renderableSeries: IRenderableSeries, xCoordinateCalculator: CoordinateCalculatorBase, yCoordinateCalculator: CoordinateCalculatorBase, isVerticalChart: boolean, dataSeries: BaseDataSeries, xNativeValues: DoubleVector, yNativeValues: DoubleVector, xHitCoord: number, yHitCoord: number, nearestPointIndex: number, hitTestRadius: number) => HitTestInfo;
14
+ createHitTestInfo: (renderableSeries: IRenderableSeries, xCoordinateCalculator: CoordinateCalculatorBase, yCoordinateCalculator: CoordinateCalculatorBase, isVerticalChart: boolean, dataSeries: BaseDataSeries, xNativeValues: SCRTDoubleVector, yNativeValues: SCRTDoubleVector, xHitCoord: number, yHitCoord: number, nearestPointIndex: number, hitTestRadius: number) => HitTestInfo;
15
15
  getNearestXPoint: (webAssemblyContext: TSciChart, xCoordinateCalculator: CoordinateCalculatorBase, dataSeries: IDataSeries, xHitCoord: number, isSorted: boolean) => number;
16
16
  getNearestXyPoint: (xCoordinateCalculator: CoordinateCalculatorBase, yCoordinateCalculator: CoordinateCalculatorBase, dataSeries: IDataSeries, xHitCoord: number, yHitCoord: number) => number;
17
17
  getNearestXyyPoint: (xCoordinateCalculator: CoordinateCalculatorBase, yCoordinateCalculator: CoordinateCalculatorBase, dataSeries: XyyDataSeries, xHitCoord: number, yHitCoord: number) => number;
@@ -20,16 +20,16 @@ export declare const hitTestHelpers: {
20
20
  yIndex: number;
21
21
  zValue: number;
22
22
  };
23
- testIsHitForPoint: (xCoordinateCalculator: CoordinateCalculatorBase, yCoordinateCalculator: CoordinateCalculatorBase, xValues: DoubleVector, yValues: DoubleVector, pointIndex: number, xHitCoord: number, yHitCoord: number, hitTestRadius: number) => boolean;
24
- testIsHitForLine: (xCoordinateCalculator: CoordinateCalculatorBase, yCoordinateCalculator: CoordinateCalculatorBase, xValues: DoubleVector, yValues: DoubleVector, pointIndex: number, xHitCoord: number, yHitCoord: number, hitTestRadius: number) => {
23
+ testIsHitForPoint: (xCoordinateCalculator: CoordinateCalculatorBase, yCoordinateCalculator: CoordinateCalculatorBase, xValues: SCRTDoubleVector, yValues: SCRTDoubleVector, pointIndex: number, xHitCoord: number, yHitCoord: number, hitTestRadius: number) => boolean;
24
+ testIsHitForLine: (xCoordinateCalculator: CoordinateCalculatorBase, yCoordinateCalculator: CoordinateCalculatorBase, xValues: SCRTDoubleVector, yValues: SCRTDoubleVector, pointIndex: number, xHitCoord: number, yHitCoord: number, hitTestRadius: number) => {
25
25
  isHit: boolean;
26
26
  secondPointIndex: number;
27
27
  };
28
- testIsHitForBand: (isDigitalLine: boolean, xCoordinateCalculator: CoordinateCalculatorBase, yCoordinateCalculator: CoordinateCalculatorBase, xValues: DoubleVector, getYValue: (index: number) => number, getY1Value: (index: number) => number, pointIndex: number, xHitCoord: number, yHitCoord: number) => {
28
+ testIsHitForBand: (isDigitalLine: boolean, xCoordinateCalculator: CoordinateCalculatorBase, yCoordinateCalculator: CoordinateCalculatorBase, xValues: SCRTDoubleVector, getYValue: (index: number) => number, getY1Value: (index: number) => number, pointIndex: number, xHitCoord: number, yHitCoord: number) => {
29
29
  isHit: boolean;
30
30
  secondPointIndex: number;
31
31
  };
32
- testIsHitForColumn: (xCoordinateCalculator: CoordinateCalculatorBase, yCoordinateCalculator: CoordinateCalculatorBase, renderableSeries: FastColumnRenderableSeries, xValues: DoubleVector, yValues: DoubleVector, pointIndex: number, xHitCoord: number, yHitCoord: number) => boolean;
32
+ testIsHitForColumn: (xCoordinateCalculator: CoordinateCalculatorBase, yCoordinateCalculator: CoordinateCalculatorBase, renderableSeries: FastColumnRenderableSeries, xValues: SCRTDoubleVector, yValues: SCRTDoubleVector, pointIndex: number, xHitCoord: number, yHitCoord: number) => boolean;
33
33
  testIsHitForOHLC: (xCoordinateCalculator: CoordinateCalculatorBase, yCoordinateCalculator: CoordinateCalculatorBase, renderableSeries: FastColumnRenderableSeries | BaseOhlcRenderableSeries, dataSeries: OhlcDataSeries, pointIndex: number, xHitCoord: number, yHitCoord: number, hitTestRadius: number) => {
34
34
  isHit: boolean;
35
35
  openValue: number;
@@ -53,7 +53,7 @@ var createHitTestInfo = function (renderableSeries, xCoordinateCalculator, yCoor
53
53
  hitTestInfo.yValue = yValue;
54
54
  var xFirstValue = isCategoryAxis ? 0 : xNativeValues.get(0);
55
55
  var xLastValue = isCategoryAxis ? xNativeValues.size() - 1 : xNativeValues.get(xNativeValues.size() - 1);
56
- if (!dataSeries.isSorted) {
56
+ if (!dataSeries.dataDistributionCalculator.isSortedAscending) {
57
57
  for (var i = 0; i < dataSeries.count(); i++) {
58
58
  if (xNativeValues.get(i) < xFirstValue) {
59
59
  xFirstValue = xNativeValues.get(i);
@@ -2,6 +2,7 @@ import { TAnimationDefinition, TEffectDefinition, TPaletteProviderDefinition, TP
2
2
  import { ELineDrawMode } from "../../Drawing/WebGlRenderContext2D";
3
3
  import { IDataSeries } from "../../Model/IDataSeries";
4
4
  import { IPaletteProvider } from "../../Model/IPaletteProvider";
5
+ import { EResamplingMode } from "../../Numerics/Resamplers/ResamplingMode";
5
6
  import { IPointMarker } from "../PointMarkers/IPointMarker";
6
7
  import { SeriesAnimation } from "./Animations/SeriesAnimation";
7
8
  import { IRenderableSeries } from "./IRenderableSeries";
@@ -137,7 +138,7 @@ export interface IBaseRenderableSeriesOptions {
137
138
  */
138
139
  drawNaNAs?: ELineDrawMode;
139
140
  /**
140
- * An animation that runs on the start, child class to {@link BaseAnimation}
141
+ * An animation that runs on the start, child class to {@link SeriesAnimation}
141
142
  */
142
143
  animation?: SeriesAnimation | TAnimationDefinition;
143
144
  /**
@@ -156,4 +157,14 @@ export interface IBaseRenderableSeriesOptions {
156
157
  * Optional callback function when hovered changed. Also see {@link IRenderableSeries.hovered} event handler
157
158
  */
158
159
  onHoveredChanged?: TSeriesHoverChangedCallback | string;
160
+ /**
161
+ * Gets or sets the {@link EResamplingMode} used when drawing this series.
162
+ * Default value is AUTO.
163
+ * To disable resampling for this series, set mode to NONE.
164
+ */
165
+ resamplingMode?: EResamplingMode;
166
+ /**
167
+ * Gets or sets the resampling precision for this series
168
+ */
169
+ resamplingPrecision?: number;
159
170
  }
@@ -3,11 +3,14 @@ import { EventHandler } from "../../../Core/EventHandler";
3
3
  import { IDeletable } from "../../../Core/IDeletable";
4
4
  import { NumberRange } from "../../../Core/NumberRange";
5
5
  import { ESeriesType } from "../../../types/SeriesType";
6
- import { DoubleVector } from "../../../types/TSciChart";
6
+ import { SCRTDoubleVector } from "../../../types/TSciChart";
7
7
  import { ELineDrawMode, WebGlRenderContext2D } from "../../Drawing/WebGlRenderContext2D";
8
8
  import { SeriesInfo } from "../../Model/ChartData/SeriesInfo";
9
9
  import { IDataSeries } from "../../Model/IDataSeries";
10
10
  import { IPaletteProvider } from "../../Model/IPaletteProvider";
11
+ import { IPointSeries } from "../../Model/PointSeries/IPointSeries";
12
+ import { EResamplingMode } from "../../Numerics/Resamplers/ResamplingMode";
13
+ import { ResamplingParams } from "../../Numerics/Resamplers/ResamplingParams";
11
14
  import { RenderPassData } from "../../Services/RenderPassData";
12
15
  import { IThemeable } from "../../Themes/IThemeable";
13
16
  import { IThemeProvider } from "../../Themes/IThemeProvider";
@@ -46,6 +49,10 @@ export interface IRenderableSeries extends IDeletable, IThemeable, INotifyOnDpiC
46
49
  * Returns true if the series is a stacked series or not
47
50
  */
48
51
  readonly isStacked: boolean;
52
+ /**
53
+ * Returns true if the series supports resampling
54
+ */
55
+ readonly supportsResampling: boolean;
49
56
  /**
50
57
  * Returns true if the series uses spline interpolation
51
58
  */
@@ -219,6 +226,20 @@ export interface IRenderableSeries extends IDeletable, IThemeable, INotifyOnDpiC
219
226
  * gets if the animation is currently running
220
227
  */
221
228
  isRunningAnimation: boolean;
229
+ /**
230
+ * Readonly. When true, resampling modes are enabled for faster drawing performance.
231
+ */
232
+ enableDrawingOptimisations: boolean;
233
+ /**
234
+ * Gets or sets the {@link EResamplingMode} used when drawing this series.
235
+ * Default value is Auto.
236
+ * To disable resampling set mode = None.
237
+ */
238
+ resamplingMode: EResamplingMode;
239
+ /**
240
+ * Gets or sets the resampling precision for this series
241
+ */
242
+ resamplingPrecision: number;
222
243
  /**
223
244
  * Called when the {@link BaseRenderableSeries} must be drawn
224
245
  * @param renderContext The {@link WebGL2RenderingContext} with methods for drawing on the WebGL Canvas via our WebAssembly Rendering Engine
@@ -279,7 +300,7 @@ export interface IRenderableSeries extends IDeletable, IThemeable, INotifyOnDpiC
279
300
  /**
280
301
  * Returns the {@link IDataSeries.getNativeXValues} for the associated {@link dataSeries}
281
302
  */
282
- getNativeXValues(): DoubleVector;
303
+ getNativeXValues(): SCRTDoubleVector;
283
304
  /**
284
305
  * Checks is the point is out of the data range. For sorted data only. Is used to hide tooltips for {@link RolloverModifier}
285
306
  * @param xValue The X value of the point
@@ -314,4 +335,19 @@ export interface IRenderableSeries extends IDeletable, IThemeable, INotifyOnDpiC
314
335
  * @param excludeData if set true, data values will not be included in the json.
315
336
  */
316
337
  toJSON(excludeData?: boolean): TSeriesDefinition;
338
+ /**
339
+ * Returns a dataset for drawing on the viewport
340
+ * @param resamplingParams The resampling parameters
341
+ */
342
+ toPointSeries(resamplingParams?: ResamplingParams): IPointSeries;
343
+ /**
344
+ * Returns the indices range of data points in xRange of the associated {@link IDataSeries}
345
+ * @param xRange The X-Axis Range currently in view
346
+ * @param isCategoryData If True the renderable series uses {@link CategoryAxis}
347
+ */
348
+ getIndicesRange(xRange: NumberRange, isCategoryData?: boolean): NumberRange;
349
+ /**
350
+ * Gets the RenderPassData instance used for this render pass
351
+ */
352
+ getCurrentRenderPassData(): RenderPassData;
317
353
  }
@@ -1,13 +1,13 @@
1
- import { DoubleVector } from "../../../types/TSciChart";
1
+ import { SCRTDoubleVector } from "../../../types/TSciChart";
2
2
  export interface ISpline {
3
3
  /**
4
4
  * X spline values
5
5
  */
6
- xSplineValues: DoubleVector;
6
+ xSplineValues: SCRTDoubleVector;
7
7
  /**
8
8
  * Y spline values
9
9
  */
10
- ySplineValues: DoubleVector;
10
+ ySplineValues: SCRTDoubleVector;
11
11
  /**
12
12
  * the interpolationPoints being used for the Spline
13
13
  */
@@ -1,7 +1,7 @@
1
1
  import { SeriesAnimationFiniteStateMachine } from "../../../Core/Animations/AnimationFiniteStateMachine";
2
2
  import { NumberRange } from "../../../Core/NumberRange";
3
3
  import { ESeriesType } from "../../../types/SeriesType";
4
- import { DoubleVector, TSciChart } from "../../../types/TSciChart";
4
+ import { SCRTDoubleVector, TSciChart } from "../../../types/TSciChart";
5
5
  import { SeriesAnimation } from "./Animations/SeriesAnimation";
6
6
  import { BaseBandRenderableSeries, IBaseBandRenderableSeriesOptions } from "./BaseBandRenderableSeries";
7
7
  import { ISpline } from "./ISpline";
@@ -40,9 +40,9 @@ export interface ISplineBandRenderableSeriesOptions extends IBaseBandRenderableS
40
40
  */
41
41
  export declare class SplineBandRenderableSeries extends BaseBandRenderableSeries implements ISpline {
42
42
  readonly type = ESeriesType.SplineBandSeries;
43
- xSplineValues: DoubleVector;
44
- ySplineValues: DoubleVector;
45
- y1SplineValues: DoubleVector;
43
+ xSplineValues: SCRTDoubleVector;
44
+ ySplineValues: SCRTDoubleVector;
45
+ y1SplineValues: SCRTDoubleVector;
46
46
  private recalculateSpline;
47
47
  private interpolationPointsProperty;
48
48
  /**
@@ -58,9 +58,9 @@ var SplineBandRenderableSeries = /** @class */ (function (_super) {
58
58
  _this.type = SeriesType_1.ESeriesType.SplineBandSeries;
59
59
  _this.recalculateSpline = true;
60
60
  _this.interpolationPointsProperty = 10;
61
- _this.xSplineValues = new webAssemblyContext.DoubleVector();
62
- _this.ySplineValues = new webAssemblyContext.DoubleVector();
63
- _this.y1SplineValues = new webAssemblyContext.DoubleVector();
61
+ _this.xSplineValues = new webAssemblyContext.SCRTDoubleVector();
62
+ _this.ySplineValues = new webAssemblyContext.SCRTDoubleVector();
63
+ _this.y1SplineValues = new webAssemblyContext.SCRTDoubleVector();
64
64
  _this.interpolationPointsProperty = (_a = options === null || options === void 0 ? void 0 : options.interpolationPoints) !== null && _a !== void 0 ? _a : _this.interpolationPointsProperty;
65
65
  // Must be called here for the series type to be available
66
66
  if ((_b = _this.paletteProvider) === null || _b === void 0 ? void 0 : _b.onAttached) {
@@ -104,8 +104,8 @@ var SplineBandRenderableSeries = /** @class */ (function (_super) {
104
104
  var yValues = dataSeries.getNativeYValues();
105
105
  var y1Values = dataSeries.getNativeY1Values();
106
106
  var initialSize = xValues.size();
107
- this.webAssemblyContext.SCRTSplineHelperCubicSpline(xValues, yValues, this.xSplineValues, this.ySplineValues, initialSize, this.interpolationPoints, dataSeries.containsNaN);
108
- this.webAssemblyContext.SCRTSplineHelperCubicSpline(xValues, y1Values, this.xSplineValues, this.y1SplineValues, initialSize, this.interpolationPoints, dataSeries.containsNaN);
107
+ this.webAssemblyContext.SCRTSplineHelperCubicSpline(xValues, yValues, this.xSplineValues, this.ySplineValues, initialSize, this.interpolationPoints, dataSeries.dataDistributionCalculator.containsNaN);
108
+ this.webAssemblyContext.SCRTSplineHelperCubicSpline(xValues, y1Values, this.xSplineValues, this.y1SplineValues, initialSize, this.interpolationPoints, dataSeries.dataDistributionCalculator.containsNaN);
109
109
  this.recalculateSpline = false;
110
110
  };
111
111
  /** @inheritDoc */
@@ -1,7 +1,7 @@
1
1
  import { SeriesAnimationFiniteStateMachine } from "../../../Core/Animations/AnimationFiniteStateMachine";
2
2
  import { NumberRange } from "../../../Core/NumberRange";
3
3
  import { ESeriesType } from "../../../types/SeriesType";
4
- import { DoubleVector, TSciChart } from "../../../types/TSciChart";
4
+ import { SCRTDoubleVector, TSciChart } from "../../../types/TSciChart";
5
5
  import { SeriesAnimation } from "./Animations/SeriesAnimation";
6
6
  import { BaseLineRenderableSeries } from "./BaseLineRenderableSeries";
7
7
  import { TPalettingState } from "./DrawingProviders/BaseSeriesDrawingProvider";
@@ -37,8 +37,8 @@ export interface ISplineLineRenderableSeriesOptions extends IBaseRenderableSerie
37
37
  */
38
38
  export declare class SplineLineRenderableSeries extends BaseLineRenderableSeries implements ISpline {
39
39
  readonly type = ESeriesType.SplineLineSeries;
40
- xSplineValues: DoubleVector;
41
- ySplineValues: DoubleVector;
40
+ xSplineValues: SCRTDoubleVector;
41
+ ySplineValues: SCRTDoubleVector;
42
42
  private interpolationPointsProperty;
43
43
  private recalculateSpline;
44
44
  /**
@@ -56,8 +56,8 @@ var SplineLineRenderableSeries = /** @class */ (function (_super) {
56
56
  _this.type = SeriesType_1.ESeriesType.SplineLineSeries;
57
57
  _this.interpolationPointsProperty = 10;
58
58
  _this.recalculateSpline = true;
59
- _this.xSplineValues = new webAssemblyContext.DoubleVector();
60
- _this.ySplineValues = new webAssemblyContext.DoubleVector();
59
+ _this.xSplineValues = new webAssemblyContext.SCRTDoubleVector();
60
+ _this.ySplineValues = new webAssemblyContext.SCRTDoubleVector();
61
61
  _this.interpolationPointsProperty = (_a = options === null || options === void 0 ? void 0 : options.interpolationPoints) !== null && _a !== void 0 ? _a : _this.interpolationPointsProperty;
62
62
  // Must be called here for the series type to be available
63
63
  if ((_b = _this.paletteProvider) === null || _b === void 0 ? void 0 : _b.onAttached) {
@@ -99,7 +99,7 @@ var SplineLineRenderableSeries = /** @class */ (function (_super) {
99
99
  var xValues = this.xAxis.isCategoryAxis ? dataSeries.getNativeIndexes() : dataSeries.getNativeXValues();
100
100
  var yValues = dataSeries.getNativeYValues();
101
101
  var initialSize = xValues.size();
102
- this.webAssemblyContext.SCRTSplineHelperCubicSpline(xValues, yValues, this.xSplineValues, this.ySplineValues, initialSize, this.interpolationPoints, dataSeries.containsNaN);
102
+ this.webAssemblyContext.SCRTSplineHelperCubicSpline(xValues, yValues, this.xSplineValues, this.ySplineValues, initialSize, this.interpolationPoints, dataSeries.dataDistributionCalculator.containsNaN);
103
103
  this.recalculateSpline = false;
104
104
  };
105
105
  /** @inheritDoc */
@@ -1,7 +1,7 @@
1
1
  import { SeriesAnimationFiniteStateMachine } from "../../../Core/Animations/AnimationFiniteStateMachine";
2
2
  import { NumberRange } from "../../../Core/NumberRange";
3
3
  import { ESeriesType } from "../../../types/SeriesType";
4
- import { DoubleVector, TSciChart } from "../../../types/TSciChart";
4
+ import { SCRTDoubleVector, TSciChart } from "../../../types/TSciChart";
5
5
  import { SeriesAnimation } from "./Animations/SeriesAnimation";
6
6
  import { BaseMountainRenderableSeries, IBaseMountainRenderableSeriesOptions } from "./BaseMountainRenderableSeries";
7
7
  import { ISpline } from "./ISpline";
@@ -38,8 +38,8 @@ export interface ISplineMountainRenderableSeriesOptions extends IBaseMountainRen
38
38
  */
39
39
  export declare class SplineMountainRenderableSeries extends BaseMountainRenderableSeries implements ISpline {
40
40
  readonly type = ESeriesType.SplineMountainSeries;
41
- xSplineValues: DoubleVector;
42
- ySplineValues: DoubleVector;
41
+ xSplineValues: SCRTDoubleVector;
42
+ ySplineValues: SCRTDoubleVector;
43
43
  private recalculateSpline;
44
44
  private interpolationPointsProperty;
45
45
  /**
@@ -56,8 +56,8 @@ var SplineMountainRenderableSeries = /** @class */ (function (_super) {
56
56
  _this.type = SeriesType_1.ESeriesType.SplineMountainSeries;
57
57
  _this.recalculateSpline = true;
58
58
  _this.interpolationPointsProperty = 10;
59
- _this.xSplineValues = new webAssemblyContext.DoubleVector();
60
- _this.ySplineValues = new webAssemblyContext.DoubleVector();
59
+ _this.xSplineValues = new webAssemblyContext.SCRTDoubleVector();
60
+ _this.ySplineValues = new webAssemblyContext.SCRTDoubleVector();
61
61
  _this.interpolationPointsProperty = (_a = options === null || options === void 0 ? void 0 : options.interpolationPoints) !== null && _a !== void 0 ? _a : _this.interpolationPointsProperty;
62
62
  // Must be called here for the series type to be available
63
63
  if ((_b = _this.paletteProvider) === null || _b === void 0 ? void 0 : _b.onAttached) {
@@ -99,7 +99,7 @@ var SplineMountainRenderableSeries = /** @class */ (function (_super) {
99
99
  var xValues = this.xAxis.isCategoryAxis ? dataSeries.getNativeIndexes() : dataSeries.getNativeXValues();
100
100
  var yValues = dataSeries.getNativeYValues();
101
101
  var initialSize = xValues.size();
102
- this.webAssemblyContext.SCRTSplineHelperCubicSpline(xValues, yValues, this.xSplineValues, this.ySplineValues, initialSize, this.interpolationPoints, dataSeries.containsNaN);
102
+ this.webAssemblyContext.SCRTSplineHelperCubicSpline(xValues, yValues, this.xSplineValues, this.ySplineValues, initialSize, this.interpolationPoints, dataSeries.dataDistributionCalculator.containsNaN);
103
103
  this.recalculateSpline = false;
104
104
  };
105
105
  /** @inheritDoc */
@@ -335,12 +335,6 @@ var drawColumns = function (wasmContext, renderContext, xCoordinateCalculator, y
335
335
  args.SetFillBrush(fillBrush);
336
336
  }
337
337
  var nativeContext = renderContext.getNativeContext();
338
- nativeContext.PushMatrix();
339
- nativeContext.PushState();
340
- nativeContext.Translate(viewRect.x, viewRect.y);
341
- nativeContext.SetClipRect(viewRect.x, viewRect.y, viewRect.width, viewRect.height);
342
338
  nativeDrawingProvider.DrawPointsVec(nativeContext, xValues, y1Values, yValues, xCoordinateCalculator.nativeCalculator, yCoordinateCalculator.nativeCalculator, args);
343
- nativeContext.PopMatrix();
344
- nativeContext.PopState();
345
339
  args.delete();
346
340
  };
@@ -38,7 +38,7 @@ export declare class StackedMountainCollection extends BaseStackedCollection<Sta
38
38
  * Creates an instance of the {@link StackedMountainCollection}
39
39
  * @param webAssemblyContext The {@link TSciChart | SciChart WebAssembly Context} containing
40
40
  * native methods and access to our WebGL2 WebAssembly Drawing Engine
41
- * @param options Optional parameters of type {@link IBaseStackedCollectionOptions} to configure the
41
+ * @param options Optional parameters of type {@link IBaseStackedCollectionOptions} to configure the series
42
42
  */
43
43
  constructor(webAssemblyContext: TSciChart, options?: IBaseStackedCollectionOptions);
44
44
  /** @inheritDoc */
@@ -52,7 +52,7 @@ var StackedMountainCollection = /** @class */ (function (_super) {
52
52
  * Creates an instance of the {@link StackedMountainCollection}
53
53
  * @param webAssemblyContext The {@link TSciChart | SciChart WebAssembly Context} containing
54
54
  * native methods and access to our WebGL2 WebAssembly Drawing Engine
55
- * @param options Optional parameters of type {@link IBaseStackedCollectionOptions} to configure the
55
+ * @param options Optional parameters of type {@link IBaseStackedCollectionOptions} to configure the series
56
56
  */
57
57
  function StackedMountainCollection(webAssemblyContext, options) {
58
58
  var _this = _super.call(this, webAssemblyContext, options) || this;
@@ -213,12 +213,6 @@ var drawBand = function (wasmContext, renderContext, renderPassData, nativeDrawi
213
213
  args.SetLinesPen1(strokePenY1);
214
214
  }
215
215
  var nativeContext = renderContext.getNativeContext();
216
- nativeContext.PushMatrix();
217
- nativeContext.PushState();
218
- nativeContext.Translate(viewRect.x, viewRect.y);
219
- nativeContext.SetClipRect(viewRect.x, viewRect.y, viewRect.width, viewRect.height);
220
216
  nativeDrawingProvider.DrawPointsVec(nativeContext, xValues, yValues, y1Values, renderPassData.xCoordinateCalculator.nativeCalculator, renderPassData.yCoordinateCalculator.nativeCalculator, args);
221
- nativeContext.PopMatrix();
222
- nativeContext.PopState();
223
217
  args.delete();
224
218
  };
@@ -1,7 +1,9 @@
1
1
  import { PropertyChangedEventArgs } from "../../../Core/PropertyChangedEventArgs";
2
2
  import { ESeriesType } from "../../../types/SeriesType";
3
3
  import { TSciChart } from "../../../types/TSciChart";
4
+ import { IPointSeries } from "../../Model/PointSeries/IPointSeries";
4
5
  import { UniformHeatmapDataSeries } from "../../Model/UniformHeatmapDataSeries";
6
+ import { ResamplingParams } from "../../Numerics/Resamplers/ResamplingParams";
5
7
  import { BaseRenderableSeries } from "./BaseRenderableSeries";
6
8
  import { HeatmapColorMap, IHeatmapColorMapOptions } from "./HeatmapColorMap";
7
9
  import { IHitTestProvider } from "./HitTest/IHitTestProvider";
@@ -106,6 +108,9 @@ export declare class UniformContoursRenderableSeries extends BaseRenderableSerie
106
108
  get minorsPerMajor(): number;
107
109
  set minorsPerMajor(minorsPerMajor: number);
108
110
  getContourDrawingParams(): IContourDrawingParams;
111
+ /** @inheritDoc */
112
+ toPointSeries(resamplingParams?: ResamplingParams): IPointSeries;
113
+ /** @inheritDoc */
109
114
  toJSON(excludeData?: boolean): import("../../../Builder/buildSeries").TSeriesDefinition;
110
115
  /**
111
116
  * Called when a property changes on {@link HeatmapColorMap}, and notifies the parent {@link SciChartSurface}
@@ -206,6 +206,12 @@ var UniformContoursRenderableSeries = /** @class */ (function (_super) {
206
206
  };
207
207
  return result;
208
208
  };
209
+ /** @inheritDoc */
210
+ UniformContoursRenderableSeries.prototype.toPointSeries = function (resamplingParams) {
211
+ // not used for Contours
212
+ return undefined;
213
+ };
214
+ /** @inheritDoc */
209
215
  UniformContoursRenderableSeries.prototype.toJSON = function (excludeData) {
210
216
  var _a;
211
217
  if (excludeData === void 0) { excludeData = false; }
@@ -1,7 +1,9 @@
1
1
  import { PropertyChangedEventArgs } from "../../../Core/PropertyChangedEventArgs";
2
2
  import { ESeriesType } from "../../../types/SeriesType";
3
3
  import { TSciChart } from "../../../types/TSciChart";
4
+ import { IPointSeries } from "../../Model/PointSeries/IPointSeries";
4
5
  import { UniformHeatmapDataSeries } from "../../Model/UniformHeatmapDataSeries";
6
+ import { ResamplingParams } from "../../Numerics/Resamplers/ResamplingParams";
5
7
  import { LabelProvider } from "../Axis/LabelProvider/LabelProvider";
6
8
  import { BaseRenderableSeries } from "./BaseRenderableSeries";
7
9
  import { HeatmapColorMap, IHeatmapColorMapOptions } from "./HeatmapColorMap";
@@ -98,6 +100,9 @@ export declare class UniformHeatmapRenderableSeries extends BaseRenderableSeries
98
100
  checkIsOutOfDataRange(xValue: number, yValue: number): boolean;
99
101
  get zLabelProvider(): LabelProvider;
100
102
  set zLabelProvider(labelProvider: LabelProvider);
103
+ /** @inheritDoc */
104
+ toPointSeries(resamplingParams?: ResamplingParams): IPointSeries;
105
+ /** @inheritDoc */
101
106
  toJSON(excludeData?: boolean): import("../../../Builder/buildSeries").TSeriesDefinition;
102
107
  /**
103
108
  * Called when a property changes on {@link HeatmapColorMap}, and notifies the parent {@link SciChartSurface}
@@ -159,6 +159,12 @@ var UniformHeatmapRenderableSeries = /** @class */ (function (_super) {
159
159
  enumerable: false,
160
160
  configurable: true
161
161
  });
162
+ /** @inheritDoc */
163
+ UniformHeatmapRenderableSeries.prototype.toPointSeries = function (resamplingParams) {
164
+ // not used for Heatmap
165
+ return undefined;
166
+ };
167
+ /** @inheritDoc */
162
168
  UniformHeatmapRenderableSeries.prototype.toJSON = function (excludeData) {
163
169
  var _a;
164
170
  if (excludeData === void 0) { excludeData = false; }
@@ -1,5 +1,7 @@
1
1
  import { ESeriesType } from "../../../types/SeriesType";
2
2
  import { TSciChart } from "../../../types/TSciChart";
3
+ import { IPointSeries } from "../../Model/PointSeries/IPointSeries";
4
+ import { ResamplingParams } from "../../Numerics/Resamplers/ResamplingParams";
3
5
  import { BaseRenderableSeries } from "./BaseRenderableSeries";
4
6
  import { IHitTestProvider } from "./HitTest/IHitTestProvider";
5
7
  import { IBaseRenderableSeriesOptions } from "./IBaseRenderableSeriesOptions";
@@ -45,8 +47,8 @@ export declare class XyScatterRenderableSeries extends BaseRenderableSeries {
45
47
  * @param options Optional parameters of type {@link IBaseRenderableSeriesOptions} to configure the series
46
48
  */
47
49
  constructor(webAssemblyContext: TSciChart, options?: IXyScatterRenderableSeriesOptions);
48
- /**
49
- * @inheritDoc
50
- */
50
+ /** @inheritDoc */
51
+ toPointSeries(rp?: ResamplingParams): IPointSeries;
52
+ /** @inheritDoc */
51
53
  protected newHitTestProvider(): IHitTestProvider;
52
54
  }
@@ -17,6 +17,7 @@ var __extends = (this && this.__extends) || (function () {
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.XyScatterRenderableSeries = void 0;
19
19
  var SeriesType_1 = require("../../../types/SeriesType");
20
+ var XyPointSeriesWrapped_1 = require("../../Model/PointSeries/XyPointSeriesWrapped");
20
21
  var EllipsePointMarker_1 = require("../PointMarkers/EllipsePointMarker");
21
22
  var BaseRenderableSeries_1 = require("./BaseRenderableSeries");
22
23
  var PointMarkerDrawingProvider_1 = require("./DrawingProviders/PointMarkerDrawingProvider");
@@ -75,9 +76,11 @@ var XyScatterRenderableSeries = /** @class */ (function (_super) {
75
76
  }
76
77
  return _this;
77
78
  }
78
- /**
79
- * @inheritDoc
80
- */
79
+ /** @inheritDoc */
80
+ XyScatterRenderableSeries.prototype.toPointSeries = function (rp) {
81
+ return new XyPointSeriesWrapped_1.XyPointSeriesWrapped(this.dataSeries);
82
+ };
83
+ /** @inheritDoc */
81
84
  XyScatterRenderableSeries.prototype.newHitTestProvider = function () {
82
85
  return new ScatterSeriesHitTestProvider_1.ScatterSeriesHitTestProvider(this, this.webAssemblyContext);
83
86
  };
@@ -12,6 +12,7 @@ export declare enum PROPERTY {
12
12
  DATA_SERIES = "dataSeries",
13
13
  DRAW_NAN_AS = "drawNaNAs",
14
14
  EFFECT = "EFFECT",
15
+ ENABLE_DRAWING_OPTIMISATIONS = "ENABLE_DRAWING_OPTIMISATIONS",
15
16
  FILL = "fill",
16
17
  FILL_Y1 = "FILL_Y1",
17
18
  FILL_LINEAR_GRADIENT = "FILL_LINEAR_GRADIENT",
@@ -30,6 +31,8 @@ export declare enum PROPERTY {
30
31
  PALETTE_PROVIDER = "PALETTE_PROVIDER",
31
32
  POINT_MARKER = "pointMarker",
32
33
  RANGE = "RANGE",
34
+ RESAMPLING_MODE = "RESAMPLING_MODE",
35
+ RESAMPLING_PRECISION = "RESAMPLING_PRECISION",
33
36
  SPACING = "SPACING",
34
37
  STACKED_GROUP_ID = "STACKED_GROUP_ID",
35
38
  STROKE = "STROKE",
@@ -16,6 +16,7 @@ var PROPERTY;
16
16
  PROPERTY["DATA_SERIES"] = "dataSeries";
17
17
  PROPERTY["DRAW_NAN_AS"] = "drawNaNAs";
18
18
  PROPERTY["EFFECT"] = "EFFECT";
19
+ PROPERTY["ENABLE_DRAWING_OPTIMISATIONS"] = "ENABLE_DRAWING_OPTIMISATIONS";
19
20
  PROPERTY["FILL"] = "fill";
20
21
  PROPERTY["FILL_Y1"] = "FILL_Y1";
21
22
  PROPERTY["FILL_LINEAR_GRADIENT"] = "FILL_LINEAR_GRADIENT";
@@ -34,6 +35,8 @@ var PROPERTY;
34
35
  PROPERTY["PALETTE_PROVIDER"] = "PALETTE_PROVIDER";
35
36
  PROPERTY["POINT_MARKER"] = "pointMarker";
36
37
  PROPERTY["RANGE"] = "RANGE";
38
+ PROPERTY["RESAMPLING_MODE"] = "RESAMPLING_MODE";
39
+ PROPERTY["RESAMPLING_PRECISION"] = "RESAMPLING_PRECISION";
37
40
  PROPERTY["SPACING"] = "SPACING";
38
41
  PROPERTY["STACKED_GROUP_ID"] = "STACKED_GROUP_ID";
39
42
  PROPERTY["STROKE"] = "STROKE";