scichart 3.1.348 → 3.2.434

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 (358) hide show
  1. package/Builder/buildSurface.d.ts +2 -2
  2. package/Builder/chartBuilder.d.ts +4 -4
  3. package/Charting/ChartModifiers/ChartModifierBase.d.ts +19 -5
  4. package/Charting/ChartModifiers/ChartModifierBase.js +64 -7
  5. package/Charting/ChartModifiers/CursorModifier.d.ts +9 -9
  6. package/Charting/ChartModifiers/CursorModifier.js +13 -1
  7. package/Charting/ChartModifiers/DataPointSelectionModifier.d.ts +1 -0
  8. package/Charting/ChartModifiers/DataPointSelectionModifier.js +6 -1
  9. package/Charting/ChartModifiers/LegendModifier.d.ts +10 -25
  10. package/Charting/ChartModifiers/LegendModifier.js +10 -20
  11. package/Charting/ChartModifiers/MouseWheelZoomModifier.js +20 -11
  12. package/Charting/ChartModifiers/OverviewRangeSelectionModifier.d.ts +5 -5
  13. package/Charting/ChartModifiers/PinchZoomModifier.d.ts +38 -8
  14. package/Charting/ChartModifiers/PinchZoomModifier.js +103 -40
  15. package/Charting/ChartModifiers/RolloverModifier.js +10 -3
  16. package/Charting/ChartModifiers/RubberBandXyZoomModifier.d.ts +4 -7
  17. package/Charting/ChartModifiers/RubberBandXyZoomModifier.js +6 -8
  18. package/Charting/ChartModifiers/SeriesSelectionModifier.js +39 -29
  19. package/Charting/ChartModifiers/XAxisDragModifier.d.ts +1 -1
  20. package/Charting/ChartModifiers/XAxisDragModifier.js +3 -3
  21. package/Charting/ChartModifiers/YAxisDragModifier.d.ts +2 -4
  22. package/Charting/ChartModifiers/YAxisDragModifier.js +7 -8
  23. package/Charting/ChartModifiers/ZoomPanModifier.d.ts +13 -38
  24. package/Charting/ChartModifiers/ZoomPanModifier.js +54 -99
  25. package/Charting/Drawing/BaseCache.d.ts +2 -1
  26. package/Charting/Drawing/BaseCache.js +45 -7
  27. package/Charting/Drawing/RenderSurface.d.ts +1 -0
  28. package/Charting/Drawing/RenderSurface.js +5 -1
  29. package/Charting/Drawing/SolidBrushCache.d.ts +2 -1
  30. package/Charting/Drawing/SolidBrushCache.js +23 -3
  31. package/Charting/Drawing/WebGlBrush.d.ts +2 -1
  32. package/Charting/Drawing/WebGlBrush.js +22 -3
  33. package/Charting/Drawing/WebGlPen.d.ts +2 -1
  34. package/Charting/Drawing/WebGlPen.js +23 -4
  35. package/Charting/Drawing/WebGlRenderContext2D.d.ts +4 -3
  36. package/Charting/Drawing/WebGlRenderContext2D.js +26 -7
  37. package/Charting/Model/BaseDataSeries.d.ts +67 -2
  38. package/Charting/Model/BaseDataSeries.js +193 -42
  39. package/Charting/Model/BaseHeatmapDataSeries.js +1 -1
  40. package/Charting/Model/ChartData/SeriesInfo.d.ts +16 -0
  41. package/Charting/Model/ChartData/SeriesInfo.js +7 -0
  42. package/Charting/Model/ChartData/XyzSeriesInfo.d.ts +8 -0
  43. package/Charting/Model/ChartData/XyzSeriesInfo.js +36 -0
  44. package/Charting/Model/DoubleVectorProvider.d.ts +19 -0
  45. package/Charting/Model/DoubleVectorProvider.js +95 -0
  46. package/Charting/Model/Filters/HlcFilterBase.d.ts +6 -2
  47. package/Charting/Model/Filters/HlcFilterBase.js +17 -1
  48. package/Charting/Model/Filters/IFilterBase.d.ts +24 -0
  49. package/Charting/Model/Filters/IFilterBase.js +2 -0
  50. package/Charting/Model/Filters/OhlcFilterBase.d.ts +6 -2
  51. package/Charting/Model/Filters/OhlcFilterBase.js +17 -1
  52. package/Charting/Model/Filters/XyFilterBase.d.ts +6 -5
  53. package/Charting/Model/Filters/XyFilterBase.js +17 -1
  54. package/Charting/Model/Filters/XyyFilterBase.d.ts +6 -2
  55. package/Charting/Model/Filters/XyyFilterBase.js +17 -1
  56. package/Charting/Model/Filters/XyzFilterBase.d.ts +6 -2
  57. package/Charting/Model/Filters/XyzFilterBase.js +17 -1
  58. package/Charting/Model/HlcDataSeries.d.ts +3 -0
  59. package/Charting/Model/HlcDataSeries.js +44 -15
  60. package/Charting/Model/IDataSeries.d.ts +23 -0
  61. package/Charting/Model/NonUniformHeatmapDataSeries.js +2 -0
  62. package/Charting/Model/OhlcDataSeries.d.ts +3 -0
  63. package/Charting/Model/OhlcDataSeries.js +56 -24
  64. package/Charting/Model/PointSeries/BasePointSeriesResampled.d.ts +4 -5
  65. package/Charting/Model/PointSeries/BasePointSeriesResampled.js +29 -21
  66. package/Charting/Model/PointSeries/BasePointSeriesWrapped.d.ts +2 -0
  67. package/Charting/Model/PointSeries/BasePointSeriesWrapped.js +2 -0
  68. package/Charting/Model/PointSeries/IPointSeries.d.ts +2 -1
  69. package/Charting/Model/PointSeries/OhlcPointSeriesResampled.js +1 -1
  70. package/Charting/Model/PointSeries/XyPointSeriesWrapped.d.ts +2 -1
  71. package/Charting/Model/PointSeries/XyPointSeriesWrapped.js +2 -2
  72. package/Charting/Model/PointSeries/XyyPointSeriesResampled.js +1 -1
  73. package/Charting/Model/UniformHeatmapDataSeries.d.ts +31 -11
  74. package/Charting/Model/UniformHeatmapDataSeries.js +72 -4
  75. package/Charting/Model/XyDataSeries.d.ts +0 -8
  76. package/Charting/Model/XyDataSeries.js +21 -5
  77. package/Charting/Model/XyTextDataSeries.d.ts +2 -0
  78. package/Charting/Model/XyTextDataSeries.js +35 -4
  79. package/Charting/Model/XyyDataSeries.d.ts +2 -0
  80. package/Charting/Model/XyyDataSeries.js +50 -26
  81. package/Charting/Model/XyzDataSeries.d.ts +3 -0
  82. package/Charting/Model/XyzDataSeries.js +36 -10
  83. package/Charting/Numerics/CoordinateCalculators/CategoryCoordinateCalculator.d.ts +3 -5
  84. package/Charting/Numerics/CoordinateCalculators/CategoryCoordinateCalculator.js +5 -7
  85. package/Charting/Numerics/CoordinateCalculators/CoordinateCalculatorBase.d.ts +2 -1
  86. package/Charting/Numerics/CoordinateCalculators/CoordinateCalculatorBase.js +29 -9
  87. package/Charting/Numerics/CoordinateCalculators/FlippedCategoryCoordinateCalculator.d.ts +3 -5
  88. package/Charting/Numerics/CoordinateCalculators/FlippedCategoryCoordinateCalculator.js +5 -7
  89. package/Charting/Numerics/Resamplers/ExtremeResamplerHelper.d.ts +14 -10
  90. package/Charting/Numerics/Resamplers/ExtremeResamplerHelper.js +105 -69
  91. package/Charting/Numerics/Resamplers/ResamplingParams.d.ts +4 -2
  92. package/Charting/Numerics/Resamplers/ResamplingParams.js +12 -7
  93. package/Charting/Numerics/TickCoordinateProviders/TickCoordinatesProvider.d.ts +5 -0
  94. package/Charting/Numerics/TickCoordinateProviders/TickCoordinatesProvider.js +7 -0
  95. package/Charting/Numerics/TickProviders/NumericTickProvider.js +3 -4
  96. package/Charting/Numerics/TickProviders/TickProvider.d.ts +5 -0
  97. package/Charting/Numerics/TickProviders/TickProvider.js +7 -0
  98. package/Charting/Services/SciChartRenderer.js +15 -5
  99. package/Charting/Services/TitleRenderer.d.ts +2 -1
  100. package/Charting/Services/TitleRenderer.js +35 -14
  101. package/Charting/Visuals/Annotations/AdornerLayer.d.ts +1 -1
  102. package/Charting/Visuals/Annotations/AnnotationBase.d.ts +6 -6
  103. package/Charting/Visuals/Annotations/AnnotationBase.js +81 -61
  104. package/Charting/Visuals/Annotations/CursorTooltipSvgAnnotation.js +4 -0
  105. package/Charting/Visuals/Annotations/IAnnotation.d.ts +9 -4
  106. package/Charting/Visuals/Annotations/IAnnotation.js +6 -0
  107. package/Charting/Visuals/Annotations/LineAnnotation.js +3 -1
  108. package/Charting/Visuals/Annotations/NativeTextAnnotation.js +4 -0
  109. package/Charting/Visuals/Annotations/RenderContextAnnotationBase.d.ts +5 -0
  110. package/Charting/Visuals/Annotations/RenderContextAnnotationBase.js +16 -0
  111. package/Charting/Visuals/Annotations/RolloverTooltipSvgAnnotation.js +6 -0
  112. package/Charting/Visuals/Annotations/constants.d.ts +1 -0
  113. package/Charting/Visuals/Annotations/constants.js +1 -0
  114. package/Charting/Visuals/Axis/AxisBase2D.d.ts +23 -8
  115. package/Charting/Visuals/Axis/AxisBase2D.js +46 -10
  116. package/Charting/Visuals/Axis/AxisCore.d.ts +6 -3
  117. package/Charting/Visuals/Axis/AxisCore.js +100 -54
  118. package/Charting/Visuals/Axis/AxisRenderer.d.ts +2 -1
  119. package/Charting/Visuals/Axis/AxisRenderer.js +40 -16
  120. package/Charting/Visuals/Axis/AxisTitleRenderer.d.ts +1 -0
  121. package/Charting/Visuals/Axis/AxisTitleRenderer.js +4 -0
  122. package/Charting/Visuals/Axis/CategoryAxisBase.js +4 -4
  123. package/Charting/Visuals/Axis/DeltaCalculator/DateTimeDeltaCalculator.js +14 -9
  124. package/Charting/Visuals/Axis/DeltaCalculator/DeltaCalculator.d.ts +5 -0
  125. package/Charting/Visuals/Axis/DeltaCalculator/DeltaCalculator.js +7 -0
  126. package/Charting/Visuals/Axis/LabelProvider/LabelCache.d.ts +2 -2
  127. package/Charting/Visuals/Axis/LabelProvider/LabelCache.js +8 -1
  128. package/Charting/Visuals/Axis/LabelProvider/LabelProvider.d.ts +7 -1
  129. package/Charting/Visuals/Axis/LabelProvider/LabelProvider.js +34 -8
  130. package/Charting/Visuals/Axis/LabelProvider/LabelProviderBase2D.d.ts +4 -2
  131. package/Charting/Visuals/Axis/LabelProvider/LabelProviderBase2D.js +8 -2
  132. package/Charting/Visuals/Axis/LabelProvider/PieLabelProvider.d.ts +1 -0
  133. package/Charting/Visuals/Axis/LabelProvider/PieLabelProvider.js +1 -0
  134. package/Charting/Visuals/HeatmapLegend.d.ts +3 -2
  135. package/Charting/Visuals/HeatmapLegend.js +33 -12
  136. package/Charting/Visuals/Helpers/NativeObject.d.ts +8 -5
  137. package/Charting/Visuals/Helpers/NativeObject.js +42 -21
  138. package/Charting/Visuals/Helpers/drawLabel.js +3 -1
  139. package/Charting/Visuals/I2DSurfaceOptions.d.ts +0 -15
  140. package/Charting/Visuals/Legend/ManualLegend.d.ts +56 -0
  141. package/Charting/Visuals/Legend/ManualLegend.js +138 -0
  142. package/Charting/Visuals/Legend/SciChartLegend.js +4 -3
  143. package/Charting/Visuals/Legend/SciChartLegendBase.d.ts +65 -4
  144. package/Charting/Visuals/Legend/SciChartLegendBase.js +111 -23
  145. package/Charting/Visuals/Legend/SciChartPieLegend.js +1 -1
  146. package/Charting/Visuals/PointMarkers/BasePointMarker.d.ts +13 -1
  147. package/Charting/Visuals/PointMarkers/BasePointMarker.js +77 -19
  148. package/Charting/Visuals/PointMarkers/Constants.d.ts +2 -1
  149. package/Charting/Visuals/PointMarkers/Constants.js +1 -0
  150. package/Charting/Visuals/PointMarkers/IPointMarker.d.ts +2 -0
  151. package/Charting/Visuals/RenderableSeries/Animations/SeriesAnimation.js +4 -1
  152. package/Charting/Visuals/RenderableSeries/Animations/animationHelpers.d.ts +1 -1
  153. package/Charting/Visuals/RenderableSeries/BaseBandRenderableSeries.js +8 -7
  154. package/Charting/Visuals/RenderableSeries/BaseHeatmapRenderableSeries.d.ts +1 -0
  155. package/Charting/Visuals/RenderableSeries/BaseHeatmapRenderableSeries.js +5 -0
  156. package/Charting/Visuals/RenderableSeries/BaseOhlcRenderableSeries.js +10 -9
  157. package/Charting/Visuals/RenderableSeries/BaseRenderableSeries.d.ts +3 -2
  158. package/Charting/Visuals/RenderableSeries/BaseRenderableSeries.js +101 -69
  159. package/Charting/Visuals/RenderableSeries/BaseStackedCollection.js +18 -4
  160. package/Charting/Visuals/RenderableSeries/BaseStackedRenderableSeries.js +12 -3
  161. package/Charting/Visuals/RenderableSeries/DataLabels/BaseDataLabelProvider.d.ts +2 -0
  162. package/Charting/Visuals/RenderableSeries/DataLabels/BaseDataLabelProvider.js +5 -0
  163. package/Charting/Visuals/RenderableSeries/DataLabels/DataLabelProvider.js +6 -0
  164. package/Charting/Visuals/RenderableSeries/DataLabels/DataLabelState.d.ts +1 -0
  165. package/Charting/Visuals/RenderableSeries/DataLabels/DataLabelState.js +18 -5
  166. package/Charting/Visuals/RenderableSeries/DataLabels/NonUniformHeatmapDataLabelProvider.js +0 -1
  167. package/Charting/Visuals/RenderableSeries/DataLabels/TextDataLabelProvider.js +8 -2
  168. package/Charting/Visuals/RenderableSeries/DrawingProviders/BandSeriesDrawingProvider.d.ts +1 -0
  169. package/Charting/Visuals/RenderableSeries/DrawingProviders/BandSeriesDrawingProvider.js +35 -16
  170. package/Charting/Visuals/RenderableSeries/DrawingProviders/BaseSeriesDrawingProvider.d.ts +5 -4
  171. package/Charting/Visuals/RenderableSeries/DrawingProviders/BaseSeriesDrawingProvider.js +70 -33
  172. package/Charting/Visuals/RenderableSeries/DrawingProviders/BubbleSeriesDrawingProvider.d.ts +1 -0
  173. package/Charting/Visuals/RenderableSeries/DrawingProviders/BubbleSeriesDrawingProvider.js +30 -9
  174. package/Charting/Visuals/RenderableSeries/DrawingProviders/ColumnSeriesDrawingProvider.d.ts +1 -0
  175. package/Charting/Visuals/RenderableSeries/DrawingProviders/ColumnSeriesDrawingProvider.js +37 -16
  176. package/Charting/Visuals/RenderableSeries/DrawingProviders/HeatmapHelpers.d.ts +47 -0
  177. package/Charting/Visuals/RenderableSeries/DrawingProviders/HeatmapHelpers.js +258 -0
  178. package/Charting/Visuals/RenderableSeries/DrawingProviders/LineSeriesDrawingProvider.js +26 -2
  179. package/Charting/Visuals/RenderableSeries/DrawingProviders/MountainSeriesDrawingProvider.d.ts +1 -0
  180. package/Charting/Visuals/RenderableSeries/DrawingProviders/MountainSeriesDrawingProvider.js +34 -15
  181. package/Charting/Visuals/RenderableSeries/DrawingProviders/NonUniformHeatmapDrawingProvider.js +5 -230
  182. package/Charting/Visuals/RenderableSeries/DrawingProviders/OhlcSeriesDrawingProvider.d.ts +1 -0
  183. package/Charting/Visuals/RenderableSeries/DrawingProviders/OhlcSeriesDrawingProvider.js +62 -37
  184. package/Charting/Visuals/RenderableSeries/DrawingProviders/PointMarkerDrawingProvider.js +30 -3
  185. package/Charting/Visuals/RenderableSeries/DrawingProviders/UniformHeatmapDrawingProvider.d.ts +1 -0
  186. package/Charting/Visuals/RenderableSeries/DrawingProviders/UniformHeatmapDrawingProvider.js +4 -1
  187. package/Charting/Visuals/RenderableSeries/FastBubbleRenderableSeries.d.ts +0 -2
  188. package/Charting/Visuals/RenderableSeries/FastBubbleRenderableSeries.js +0 -4
  189. package/Charting/Visuals/RenderableSeries/FastTextRenderableSeries.d.ts +3 -0
  190. package/Charting/Visuals/RenderableSeries/FastTextRenderableSeries.js +10 -0
  191. package/Charting/Visuals/RenderableSeries/HitTest/BubbleSeriesHitTestProvider.d.ts +4 -0
  192. package/Charting/Visuals/RenderableSeries/HitTest/BubbleSeriesHitTestProvider.js +7 -0
  193. package/Charting/Visuals/RenderableSeries/HitTest/HitTestInfo.d.ts +4 -0
  194. package/Charting/Visuals/RenderableSeries/HitTest/HitTestInfo.js +9 -0
  195. package/Charting/Visuals/RenderableSeries/HoveredChangedArgs.d.ts +6 -1
  196. package/Charting/Visuals/RenderableSeries/HoveredChangedArgs.js +2 -1
  197. package/Charting/Visuals/RenderableSeries/IRenderableSeries.d.ts +1 -1
  198. package/Charting/Visuals/RenderableSeries/SelectionChangedArgs.d.ts +6 -1
  199. package/Charting/Visuals/RenderableSeries/SelectionChangedArgs.js +2 -1
  200. package/Charting/Visuals/RenderableSeries/ShaderEffect.d.ts +3 -2
  201. package/Charting/Visuals/RenderableSeries/ShaderEffect.js +29 -9
  202. package/Charting/Visuals/RenderableSeries/SplineBandRenderableSeries.js +50 -1
  203. package/Charting/Visuals/RenderableSeries/SplineLineRenderableSeries.js +13 -1
  204. package/Charting/Visuals/RenderableSeries/SplineMountainRenderableSeries.js +13 -1
  205. package/Charting/Visuals/RenderableSeries/StackedColumnCollection.js +3 -0
  206. package/Charting/Visuals/RenderableSeries/StackedMountainCollection.d.ts +0 -2
  207. package/Charting/Visuals/RenderableSeries/StackedMountainCollection.js +4 -4
  208. package/Charting/Visuals/RenderableSeries/StackedMountainRenderableSeries.d.ts +1 -0
  209. package/Charting/Visuals/RenderableSeries/StackedMountainRenderableSeries.js +8 -0
  210. package/Charting/Visuals/RenderableSeries/XyScatterRenderableSeries.d.ts +1 -2
  211. package/Charting/Visuals/RenderableSeries/XyScatterRenderableSeries.js +8 -3
  212. package/Charting/Visuals/RubberBandSvgRect/RubberBandSvgRect.d.ts +7 -1
  213. package/Charting/Visuals/RubberBandSvgRect/RubberBandSvgRect.js +38 -12
  214. package/Charting/Visuals/SciChartDefaults.d.ts +10 -0
  215. package/Charting/Visuals/SciChartDefaults.js +10 -0
  216. package/Charting/Visuals/SciChartOverview.d.ts +2 -1
  217. package/Charting/Visuals/SciChartOverview.js +28 -8
  218. package/Charting/Visuals/SciChartPieSurface/SciChartPieSurface.d.ts +16 -3
  219. package/Charting/Visuals/SciChartPieSurface/SciChartPieSurface.js +125 -60
  220. package/Charting/Visuals/SciChartSurface.d.ts +4 -41
  221. package/Charting/Visuals/SciChartSurface.js +52 -66
  222. package/Charting/Visuals/SciChartSurfaceBase.d.ts +117 -13
  223. package/Charting/Visuals/SciChartSurfaceBase.js +177 -32
  224. package/Charting/Visuals/TextureManager/CanvasTexture.d.ts +2 -1
  225. package/Charting/Visuals/TextureManager/CanvasTexture.js +37 -17
  226. package/Charting/Visuals/TextureManager/TextureManager.d.ts +2 -1
  227. package/Charting/Visuals/TextureManager/TextureManager.js +27 -7
  228. package/Charting/Visuals/createMaster.d.ts +7 -2
  229. package/Charting/Visuals/createMaster.js +140 -45
  230. package/Charting/Visuals/createSingle.d.ts +0 -2
  231. package/Charting/Visuals/createSingle.js +46 -11
  232. package/Charting/Visuals/licenseManager2D.d.ts +7 -5
  233. package/Charting/Visuals/licenseManager2D.js +105 -53
  234. package/Charting/Visuals/loader.js +3 -1
  235. package/Charting/Visuals/sciChartInitCommon.d.ts +1 -1
  236. package/Charting/Visuals/sciChartInitCommon.js +5 -1
  237. package/Charting3D/CameraController.d.ts +1 -1
  238. package/Charting3D/CameraController.js +21 -7
  239. package/Charting3D/ChartModifiers/ChartModifierBase3D.d.ts +1 -0
  240. package/Charting3D/ChartModifiers/ChartModifierBase3D.js +4 -1
  241. package/Charting3D/ChartModifiers/OrbitModifier3D.d.ts +17 -5
  242. package/Charting3D/ChartModifiers/OrbitModifier3D.js +62 -26
  243. package/Charting3D/ChartModifiers/PinchZoomModifier3D.d.ts +81 -0
  244. package/Charting3D/ChartModifiers/PinchZoomModifier3D.js +164 -0
  245. package/Charting3D/ChartModifiers/ResetCamera3DModifier.d.ts +1 -1
  246. package/Charting3D/ChartModifiers/ResetCamera3DModifier.js +1 -2
  247. package/Charting3D/ChartModifiers/TooltipModifier3D.d.ts +122 -0
  248. package/Charting3D/ChartModifiers/TooltipModifier3D.js +427 -0
  249. package/Charting3D/I3DSurfaceOptions.d.ts +10 -0
  250. package/Charting3D/I3DSurfaceOptions.js +2 -0
  251. package/Charting3D/Model/DataSeries/BaseDataSeries3D.d.ts +2 -1
  252. package/Charting3D/Model/DataSeries/BaseDataSeries3D.js +27 -6
  253. package/Charting3D/Model/DataSeries/BaseGridDataSeries3D.d.ts +1 -1
  254. package/Charting3D/Model/DataSeries/BaseGridDataSeries3D.js +2 -2
  255. package/Charting3D/Model/DataSeries/IPointMetadata3D.d.ts +7 -2
  256. package/Charting3D/Model/DataSeries/UniformGridDataSeries3D.d.ts +8 -0
  257. package/Charting3D/Model/DataSeries/UniformGridDataSeries3D.js +12 -0
  258. package/Charting3D/Model/DataSeries/XyzDataSeries3D.d.ts +2 -2
  259. package/Charting3D/Model/DataSeries/XyzDataSeries3D.js +1 -1
  260. package/Charting3D/Vector3.d.ts +5 -0
  261. package/Charting3D/Vector3.js +7 -0
  262. package/Charting3D/Visuals/Annotations/TooltipSvgAnnotation3D.d.ts +88 -0
  263. package/Charting3D/Visuals/Annotations/TooltipSvgAnnotation3D.js +291 -0
  264. package/Charting3D/Visuals/Axis/AxisBase3D.d.ts +29 -3
  265. package/Charting3D/Visuals/Axis/AxisBase3D.js +46 -18
  266. package/Charting3D/Visuals/Axis/AxisBase3DLabelStyle.js +2 -1
  267. package/Charting3D/Visuals/Axis/AxisCubeEntity.d.ts +0 -4
  268. package/Charting3D/Visuals/Axis/AxisCubeEntity.js +3 -6
  269. package/Charting3D/Visuals/Axis/IAxisDescriptor.d.ts +2 -2
  270. package/Charting3D/Visuals/Axis/IAxisDescriptor.js +2 -2
  271. package/Charting3D/Visuals/Axis/NumericAxis3D.d.ts +3 -2
  272. package/Charting3D/Visuals/Axis/NumericAxis3D.js +7 -3
  273. package/Charting3D/Visuals/Primitives/BaseSceneEntity3D.d.ts +41 -30
  274. package/Charting3D/Visuals/Primitives/BaseSceneEntity3D.js +78 -26
  275. package/Charting3D/Visuals/Primitives/CrosshairLinesSceneEntity.d.ts +47 -0
  276. package/Charting3D/Visuals/Primitives/CrosshairLinesSceneEntity.js +106 -0
  277. package/Charting3D/Visuals/Primitives/EntityIdProvider.d.ts +29 -0
  278. package/Charting3D/Visuals/Primitives/EntityIdProvider.js +28 -0
  279. package/Charting3D/Visuals/Primitives/PointLine3DSceneEntity.d.ts +51 -0
  280. package/Charting3D/Visuals/Primitives/PointLine3DSceneEntity.js +190 -0
  281. package/Charting3D/Visuals/Primitives/RenderableSeriesSceneEntity.d.ts +12 -0
  282. package/Charting3D/Visuals/Primitives/RenderableSeriesSceneEntity.js +14 -0
  283. package/Charting3D/Visuals/Primitives/ScatterPointsSceneEntity.d.ts +11 -0
  284. package/Charting3D/Visuals/Primitives/ScatterPointsSceneEntity.js +23 -2
  285. package/Charting3D/Visuals/Primitives/SurfaceMeshSceneEntity.d.ts +3 -0
  286. package/Charting3D/Visuals/Primitives/SurfaceMeshSceneEntity.js +17 -1
  287. package/Charting3D/Visuals/RenderableSeries/BaseRenderableSeries3D.d.ts +21 -1
  288. package/Charting3D/Visuals/RenderableSeries/BaseRenderableSeries3D.js +78 -12
  289. package/Charting3D/Visuals/RenderableSeries/Constants.d.ts +2 -0
  290. package/Charting3D/Visuals/RenderableSeries/Constants.js +2 -0
  291. package/Charting3D/Visuals/RenderableSeries/ESeriesType.d.ts +2 -1
  292. package/Charting3D/Visuals/RenderableSeries/ESeriesType.js +1 -0
  293. package/Charting3D/Visuals/RenderableSeries/HitTestInfo3D.d.ts +37 -0
  294. package/Charting3D/Visuals/RenderableSeries/HitTestInfo3D.js +22 -0
  295. package/Charting3D/Visuals/RenderableSeries/PointLineRenderableSeries3D.d.ts +64 -0
  296. package/Charting3D/Visuals/RenderableSeries/PointLineRenderableSeries3D.js +105 -0
  297. package/Charting3D/Visuals/RenderableSeries/SeriesInfo3D.d.ts +51 -0
  298. package/Charting3D/Visuals/RenderableSeries/SeriesInfo3D.js +32 -0
  299. package/Charting3D/Visuals/RenderableSeries/SurfaceMeshSeriesInfo3D.d.ts +15 -0
  300. package/Charting3D/Visuals/RenderableSeries/SurfaceMeshSeriesInfo3D.js +112 -0
  301. package/Charting3D/Visuals/RenderableSeries/XyzSeriesInfo3D.d.ts +20 -0
  302. package/Charting3D/Visuals/RenderableSeries/XyzSeriesInfo3D.js +60 -0
  303. package/Charting3D/Visuals/RootSceneEntity.d.ts +0 -4
  304. package/Charting3D/Visuals/RootSceneEntity.js +3 -8
  305. package/Charting3D/Visuals/SciChart3DRenderer.d.ts +1 -0
  306. package/Charting3D/Visuals/SciChart3DRenderer.js +26 -0
  307. package/Charting3D/Visuals/SciChart3DSurface.d.ts +55 -7
  308. package/Charting3D/Visuals/SciChart3DSurface.js +136 -13
  309. package/Charting3D/Visuals/ViewportManager3DBase.d.ts +4 -0
  310. package/Charting3D/Visuals/ViewportManager3DBase.js +7 -1
  311. package/Charting3D/Visuals/createMaster3d.d.ts +1 -2
  312. package/Charting3D/Visuals/createMaster3d.js +81 -14
  313. package/Charting3D/Visuals/createSingle3d.js +34 -4
  314. package/Charting3D/Visuals/licenseManager3D.js +29 -25
  315. package/Core/BuildStamp.d.ts +1 -1
  316. package/Core/BuildStamp.js +2 -2
  317. package/Core/DeletableEntity.d.ts +34 -0
  318. package/Core/DeletableEntity.js +138 -0
  319. package/Core/Globals.d.ts +11 -0
  320. package/Core/Globals.js +13 -0
  321. package/Core/Guard.d.ts +6 -0
  322. package/Core/Guard.js +10 -0
  323. package/Core/Mouse/MouseManager.d.ts +23 -0
  324. package/Core/Mouse/MouseManager.js +53 -0
  325. package/Core/Telemetry.js +4 -6
  326. package/_wasm/scichart.browser.js +1 -1
  327. package/_wasm/scichart2d.data +0 -0
  328. package/_wasm/scichart2d.js +4 -294
  329. package/_wasm/scichart2d.wasm +0 -0
  330. package/_wasm/scichart3d.data +0 -0
  331. package/_wasm/scichart3d.js +4 -294
  332. package/_wasm/scichart3d.wasm +0 -0
  333. package/index.d.ts +42 -2
  334. package/index.dev.js +68876 -0
  335. package/index.js +81 -27
  336. package/index.min.js +1 -1
  337. package/package.json +3 -4
  338. package/types/ChartModifierType.d.ts +2 -0
  339. package/types/ChartModifierType.js +2 -0
  340. package/types/DefaultRenderLayer.d.ts +9 -8
  341. package/types/DefaultRenderLayer.js +9 -8
  342. package/types/NumberArray.d.ts +1 -0
  343. package/types/NumberArray.js +12 -1
  344. package/types/SceneEntityType.d.ts +13 -5
  345. package/types/SceneEntityType.js +13 -5
  346. package/types/TSciChart.d.ts +37 -8
  347. package/types/TSciChart3D.d.ts +126 -7
  348. package/types/licensingClasses.d.ts +2 -1
  349. package/types/licensingClasses.js +1 -0
  350. package/utils/MemoryUsageHelper.d.ts +92 -0
  351. package/utils/MemoryUsageHelper.js +221 -0
  352. package/utils/array.d.ts +8 -0
  353. package/utils/array.js +58 -1
  354. package/utils/colorUtil.d.ts +7 -0
  355. package/utils/colorUtil.js +13 -1
  356. package/utils/logger.d.ts +2 -0
  357. package/utils/logger.js +11 -0
  358. package/utils/parseColor.js +19 -4
@@ -0,0 +1,37 @@
1
+ import { Point } from "../../../Core/Point";
2
+ import { IRenderableSeries3D } from "./BaseRenderableSeries3D";
3
+ /**
4
+ * A non-enriched Hit-Test result (intermediate step) when calling {@link BaseRenderableSeries3D.hitTest}.
5
+ * See {@link SeriesInfo3D} for the enriched result.
6
+ */
7
+ export declare class HitTestInfo3D {
8
+ /**
9
+ * The default empty {@link HitTestInfo3D} instance
10
+ */
11
+ static empty(): HitTestInfo3D;
12
+ /**
13
+ * Gets the associated series that this {@link HitTestInfo3D} was generated by
14
+ */
15
+ readonly associatedSeries: IRenderableSeries3D;
16
+ /**
17
+ * When true, the {@link HitTestInfo3D} is empty
18
+ */
19
+ readonly isEmpty: boolean;
20
+ /**
21
+ * A screen-coordinate point where hit test is performed premultiplied by {@link DpiHelper.PIXEL_RATIO}
22
+ */
23
+ hitTestPoint: Point;
24
+ /**
25
+ * When true, the {@link hitTestPoint} (mouse point) was over an object in the 3D scene
26
+ */
27
+ isHit: boolean;
28
+ /**
29
+ * The selection index provided by SciChart's 3D Engine.
30
+ */
31
+ selectionIndex: number;
32
+ /**
33
+ * i,j selection index provided by SciChart's 3D Engine.
34
+ */
35
+ selectionIjIndices: Point;
36
+ constructor(renderableSeries: IRenderableSeries3D, isEmpty?: boolean);
37
+ }
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HitTestInfo3D = void 0;
4
+ /**
5
+ * A non-enriched Hit-Test result (intermediate step) when calling {@link BaseRenderableSeries3D.hitTest}.
6
+ * See {@link SeriesInfo3D} for the enriched result.
7
+ */
8
+ var HitTestInfo3D = /** @class */ (function () {
9
+ function HitTestInfo3D(renderableSeries, isEmpty) {
10
+ if (isEmpty === void 0) { isEmpty = false; }
11
+ this.isEmpty = isEmpty;
12
+ this.associatedSeries = renderableSeries;
13
+ }
14
+ /**
15
+ * The default empty {@link HitTestInfo3D} instance
16
+ */
17
+ HitTestInfo3D.empty = function () {
18
+ return new HitTestInfo3D(undefined, true);
19
+ };
20
+ return HitTestInfo3D;
21
+ }());
22
+ exports.HitTestInfo3D = HitTestInfo3D;
@@ -0,0 +1,64 @@
1
+ import { TSciChart3D } from "../../../types/TSciChart3D";
2
+ import { BaseRenderableSeries3D, IBaseRenderableSeries3DOptions } from "./BaseRenderableSeries3D";
3
+ import { ESeriesType3D } from "./ESeriesType";
4
+ export interface IPointLineRenderableSeries3DOptions extends IBaseRenderableSeries3DOptions {
5
+ /**
6
+ * The strokethickness of the 3D line series in world units. Set a strokeThickness of 0 to hide the line
7
+ */
8
+ strokeThickness?: number;
9
+ /**
10
+ * When true, creates a polyline, else each pair of points in {@link XyzDataSeries3D} will be connected with a line with a break before the next pair. Default true
11
+ */
12
+ isLineStrip?: boolean;
13
+ /**
14
+ * When true, the line will be anti-aliased. Default true
15
+ */
16
+ isAntiAliased?: boolean;
17
+ }
18
+ /**
19
+ * Defines a 3D poine-line series or 3D line chart type in the SciChart's High Performance Real-time
20
+ * {@link https://www.scichart.com/javascript-chart-features | JavaScript 3D Charts}
21
+ * @remarks
22
+ * To add a 3D line series to a {@link SciChart3DSurface} you need to declare both the {@link PointLineRenderableSeries3D}
23
+ * and a {@link XyzDataSeries3D}. Simplified code sample below:
24
+ *
25
+ * ```ts
26
+ * const sciChart3DSurface: SciChart3DSurface;
27
+ * const wasmContext: TSciChart3D;
28
+ * // Create and fill the dataseries
29
+ * const dataSeries = new XyzDataSeries3D(wasmContext);
30
+ * dataSeries.append(1,2,3);
31
+ * dataSeries.append(3,4,5);
32
+ * // Create the renderableSeries
33
+ * const lineSeries3D = new PointLineRenderableSeries3D(wasmContext);
34
+ * lineSeries3D.dataSeries = dataSeries;
35
+ * lineSeries3D.pointMarker = new SpherePointMarker3D(wasmContext, {
36
+ * size: 3,
37
+ * fill: "#FF0000"
38
+ * });
39
+ * // append to the SciChartSurface
40
+ * sciChart3DSurface.renderableSeries.add(lineSeries3D);
41
+ * ```
42
+ */
43
+ export declare class PointLineRenderableSeries3D extends BaseRenderableSeries3D {
44
+ /**
45
+ * @inheritDoc
46
+ */
47
+ readonly type: ESeriesType3D;
48
+ private strokeThicknessProperty;
49
+ private isLineStripProperty;
50
+ private isAntiAliasedProperty;
51
+ /**
52
+ * Creates an instance of a {@link PointLineRenderableSeries3D}
53
+ * @param webAssemblyContext The {@link TSciChart3D | SciChart 3D WebAssembly Context} containing
54
+ * native methods and access to our WebGL2 WebAssembly Drawing Engine
55
+ * @param options Optional parameters of type {@link IBaseRenderableSeries3DOptions} to configure the series
56
+ */
57
+ constructor(webAssemblyContext: TSciChart3D, options?: IPointLineRenderableSeries3DOptions);
58
+ get strokeThickness(): number;
59
+ set strokeThickness(value: number);
60
+ get isLineStrip(): boolean;
61
+ set isLineStrip(value: boolean);
62
+ get isAntiAliased(): boolean;
63
+ set isAntiAliased(value: boolean);
64
+ }
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.PointLineRenderableSeries3D = void 0;
19
+ var PointLine3DSceneEntity_1 = require("../Primitives/PointLine3DSceneEntity");
20
+ var BaseRenderableSeries3D_1 = require("./BaseRenderableSeries3D");
21
+ var Constants_1 = require("./Constants");
22
+ var ESeriesType_1 = require("./ESeriesType");
23
+ /**
24
+ * Defines a 3D poine-line series or 3D line chart type in the SciChart's High Performance Real-time
25
+ * {@link https://www.scichart.com/javascript-chart-features | JavaScript 3D Charts}
26
+ * @remarks
27
+ * To add a 3D line series to a {@link SciChart3DSurface} you need to declare both the {@link PointLineRenderableSeries3D}
28
+ * and a {@link XyzDataSeries3D}. Simplified code sample below:
29
+ *
30
+ * ```ts
31
+ * const sciChart3DSurface: SciChart3DSurface;
32
+ * const wasmContext: TSciChart3D;
33
+ * // Create and fill the dataseries
34
+ * const dataSeries = new XyzDataSeries3D(wasmContext);
35
+ * dataSeries.append(1,2,3);
36
+ * dataSeries.append(3,4,5);
37
+ * // Create the renderableSeries
38
+ * const lineSeries3D = new PointLineRenderableSeries3D(wasmContext);
39
+ * lineSeries3D.dataSeries = dataSeries;
40
+ * lineSeries3D.pointMarker = new SpherePointMarker3D(wasmContext, {
41
+ * size: 3,
42
+ * fill: "#FF0000"
43
+ * });
44
+ * // append to the SciChartSurface
45
+ * sciChart3DSurface.renderableSeries.add(lineSeries3D);
46
+ * ```
47
+ */
48
+ var PointLineRenderableSeries3D = /** @class */ (function (_super) {
49
+ __extends(PointLineRenderableSeries3D, _super);
50
+ /**
51
+ * Creates an instance of a {@link PointLineRenderableSeries3D}
52
+ * @param webAssemblyContext The {@link TSciChart3D | SciChart 3D WebAssembly Context} containing
53
+ * native methods and access to our WebGL2 WebAssembly Drawing Engine
54
+ * @param options Optional parameters of type {@link IBaseRenderableSeries3DOptions} to configure the series
55
+ */
56
+ function PointLineRenderableSeries3D(webAssemblyContext, options) {
57
+ var _this = this;
58
+ var _a, _b, _c;
59
+ _this = _super.call(this, webAssemblyContext, options) || this;
60
+ /**
61
+ * @inheritDoc
62
+ */
63
+ _this.type = ESeriesType_1.ESeriesType3D.PointLineRenderableSeries3D;
64
+ _this.strokeThicknessProperty = (_a = options === null || options === void 0 ? void 0 : options.strokeThickness) !== null && _a !== void 0 ? _a : 2;
65
+ _this.isLineStripProperty = (_b = options === null || options === void 0 ? void 0 : options.isLineStrip) !== null && _b !== void 0 ? _b : true;
66
+ _this.isAntiAliasedProperty = (_c = options === null || options === void 0 ? void 0 : options.isAntiAliased) !== null && _c !== void 0 ? _c : true;
67
+ _this.setSceneEntity(new PointLine3DSceneEntity_1.PointLine3DSceneEntity(webAssemblyContext, _this));
68
+ return _this;
69
+ }
70
+ Object.defineProperty(PointLineRenderableSeries3D.prototype, "strokeThickness", {
71
+ get: function () {
72
+ return this.strokeThicknessProperty;
73
+ },
74
+ set: function (value) {
75
+ this.strokeThicknessProperty = value;
76
+ this.notifyPropertyChanged(Constants_1.PROPERTY.STROKE_THICKNESS);
77
+ },
78
+ enumerable: false,
79
+ configurable: true
80
+ });
81
+ Object.defineProperty(PointLineRenderableSeries3D.prototype, "isLineStrip", {
82
+ get: function () {
83
+ return this.isLineStripProperty;
84
+ },
85
+ set: function (value) {
86
+ this.isLineStripProperty = value;
87
+ this.notifyPropertyChanged(Constants_1.PROPERTY.IS_LINE_STRIP);
88
+ },
89
+ enumerable: false,
90
+ configurable: true
91
+ });
92
+ Object.defineProperty(PointLineRenderableSeries3D.prototype, "isAntiAliased", {
93
+ get: function () {
94
+ return this.isAntiAliasedProperty;
95
+ },
96
+ set: function (value) {
97
+ this.isAntiAliasedProperty = value;
98
+ this.notifyPropertyChanged(Constants_1.PROPERTY.IS_ANTIALIASED);
99
+ },
100
+ enumerable: false,
101
+ configurable: true
102
+ });
103
+ return PointLineRenderableSeries3D;
104
+ }(BaseRenderableSeries3D_1.BaseRenderableSeries3D));
105
+ exports.PointLineRenderableSeries3D = PointLineRenderableSeries3D;
@@ -0,0 +1,51 @@
1
+ import { EDataSeriesType3D } from "../../Model/DataSeries/BaseDataSeries3D";
2
+ import { Vector3 } from "../../Vector3";
3
+ import { IRenderableSeries3D } from "./BaseRenderableSeries3D";
4
+ import { HitTestInfo3D } from "./HitTestInfo3D";
5
+ /**
6
+ * SeriesInfo3D is a data-structure which provides enriched information about a hit-test operation in SciChart 3D.
7
+ * It's derived by calling {@link BaseRenderableSeries3D.hitTest}. There is a class hierachy for {@link SeriesInfo3D} which
8
+ * is a different class depending on series type, e.g. 3D Scatter series has {@link XyzSeriesInfo3D},
9
+ * 3D Surface mesh series has {@link SurfaceMeshSeriesInfo3D} etc.
10
+ */
11
+ export declare class SeriesInfo3D {
12
+ /**
13
+ * The default empty {@link HitTestInfo3D} instance
14
+ */
15
+ static empty(): SeriesInfo3D;
16
+ /**
17
+ * When true, the {@link SeriesInfo3D} is empty
18
+ */
19
+ isEmpty: boolean;
20
+ /**
21
+ * When {@link isHit} is true, this is the X-value of the data-point in the {@link XyzDataSeries3D} that was hit
22
+ */
23
+ xValue: number;
24
+ /**
25
+ * When {@link isHit} is true, this is the Y-value of the data-point in the {@link XyzDataSeries3D} that was hit
26
+ */
27
+ yValue: number;
28
+ /**
29
+ * When {@link isHit} is true, this is the Z-value of the data-point in the {@link XyzDataSeries3D} that was hit
30
+ */
31
+ zValue: number;
32
+ /**
33
+ * When {@link isHit} is true, this is the {@link Vector3} 3D World Coordinates of the data-point that was hit
34
+ */
35
+ hitWorldCoords: Vector3;
36
+ /**
37
+ * The name of the associated {@link BaseDataSeries3D | DataSeries}
38
+ */
39
+ dataSeriesName: string;
40
+ dataSeriesType: EDataSeriesType3D;
41
+ /**
42
+ * The associated {@link IRenderableSeries3D | RenderableSeries}
43
+ */
44
+ renderableSeries: IRenderableSeries3D;
45
+ /**
46
+ * When true, the result of the hit-test operation is hit (mouse over data-point)
47
+ */
48
+ isHit: boolean;
49
+ protected hitTestInfo: HitTestInfo3D;
50
+ constructor(series: IRenderableSeries3D, hitTestInfo: HitTestInfo3D);
51
+ }
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SeriesInfo3D = void 0;
4
+ /**
5
+ * SeriesInfo3D is a data-structure which provides enriched information about a hit-test operation in SciChart 3D.
6
+ * It's derived by calling {@link BaseRenderableSeries3D.hitTest}. There is a class hierachy for {@link SeriesInfo3D} which
7
+ * is a different class depending on series type, e.g. 3D Scatter series has {@link XyzSeriesInfo3D},
8
+ * 3D Surface mesh series has {@link SurfaceMeshSeriesInfo3D} etc.
9
+ */
10
+ var SeriesInfo3D = /** @class */ (function () {
11
+ function SeriesInfo3D(series, hitTestInfo) {
12
+ var _a;
13
+ /**
14
+ * When true, the {@link SeriesInfo3D} is empty
15
+ */
16
+ this.isEmpty = false;
17
+ this.renderableSeries = series;
18
+ this.dataSeriesName = (_a = series === null || series === void 0 ? void 0 : series.dataSeries) === null || _a === void 0 ? void 0 : _a.dataSeriesName;
19
+ this.isHit = hitTestInfo.isHit;
20
+ this.hitTestInfo = hitTestInfo;
21
+ }
22
+ /**
23
+ * The default empty {@link HitTestInfo3D} instance
24
+ */
25
+ SeriesInfo3D.empty = function () {
26
+ var si = new SeriesInfo3D(undefined, undefined);
27
+ si.isEmpty = true;
28
+ return si;
29
+ };
30
+ return SeriesInfo3D;
31
+ }());
32
+ exports.SeriesInfo3D = SeriesInfo3D;
@@ -0,0 +1,15 @@
1
+ import { IRenderableSeries3D } from "./BaseRenderableSeries3D";
2
+ import { HitTestInfo3D } from "./HitTestInfo3D";
3
+ import { SeriesInfo3D } from "./SeriesInfo3D";
4
+ export declare class SurfaceMeshSeriesInfo3D extends SeriesInfo3D {
5
+ /**
6
+ * When {@link isHit} is true, this is the index to the Z-cell in the {@link UniformGridDataSeries3D} that was hit
7
+ */
8
+ zIndex: number;
9
+ /**
10
+ * When {@link isHit} is true, this is the index to the X-cell in the {@link UniformGridDataSeries3D} that was hit
11
+ */
12
+ xIndex: number;
13
+ constructor(series: IRenderableSeries3D, hitTestInfo: HitTestInfo3D);
14
+ private enrichSeriesInfo;
15
+ }
@@ -0,0 +1,112 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.SurfaceMeshSeriesInfo3D = void 0;
19
+ var pointUtil_1 = require("../../../utils/pointUtil");
20
+ var BaseDataSeries3D_1 = require("../../Model/DataSeries/BaseDataSeries3D");
21
+ var Vector3_1 = require("../../Vector3");
22
+ var SeriesInfo3D_1 = require("./SeriesInfo3D");
23
+ var SurfaceMeshSeriesInfo3D = /** @class */ (function (_super) {
24
+ __extends(SurfaceMeshSeriesInfo3D, _super);
25
+ function SurfaceMeshSeriesInfo3D(series, hitTestInfo) {
26
+ var _this = _super.call(this, series, hitTestInfo) || this;
27
+ _this.dataSeriesType = BaseDataSeries3D_1.EDataSeriesType3D.UniformGrid3D;
28
+ _this.enrichSeriesInfo();
29
+ return _this;
30
+ }
31
+ SurfaceMeshSeriesInfo3D.prototype.enrichSeriesInfo = function () {
32
+ // We know the cell that was hit. We need to get the four corners of the cell in
33
+ // data space. Then convert to world space. Then convert to screen space
34
+ // Using this, figure out which corner the pointer was closest to and report that
35
+ // as the hit-test value
36
+ if (!this.isHit || !this.renderableSeries) {
37
+ // console.log(`not a hit apparently`);
38
+ return;
39
+ }
40
+ var ds = this.renderableSeries.dataSeries;
41
+ if (!ds)
42
+ return;
43
+ // Get the x0z0 index of the cell that was hit
44
+ var x0z0 = { x: this.hitTestInfo.selectionIjIndices.x, z: this.hitTestInfo.selectionIjIndices.y };
45
+ // Convert x0z0 and four corners of quad-hit to data-values
46
+ // nomenclature: d (data values at), x0 (x index + 0), z0 (z index + 0)
47
+ var dx0z0 = { x: ds.getX(x0z0.x), y: ds.getYValue(x0z0.z, x0z0.x), z: ds.getZ(x0z0.z) };
48
+ var dx1z0 = { x: ds.getX(x0z0.x + 1), y: ds.getYValue(x0z0.z, x0z0.x + 1), z: ds.getZ(x0z0.z) };
49
+ var dx0z1 = { x: ds.getX(x0z0.x), y: ds.getYValue(x0z0.z + 1, x0z0.x), z: ds.getZ(x0z0.z + 1) };
50
+ var dx1z1 = { x: ds.getX(x0z0.x + 1), y: ds.getYValue(x0z0.z + 1, x0z0.x + 1), z: ds.getZ(x0z0.z + 1) };
51
+ var scs = this.renderableSeries.parentSurface;
52
+ if (!scs || !scs.xAxis || !scs.yAxis || !scs.zAxis)
53
+ return;
54
+ var xCalc = scs.xAxis.getCurrentCoordinateCalculator();
55
+ var yCalc = scs.yAxis.getCurrentCoordinateCalculator();
56
+ var zCalc = scs.zAxis.getCurrentCoordinateCalculator();
57
+ // convert data-values to world coordinates
58
+ // nomenclature: w (world coord at), x0 (x index + 0), y, z0 (z index + 0)
59
+ var wx0z0 = new Vector3_1.Vector3(xCalc.getCoordinate(dx0z0.x), yCalc.getCoordinate(dx0z0.y), zCalc.getCoordinate(dx0z0.z));
60
+ var wx1z0 = new Vector3_1.Vector3(xCalc.getCoordinate(dx1z0.x), yCalc.getCoordinate(dx1z0.y), zCalc.getCoordinate(dx1z0.z));
61
+ var wx0z1 = new Vector3_1.Vector3(xCalc.getCoordinate(dx0z1.x), yCalc.getCoordinate(dx0z1.y), zCalc.getCoordinate(dx0z1.z));
62
+ var wx1z1 = new Vector3_1.Vector3(xCalc.getCoordinate(dx1z1.x), yCalc.getCoordinate(dx1z1.y), zCalc.getCoordinate(dx1z1.z));
63
+ // Transform all to screen space
64
+ // nomenclature: s (screenspace 2d coordinate) for data at x0 (x index + 0), z0 (z index + 0)
65
+ var sx0z0 = scs.worldToScreenCoord(wx0z0);
66
+ var sx1z0 = scs.worldToScreenCoord(wx1z0);
67
+ var sx0z1 = scs.worldToScreenCoord(wx0z1);
68
+ var sx1z1 = scs.worldToScreenCoord(wx1z1);
69
+ // calculate euclidean distance from hit-test point to each corner in screen space
70
+ var x0z0distance = (0, pointUtil_1.calcDistance)(sx0z0.x, sx0z0.y, this.hitTestInfo.hitTestPoint.x, this.hitTestInfo.hitTestPoint.y);
71
+ var x1z0distance = (0, pointUtil_1.calcDistance)(sx1z0.x, sx1z0.y, this.hitTestInfo.hitTestPoint.x, this.hitTestInfo.hitTestPoint.y);
72
+ var x0z1distance = (0, pointUtil_1.calcDistance)(sx0z1.x, sx0z1.y, this.hitTestInfo.hitTestPoint.x, this.hitTestInfo.hitTestPoint.y);
73
+ var x1z1distance = (0, pointUtil_1.calcDistance)(sx1z1.x, sx1z1.y, this.hitTestInfo.hitTestPoint.x, this.hitTestInfo.hitTestPoint.y);
74
+ var xOffset = scs.worldDimensions.x * 0.5;
75
+ var zOffset = scs.worldDimensions.z * 0.5;
76
+ var minDistance = Math.min(x0z0distance, x1z0distance, x0z1distance, x1z1distance);
77
+ if (minDistance === x0z0distance) {
78
+ this.xIndex = x0z0.x;
79
+ this.zIndex = x0z0.z;
80
+ this.xValue = dx0z0.x;
81
+ this.yValue = dx0z0.y;
82
+ this.zValue = dx0z0.z;
83
+ this.hitWorldCoords = new Vector3_1.Vector3(wx0z0.x - xOffset, wx0z0.y, wx0z0.z - zOffset);
84
+ }
85
+ if (minDistance === x0z1distance) {
86
+ this.xIndex = x0z0.x;
87
+ this.zIndex = x0z0.z + 1;
88
+ this.xValue = dx0z1.x;
89
+ this.yValue = dx0z1.y;
90
+ this.zValue = dx0z1.z;
91
+ this.hitWorldCoords = new Vector3_1.Vector3(wx0z1.x - xOffset, wx0z1.y, wx0z1.z - zOffset);
92
+ }
93
+ if (minDistance === x1z0distance) {
94
+ this.xIndex = x0z0.x + 1;
95
+ this.zIndex = x0z0.z;
96
+ this.xValue = dx1z0.x;
97
+ this.yValue = dx1z0.y;
98
+ this.zValue = dx1z0.z;
99
+ this.hitWorldCoords = new Vector3_1.Vector3(wx1z0.x - xOffset, wx1z0.y, wx1z0.z - zOffset);
100
+ }
101
+ if (minDistance === x1z1distance) {
102
+ this.xIndex = x0z0.x + 1;
103
+ this.zIndex = x0z0.z + 1;
104
+ this.xValue = dx1z1.x;
105
+ this.yValue = dx1z1.y;
106
+ this.zValue = dx1z1.z;
107
+ this.hitWorldCoords = new Vector3_1.Vector3(wx1z1.x - xOffset, wx1z1.y, wx1z1.z - zOffset);
108
+ }
109
+ };
110
+ return SurfaceMeshSeriesInfo3D;
111
+ }(SeriesInfo3D_1.SeriesInfo3D));
112
+ exports.SurfaceMeshSeriesInfo3D = SurfaceMeshSeriesInfo3D;
@@ -0,0 +1,20 @@
1
+ import { IPointMetadata3D } from "../../Model/DataSeries/IPointMetadata3D";
2
+ import { IRenderableSeries3D } from "./BaseRenderableSeries3D";
3
+ import { HitTestInfo3D } from "./HitTestInfo3D";
4
+ import { SeriesInfo3D } from "./SeriesInfo3D";
5
+ /**
6
+ * XyzSeriesInfo3D is a data-structure which provides enriched information about a hit-test operation on an XYZ series in SciChart 3D.
7
+ * It's derived by calling {@link BaseRenderableSeries3D.hitTest}.
8
+ */
9
+ export declare class XyzSeriesInfo3D extends SeriesInfo3D {
10
+ /**
11
+ * When {@link isHit} is true, this is the index of the data-point in the {@link XyzDataSeries3D} that was hit
12
+ */
13
+ dataSeriesIndex: number;
14
+ /**
15
+ * When {@link isHit} is true, this metadata on the data-point in the {@link XyzDataSeries3D} that was hit
16
+ */
17
+ pointMetadata: IPointMetadata3D;
18
+ constructor(series: IRenderableSeries3D, hitTestInfo: HitTestInfo3D);
19
+ private enrichSeriesInfo;
20
+ }
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.XyzSeriesInfo3D = void 0;
19
+ var BaseDataSeries3D_1 = require("../../Model/DataSeries/BaseDataSeries3D");
20
+ var Vector3_1 = require("../../Vector3");
21
+ var SeriesInfo3D_1 = require("./SeriesInfo3D");
22
+ /**
23
+ * XyzSeriesInfo3D is a data-structure which provides enriched information about a hit-test operation on an XYZ series in SciChart 3D.
24
+ * It's derived by calling {@link BaseRenderableSeries3D.hitTest}.
25
+ */
26
+ var XyzSeriesInfo3D = /** @class */ (function (_super) {
27
+ __extends(XyzSeriesInfo3D, _super);
28
+ function XyzSeriesInfo3D(series, hitTestInfo) {
29
+ var _this = _super.call(this, series, hitTestInfo) || this;
30
+ _this.dataSeriesType = BaseDataSeries3D_1.EDataSeriesType3D.Xyz3D;
31
+ _this.enrichSeriesInfo();
32
+ return _this;
33
+ }
34
+ XyzSeriesInfo3D.prototype.enrichSeriesInfo = function () {
35
+ if (!this.isHit || !this.renderableSeries)
36
+ return;
37
+ this.dataSeriesIndex = this.hitTestInfo.selectionIndex - 1;
38
+ var xyzDataSeries = this.renderableSeries.dataSeries;
39
+ if (xyzDataSeries) {
40
+ this.xValue = xyzDataSeries.getNativeXValues().get(this.dataSeriesIndex);
41
+ this.yValue = xyzDataSeries.getNativeYValues().get(this.dataSeriesIndex);
42
+ this.zValue = xyzDataSeries.getNativeZValues().get(this.dataSeriesIndex);
43
+ var metadatas = xyzDataSeries.getMetadataValues();
44
+ if (metadatas && metadatas.length > this.dataSeriesIndex) {
45
+ this.pointMetadata = metadatas[this.dataSeriesIndex];
46
+ }
47
+ var scs = this.renderableSeries.parentSurface;
48
+ if (scs) {
49
+ var xOffset = scs.worldDimensions.x * 0.5;
50
+ var zOffset = scs.worldDimensions.z * 0.5;
51
+ var x = scs.xAxis.getCurrentCoordinateCalculator().getCoordinate(this.xValue) - xOffset;
52
+ var y = scs.yAxis.getCurrentCoordinateCalculator().getCoordinate(this.yValue);
53
+ var z = scs.zAxis.getCurrentCoordinateCalculator().getCoordinate(this.zValue) - zOffset;
54
+ this.hitWorldCoords = new Vector3_1.Vector3(x, y, z);
55
+ }
56
+ }
57
+ };
58
+ return XyzSeriesInfo3D;
59
+ }(SeriesInfo3D_1.SeriesInfo3D));
60
+ exports.XyzSeriesInfo3D = XyzSeriesInfo3D;
@@ -26,10 +26,6 @@ export declare class RootSceneEntity extends BaseSceneEntity3D<SCRTSceneEntity>
26
26
  * access to our WebGL2 Engine and WebAssembly numerical methods
27
27
  */
28
28
  constructor(webAssemblyContext: TSciChart3D, parentSurface: SciChart3DSurface);
29
- /**
30
- * @inheritDoc
31
- */
32
- delete(): void;
33
29
  /**
34
30
  * @inheritDoc
35
31
  */
@@ -18,6 +18,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.RootSceneEntity = void 0;
19
19
  var SceneEntityType_1 = require("../../types/SceneEntityType");
20
20
  var BaseSceneEntity3D_1 = require("./Primitives/BaseSceneEntity3D");
21
+ var EntityIdProvider_1 = require("./Primitives/EntityIdProvider");
21
22
  var Guard_1 = require("../../Core/Guard");
22
23
  /**
23
24
  * @summary Defines a special {@link BaseSceneEntity3D} type which is the root of the entire scene in
@@ -43,24 +44,18 @@ var RootSceneEntity = /** @class */ (function (_super) {
43
44
  _this.type = SceneEntityType_1.ESceneEntityType.RootSceneEntity;
44
45
  Guard_1.Guard.notNull(parentSurface, "parentSurface");
45
46
  _this.parentSurface = parentSurface;
47
+ _this.entityIdProvider = new EntityIdProvider_1.DefaultEntityIdProvider();
46
48
  return _this;
47
49
  }
48
- /**
49
- * @inheritDoc
50
- */
51
- RootSceneEntity.prototype.delete = function () {
52
- _super.prototype.delete.call(this);
53
- };
54
50
  /**
55
51
  * @inheritDoc
56
52
  */
57
53
  RootSceneEntity.prototype.attachChild = function (childEntity) {
58
- // TODO: entity.EntityIdProvider = this.EntityIdProvider;
59
- // console.log("Adding child entity to the root!");
60
54
  var parentEntity = this;
61
55
  if (childEntity === null || childEntity === void 0 ? void 0 : childEntity.nativeEntity) {
62
56
  this.world.AddEntity(childEntity.nativeEntity);
63
57
  }
58
+ childEntity.entityIdProvider = this.entityIdProvider;
64
59
  childEntity.parent = parentEntity;
65
60
  childEntity.onAttached();
66
61
  };
@@ -25,6 +25,7 @@ export declare class SciChart3DRenderer {
25
25
  static tryPerformAutoRangeOn(axis: AxisBase3D, scs: SciChart3DSurface): void;
26
26
  private readonly scs;
27
27
  private wasmContext;
28
+ private prevRect;
28
29
  private previousTime;
29
30
  constructor(scs: SciChart3DSurface, wasmContext: TSciChart3D);
30
31
  /**
@@ -1,8 +1,19 @@
1
1
  "use strict";
2
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
3
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
4
+ if (ar || !(i in from)) {
5
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
6
+ ar[i] = from[i];
7
+ }
8
+ }
9
+ return to.concat(ar || Array.prototype.slice.call(from));
10
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
12
  exports.SciChart3DRenderer = void 0;
13
+ var IAnnotation_1 = require("../../Charting/Visuals/Annotations/IAnnotation");
4
14
  var Deleter_1 = require("../../Core/Deleter");
5
15
  var Guard_1 = require("../../Core/Guard");
16
+ var Rect_1 = require("../../Core/Rect");
6
17
  var AutoRange_1 = require("../../types/AutoRange");
7
18
  var WatermarkPosition_1 = require("../../types/WatermarkPosition");
8
19
  var AxisCubeDescriptor_1 = require("./Primitives/AxisCubeDescriptor");
@@ -72,17 +83,23 @@ var SciChart3DRenderer = /** @class */ (function () {
72
83
  if (!this.isSurfaceValid(this.scs)) {
73
84
  throw Error("SciChart3DSurface is not valid");
74
85
  }
86
+ // Enable/disable hit test as required.
87
+ this.scs.webAssemblyContext3D.SCRTSetIsSelectionBufferEnabled(this.scs.isHitTestEnabled);
75
88
  // Step 1: Update the current active SceneWorld and camera
76
89
  var sceneWorld = this.scs.getSceneWorld();
77
90
  if (!sceneWorld) {
78
91
  console.warn("SciChart3DRenderer: Undefined scene world!");
79
92
  return;
80
93
  }
94
+ this.scs.preRender.raiseEvent();
81
95
  this.wasmContext.SCRTSetActiveWorld(sceneWorld);
82
96
  this.updateWorldDimensions(sceneWorld, this.scs.worldDimensions);
83
97
  var tsrCamera = sceneWorld.GetMainCamera();
84
98
  var typescriptCamera = this.scs.camera;
85
99
  typescriptCamera.updateEngineCamera(tsrCamera);
100
+ var _a = this.scs.viewportManager, width = _a.width, height = _a.height;
101
+ var viewRect = new Rect_1.Rect(0, 0, width, height);
102
+ this.scs.setSeriesViewRect(viewRect);
86
103
  // Animation Step
87
104
  var timeElapsed = this.previousTime ? Date.now() - this.previousTime : undefined;
88
105
  this.previousTime = Date.now();
@@ -96,6 +113,15 @@ var SciChart3DRenderer = /** @class */ (function () {
96
113
  // Step 5: Prepare the Axis Cube
97
114
  // Viewport3D already checked to be not null in IsSurfaceValid
98
115
  this.scs.rootEntity.visitEntities(function (e) { return e.setRenderPassData(rpd); });
116
+ var userAnnotations = this.scs.annotations.asArray();
117
+ var modifierAnnotations = this.scs.modifierAnnotations.asArray();
118
+ var annotations = __spreadArray(__spreadArray([], userAnnotations, true), modifierAnnotations, true);
119
+ var svgAnnotations = annotations.filter(function (el) {
120
+ return el.type === IAnnotation_1.EAnnotationType.SVG ||
121
+ el.type === IAnnotation_1.EAnnotationType.SVGTextAnnotation ||
122
+ el.type === IAnnotation_1.EAnnotationType.SVGCustomAnnotation;
123
+ });
124
+ svgAnnotations.forEach(function (svg) { return svg.update(undefined, undefined, 0, 0); });
99
125
  // We add the same padding as we have for 2D 6px
100
126
  this.updateWatermark();
101
127
  // Step 6: Notify that scene is about to be drawn