@nativescript-community/ui-chart 2.0.4 → 2.0.7

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 (404) hide show
  1. package/package.json +3 -3
  2. package/animation/ChartAnimator.d.ts +0 -61
  3. package/animation/ChartAnimator.js +0 -95
  4. package/animation/ChartAnimator.js.map +0 -1
  5. package/animation/Tween.d.ts +0 -4
  6. package/animation/Tween.js +0 -25
  7. package/animation/Tween.js.map +0 -1
  8. package/buffer/AbstractBuffer.d.ts +0 -40
  9. package/buffer/AbstractBuffer.js +0 -49
  10. package/buffer/AbstractBuffer.js.map +0 -1
  11. package/buffer/BarBuffer.d.ts +0 -15
  12. package/buffer/BarBuffer.js +0 -109
  13. package/buffer/BarBuffer.js.map +0 -1
  14. package/buffer/HorizontalBarBuffer.d.ts +0 -6
  15. package/buffer/HorizontalBarBuffer.js +0 -81
  16. package/buffer/HorizontalBarBuffer.js.map +0 -1
  17. package/charts/BarChart.d.ts +0 -94
  18. package/charts/BarChart.js +0 -141
  19. package/charts/BarChart.js.map +0 -1
  20. package/charts/BarLineChartBase.d.ts +0 -592
  21. package/charts/BarLineChartBase.js +0 -1253
  22. package/charts/BarLineChartBase.js.map +0 -1
  23. package/charts/BubbleChart.d.ts +0 -27
  24. package/charts/BubbleChart.js +0 -20
  25. package/charts/BubbleChart.js.map +0 -1
  26. package/charts/CandleStickChart.d.ts +0 -29
  27. package/charts/CandleStickChart.js +0 -19
  28. package/charts/CandleStickChart.js.map +0 -1
  29. package/charts/Chart.d.ts +0 -491
  30. package/charts/Chart.js +0 -778
  31. package/charts/Chart.js.map +0 -1
  32. package/charts/CombinedChart.d.ts +0 -78
  33. package/charts/CombinedChart.js +0 -119
  34. package/charts/CombinedChart.js.map +0 -1
  35. package/charts/HorizontalBarChart.d.ts +0 -54
  36. package/charts/HorizontalBarChart.js +0 -180
  37. package/charts/HorizontalBarChart.js.map +0 -1
  38. package/charts/LineChart.d.ts +0 -20
  39. package/charts/LineChart.js +0 -19
  40. package/charts/LineChart.js.map +0 -1
  41. package/charts/PieChart.d.ts +0 -249
  42. package/charts/PieChart.js +0 -468
  43. package/charts/PieChart.js.map +0 -1
  44. package/charts/PieRadarChartBase.d.ts +0 -130
  45. package/charts/PieRadarChartBase.js +0 -360
  46. package/charts/PieRadarChartBase.js.map +0 -1
  47. package/charts/RadarChart.d.ts +0 -101
  48. package/charts/RadarChart.js +0 -181
  49. package/charts/RadarChart.js.map +0 -1
  50. package/charts/ScatterChart.d.ts +0 -36
  51. package/charts/ScatterChart.js +0 -31
  52. package/charts/ScatterChart.js.map +0 -1
  53. package/charts/index.d.ts +0 -9
  54. package/charts/index.js +0 -10
  55. package/charts/index.js.map +0 -1
  56. package/components/AxisBase.d.ts +0 -299
  57. package/components/AxisBase.js +0 -351
  58. package/components/AxisBase.js.map +0 -1
  59. package/components/ComponentBase.d.ts +0 -60
  60. package/components/ComponentBase.js +0 -77
  61. package/components/ComponentBase.js.map +0 -1
  62. package/components/Description.d.ts +0 -22
  63. package/components/Description.js +0 -21
  64. package/components/Description.js.map +0 -1
  65. package/components/IMarker.d.ts +0 -39
  66. package/components/IMarker.js +0 -2
  67. package/components/IMarker.js.map +0 -1
  68. package/components/Legend.d.ts +0 -198
  69. package/components/Legend.js +0 -386
  70. package/components/Legend.js.map +0 -1
  71. package/components/LegendEntry.d.ts +0 -50
  72. package/components/LegendEntry.js +0 -51
  73. package/components/LegendEntry.js.map +0 -1
  74. package/components/LimitLine.d.ts +0 -55
  75. package/components/LimitLine.js +0 -62
  76. package/components/LimitLine.js.map +0 -1
  77. package/components/MarkerImage.d.ts +0 -1
  78. package/components/MarkerImage.js +0 -97
  79. package/components/MarkerImage.js.map +0 -1
  80. package/components/XAxis.d.ts +0 -55
  81. package/components/XAxis.js +0 -59
  82. package/components/XAxis.js.map +0 -1
  83. package/components/YAxis.d.ts +0 -135
  84. package/components/YAxis.js +0 -205
  85. package/components/YAxis.js.map +0 -1
  86. package/data/BarData.d.ts +0 -38
  87. package/data/BarData.js +0 -122
  88. package/data/BarData.js.map +0 -1
  89. package/data/BarDataSet.d.ts +0 -47
  90. package/data/BarDataSet.js +0 -109
  91. package/data/BarDataSet.js.map +0 -1
  92. package/data/BarEntry.d.ts +0 -11
  93. package/data/BarEntry.js +0 -2
  94. package/data/BarEntry.js.map +0 -1
  95. package/data/BarLineScatterCandleBubbleData.d.ts +0 -10
  96. package/data/BarLineScatterCandleBubbleData.js +0 -9
  97. package/data/BarLineScatterCandleBubbleData.js.map +0 -1
  98. package/data/BarLineScatterCandleBubbleDataSet.d.ts +0 -17
  99. package/data/BarLineScatterCandleBubbleDataSet.js +0 -18
  100. package/data/BarLineScatterCandleBubbleDataSet.js.map +0 -1
  101. package/data/BaseDataSet.d.ts +0 -180
  102. package/data/BaseDataSet.js +0 -220
  103. package/data/BaseDataSet.js.map +0 -1
  104. package/data/BaseEntry.d.ts +0 -10
  105. package/data/BaseEntry.js +0 -2
  106. package/data/BaseEntry.js.map +0 -1
  107. package/data/BubbleData.d.ts +0 -12
  108. package/data/BubbleData.js +0 -15
  109. package/data/BubbleData.js.map +0 -1
  110. package/data/BubbleDataSet.d.ts +0 -18
  111. package/data/BubbleDataSet.js +0 -36
  112. package/data/BubbleDataSet.js.map +0 -1
  113. package/data/BubbleEntry.d.ts +0 -5
  114. package/data/BubbleEntry.js +0 -2
  115. package/data/BubbleEntry.js.map +0 -1
  116. package/data/CandleData.d.ts +0 -5
  117. package/data/CandleData.js +0 -4
  118. package/data/CandleData.js.map +0 -1
  119. package/data/CandleDataSet.d.ts +0 -76
  120. package/data/CandleDataSet.js +0 -116
  121. package/data/CandleDataSet.js.map +0 -1
  122. package/data/CandleEntry.d.ts +0 -11
  123. package/data/CandleEntry.js +0 -2
  124. package/data/CandleEntry.js.map +0 -1
  125. package/data/ChartData.d.ts +0 -320
  126. package/data/ChartData.js +0 -702
  127. package/data/ChartData.js.map +0 -1
  128. package/data/CombinedData.d.ts +0 -61
  129. package/data/CombinedData.js +0 -153
  130. package/data/CombinedData.js.map +0 -1
  131. package/data/DataSet.d.ts +0 -98
  132. package/data/DataSet.js +0 -424
  133. package/data/DataSet.js.map +0 -1
  134. package/data/Entry.d.ts +0 -3
  135. package/data/Entry.js +0 -2
  136. package/data/Entry.js.map +0 -1
  137. package/data/LineData.d.ts +0 -10
  138. package/data/LineData.js +0 -9
  139. package/data/LineData.js.map +0 -1
  140. package/data/LineDataSet.d.ts +0 -106
  141. package/data/LineDataSet.js +0 -153
  142. package/data/LineDataSet.js.map +0 -1
  143. package/data/LineRadarDataSet.d.ts +0 -32
  144. package/data/LineRadarDataSet.js +0 -29
  145. package/data/LineRadarDataSet.js.map +0 -1
  146. package/data/LineScatterCandleRadarDataSet.d.ts +0 -36
  147. package/data/LineScatterCandleRadarDataSet.js +0 -44
  148. package/data/LineScatterCandleRadarDataSet.js.map +0 -1
  149. package/data/PieData.d.ts +0 -39
  150. package/data/PieData.js +0 -55
  151. package/data/PieData.js.map +0 -1
  152. package/data/PieDataSet.d.ts +0 -52
  153. package/data/PieDataSet.js +0 -54
  154. package/data/PieDataSet.js.map +0 -1
  155. package/data/PieEntry.d.ts +0 -7
  156. package/data/PieEntry.js +0 -2
  157. package/data/PieEntry.js.map +0 -1
  158. package/data/RadarData.d.ts +0 -17
  159. package/data/RadarData.js +0 -15
  160. package/data/RadarData.js.map +0 -1
  161. package/data/RadarDataSet.d.ts +0 -14
  162. package/data/RadarDataSet.js +0 -20
  163. package/data/RadarDataSet.js.map +0 -1
  164. package/data/RadarEntry.d.ts +0 -3
  165. package/data/RadarEntry.js +0 -2
  166. package/data/RadarEntry.js.map +0 -1
  167. package/data/ScatterData.d.ts +0 -9
  168. package/data/ScatterData.js +0 -17
  169. package/data/ScatterData.js.map +0 -1
  170. package/data/ScatterDataSet.d.ts +0 -40
  171. package/data/ScatterDataSet.js +0 -61
  172. package/data/ScatterDataSet.js.map +0 -1
  173. package/formatter/DefaultAxisValueFormatter.d.ts +0 -23
  174. package/formatter/DefaultAxisValueFormatter.js +0 -30
  175. package/formatter/DefaultAxisValueFormatter.js.map +0 -1
  176. package/formatter/DefaultFillFormatter.d.ts +0 -6
  177. package/formatter/DefaultFillFormatter.js +0 -29
  178. package/formatter/DefaultFillFormatter.js.map +0 -1
  179. package/formatter/DefaultValueFormatter.d.ts +0 -3
  180. package/formatter/DefaultValueFormatter.js +0 -4
  181. package/formatter/DefaultValueFormatter.js.map +0 -1
  182. package/formatter/IAxisValueFormatter.d.ts +0 -23
  183. package/formatter/IAxisValueFormatter.js +0 -2
  184. package/formatter/IAxisValueFormatter.js.map +0 -1
  185. package/formatter/IFillFormatter.d.ts +0 -30
  186. package/formatter/IFillFormatter.js +0 -2
  187. package/formatter/IFillFormatter.js.map +0 -1
  188. package/formatter/IValueFormatter.d.ts +0 -25
  189. package/formatter/IValueFormatter.js +0 -2
  190. package/formatter/IValueFormatter.js.map +0 -1
  191. package/formatter/ValueFormatter.d.ts +0 -81
  192. package/formatter/ValueFormatter.js +0 -90
  193. package/formatter/ValueFormatter.js.map +0 -1
  194. package/highlight/BarHighlighter.d.ts +0 -33
  195. package/highlight/BarHighlighter.js +0 -89
  196. package/highlight/BarHighlighter.js.map +0 -1
  197. package/highlight/ChartHighlighter.d.ts +0 -102
  198. package/highlight/ChartHighlighter.js +0 -220
  199. package/highlight/ChartHighlighter.js.map +0 -1
  200. package/highlight/CombinedHighlighter.d.ts +0 -17
  201. package/highlight/CombinedHighlighter.js +0 -59
  202. package/highlight/CombinedHighlighter.js.map +0 -1
  203. package/highlight/Highlight.d.ts +0 -69
  204. package/highlight/Highlight.js +0 -8
  205. package/highlight/Highlight.js.map +0 -1
  206. package/highlight/HorizontalBarHighlighter.d.ts +0 -10
  207. package/highlight/HorizontalBarHighlighter.js +0 -54
  208. package/highlight/HorizontalBarHighlighter.js.map +0 -1
  209. package/highlight/IHighlighter.d.ts +0 -15
  210. package/highlight/IHighlighter.js +0 -2
  211. package/highlight/IHighlighter.js.map +0 -1
  212. package/highlight/PieHighlighter.d.ts +0 -9
  213. package/highlight/PieHighlighter.js +0 -21
  214. package/highlight/PieHighlighter.js.map +0 -1
  215. package/highlight/PieRadarHighlighter.d.ts +0 -25
  216. package/highlight/PieRadarHighlighter.js +0 -33
  217. package/highlight/PieRadarHighlighter.js.map +0 -1
  218. package/highlight/RadarHighlighter.d.ts +0 -20
  219. package/highlight/RadarHighlighter.js +0 -59
  220. package/highlight/RadarHighlighter.js.map +0 -1
  221. package/index.d.ts +0 -11
  222. package/index.js +0 -15
  223. package/index.js.map +0 -1
  224. package/interfaces/dataprovider/BarDataProvider.d.ts +0 -9
  225. package/interfaces/dataprovider/BarLineScatterCandleBubbleDataProvider.d.ts +0 -19
  226. package/interfaces/dataprovider/BubbleDataProvider.d.ts +0 -6
  227. package/interfaces/dataprovider/CandleDataProvider.d.ts +0 -6
  228. package/interfaces/dataprovider/ChartInterface.d.ts +0 -60
  229. package/interfaces/dataprovider/CombinedDataProvider.d.ts +0 -13
  230. package/interfaces/dataprovider/LineDataProvider.d.ts +0 -9
  231. package/interfaces/dataprovider/ScatterDataProvider.d.ts +0 -6
  232. package/interfaces/datasets/IBarDataSet.d.ts +0 -47
  233. package/interfaces/datasets/IBarLineScatterCandleBubbleDataSet.d.ts +0 -12
  234. package/interfaces/datasets/IBubbleDataSet.d.ts +0 -19
  235. package/interfaces/datasets/ICandleDataSet.d.ts +0 -81
  236. package/interfaces/datasets/IDataSet.d.ts +0 -385
  237. package/interfaces/datasets/ILineDataSet.d.ts +0 -67
  238. package/interfaces/datasets/ILineRadarDataSet.d.ts +0 -35
  239. package/interfaces/datasets/ILineScatterCandleRadarDataSet.d.ts +0 -32
  240. package/interfaces/datasets/IPieDataSet.d.ts +0 -49
  241. package/interfaces/datasets/IRadarDataSet.d.ts +0 -21
  242. package/interfaces/datasets/IScatterDataSet.d.ts +0 -37
  243. package/jobs/AnimatedMoveViewJob.d.ts +0 -15
  244. package/jobs/AnimatedMoveViewJob.js +0 -42
  245. package/jobs/AnimatedMoveViewJob.js.map +0 -1
  246. package/jobs/AnimatedViewPortJob.d.ts +0 -31
  247. package/jobs/AnimatedViewPortJob.js +0 -52
  248. package/jobs/AnimatedViewPortJob.js.map +0 -1
  249. package/jobs/AnimatedZoomJob.d.ts +0 -23
  250. package/jobs/AnimatedZoomJob.js +0 -63
  251. package/jobs/AnimatedZoomJob.js.map +0 -1
  252. package/jobs/MoveViewJob.d.ts +0 -14
  253. package/jobs/MoveViewJob.js +0 -36
  254. package/jobs/MoveViewJob.js.map +0 -1
  255. package/jobs/ViewPortJob.d.ts +0 -13
  256. package/jobs/ViewPortJob.js +0 -14
  257. package/jobs/ViewPortJob.js.map +0 -1
  258. package/jobs/ZoomJob.d.ts +0 -15
  259. package/jobs/ZoomJob.js +0 -48
  260. package/jobs/ZoomJob.js.map +0 -1
  261. package/listener/BarLineChartTouchListener.d.ts +0 -187
  262. package/listener/BarLineChartTouchListener.js +0 -544
  263. package/listener/BarLineChartTouchListener.js.map +0 -1
  264. package/listener/ChartTouchListener.d.ts +0 -69
  265. package/listener/ChartTouchListener.js +0 -81
  266. package/listener/ChartTouchListener.js.map +0 -1
  267. package/listener/PieRadarChartTouchListener.d.ts +0 -100
  268. package/listener/PieRadarChartTouchListener.js +0 -282
  269. package/listener/PieRadarChartTouchListener.js.map +0 -1
  270. package/model/GradientColor.d.ts +0 -9
  271. package/model/GradientColor.js +0 -19
  272. package/model/GradientColor.js.map +0 -1
  273. package/renderer/AxisRenderer.d.ts +0 -101
  274. package/renderer/AxisRenderer.js +0 -219
  275. package/renderer/AxisRenderer.js.map +0 -1
  276. package/renderer/BarChartRenderer.d.ts +0 -40
  277. package/renderer/BarChartRenderer.js +0 -366
  278. package/renderer/BarChartRenderer.js.map +0 -1
  279. package/renderer/BarLineScatterCandleBubbleRenderer.d.ts +0 -57
  280. package/renderer/BarLineScatterCandleBubbleRenderer.js +0 -63
  281. package/renderer/BarLineScatterCandleBubbleRenderer.js.map +0 -1
  282. package/renderer/BubbleChartRenderer.d.ts +0 -22
  283. package/renderer/BubbleChartRenderer.js +0 -204
  284. package/renderer/BubbleChartRenderer.js.map +0 -1
  285. package/renderer/CandleStickChartRenderer.d.ts +0 -18
  286. package/renderer/CandleStickChartRenderer.js +0 -268
  287. package/renderer/CandleStickChartRenderer.js.map +0 -1
  288. package/renderer/CombinedChartRenderer.d.ts +0 -40
  289. package/renderer/CombinedChartRenderer.js +0 -133
  290. package/renderer/CombinedChartRenderer.js.map +0 -1
  291. package/renderer/DataRenderer.d.ts +0 -103
  292. package/renderer/DataRenderer.js +0 -110
  293. package/renderer/DataRenderer.js.map +0 -1
  294. package/renderer/HorizontalBarChartRenderer.d.ts +0 -20
  295. package/renderer/HorizontalBarChartRenderer.js +0 -303
  296. package/renderer/HorizontalBarChartRenderer.js.map +0 -1
  297. package/renderer/LegendRenderer.d.ts +0 -54
  298. package/renderer/LegendRenderer.js +0 -340
  299. package/renderer/LegendRenderer.js.map +0 -1
  300. package/renderer/LineChartRenderer.d.ts +0 -100
  301. package/renderer/LineChartRenderer.js +0 -766
  302. package/renderer/LineChartRenderer.js.map +0 -1
  303. package/renderer/LineRadarRenderer.d.ts +0 -30
  304. package/renderer/LineRadarRenderer.js +0 -85
  305. package/renderer/LineRadarRenderer.js.map +0 -1
  306. package/renderer/LineScatterCandleRadarRenderer.d.ts +0 -20
  307. package/renderer/LineScatterCandleRadarRenderer.js +0 -45
  308. package/renderer/LineScatterCandleRadarRenderer.js.map +0 -1
  309. package/renderer/PieChartRenderer.d.ts +0 -86
  310. package/renderer/PieChartRenderer.js +0 -718
  311. package/renderer/PieChartRenderer.js.map +0 -1
  312. package/renderer/RadarChartRenderer.d.ts +0 -33
  313. package/renderer/RadarChartRenderer.js +0 -290
  314. package/renderer/RadarChartRenderer.js.map +0 -1
  315. package/renderer/Renderer.d.ts +0 -13
  316. package/renderer/Renderer.js +0 -11
  317. package/renderer/Renderer.js.map +0 -1
  318. package/renderer/ScatterChartRenderer.d.ts +0 -16
  319. package/renderer/ScatterChartRenderer.js +0 -147
  320. package/renderer/ScatterChartRenderer.js.map +0 -1
  321. package/renderer/XAxisRenderer.d.ts +0 -58
  322. package/renderer/XAxisRenderer.js +0 -458
  323. package/renderer/XAxisRenderer.js.map +0 -1
  324. package/renderer/XAxisRendererHorizontalBarChart.d.ts +0 -31
  325. package/renderer/XAxisRendererHorizontalBarChart.js +0 -271
  326. package/renderer/XAxisRendererHorizontalBarChart.js.map +0 -1
  327. package/renderer/XAxisRendererRadarChart.d.ts +0 -17
  328. package/renderer/XAxisRendererRadarChart.js +0 -51
  329. package/renderer/XAxisRendererRadarChart.js.map +0 -1
  330. package/renderer/YAxisRenderer.d.ts +0 -60
  331. package/renderer/YAxisRenderer.js +0 -379
  332. package/renderer/YAxisRenderer.js.map +0 -1
  333. package/renderer/YAxisRendererHorizontalBarChart.d.ts +0 -33
  334. package/renderer/YAxisRendererHorizontalBarChart.js +0 -250
  335. package/renderer/YAxisRendererHorizontalBarChart.js.map +0 -1
  336. package/renderer/YAxisRendererRadarChart.d.ts +0 -14
  337. package/renderer/YAxisRendererRadarChart.js +0 -180
  338. package/renderer/YAxisRendererRadarChart.js.map +0 -1
  339. package/renderer/scatter/ChevronDownShapeRenderer.d.ts +0 -11
  340. package/renderer/scatter/ChevronDownShapeRenderer.js +0 -15
  341. package/renderer/scatter/ChevronDownShapeRenderer.js.map +0 -1
  342. package/renderer/scatter/ChevronUpShapeRenderer.d.ts +0 -11
  343. package/renderer/scatter/ChevronUpShapeRenderer.js +0 -15
  344. package/renderer/scatter/ChevronUpShapeRenderer.js.map +0 -1
  345. package/renderer/scatter/CircleShapeRenderer.d.ts +0 -11
  346. package/renderer/scatter/CircleShapeRenderer.js +0 -31
  347. package/renderer/scatter/CircleShapeRenderer.js.map +0 -1
  348. package/renderer/scatter/CrossShapeRenderer.d.ts +0 -11
  349. package/renderer/scatter/CrossShapeRenderer.js +0 -15
  350. package/renderer/scatter/CrossShapeRenderer.js.map +0 -1
  351. package/renderer/scatter/IShapeRenderer.d.ts +0 -20
  352. package/renderer/scatter/IShapeRenderer.js +0 -2
  353. package/renderer/scatter/IShapeRenderer.js.map +0 -1
  354. package/renderer/scatter/SquareShapeRenderer.d.ts +0 -11
  355. package/renderer/scatter/SquareShapeRenderer.js +0 -31
  356. package/renderer/scatter/SquareShapeRenderer.js.map +0 -1
  357. package/renderer/scatter/TriangleShapeRenderer.d.ts +0 -12
  358. package/renderer/scatter/TriangleShapeRenderer.js +0 -43
  359. package/renderer/scatter/TriangleShapeRenderer.js.map +0 -1
  360. package/renderer/scatter/XShapeRenderer.d.ts +0 -11
  361. package/renderer/scatter/XShapeRenderer.js +0 -15
  362. package/renderer/scatter/XShapeRenderer.js.map +0 -1
  363. package/utils/ColorTemplate.d.ts +0 -34
  364. package/utils/ColorTemplate.js +0 -51
  365. package/utils/ColorTemplate.js.map +0 -1
  366. package/utils/HorizontalViewPortHandler.d.ts +0 -6
  367. package/utils/HorizontalViewPortHandler.js +0 -7
  368. package/utils/HorizontalViewPortHandler.js.map +0 -1
  369. package/utils/MPPointD.d.ts +0 -5
  370. package/utils/MPPointF.d.ts +0 -7
  371. package/utils/MPSize.d.ts +0 -7
  372. package/utils/ObjectPool.d.ts +0 -81
  373. package/utils/ObjectPool.js +0 -183
  374. package/utils/ObjectPool.js.map +0 -1
  375. package/utils/Transformer.d.ts +0 -175
  376. package/utils/Transformer.js +0 -356
  377. package/utils/Transformer.js.map +0 -1
  378. package/utils/TransformerHorizontalBarChart.d.ts +0 -14
  379. package/utils/TransformerHorizontalBarChart.js +0 -30
  380. package/utils/TransformerHorizontalBarChart.js.map +0 -1
  381. package/utils/Utils.d.ts +0 -203
  382. package/utils/Utils.js +0 -653
  383. package/utils/Utils.js.map +0 -1
  384. package/utils/ViewPortHandler.d.ts +0 -299
  385. package/utils/ViewPortHandler.js +0 -580
  386. package/utils/ViewPortHandler.js.map +0 -1
  387. package/utils/colors/colorful.d.ts +0 -1
  388. package/utils/colors/colorful.js +0 -2
  389. package/utils/colors/colorful.js.map +0 -1
  390. package/utils/colors/joyful.d.ts +0 -1
  391. package/utils/colors/joyful.js +0 -2
  392. package/utils/colors/joyful.js.map +0 -1
  393. package/utils/colors/liberty.d.ts +0 -1
  394. package/utils/colors/liberty.js +0 -2
  395. package/utils/colors/liberty.js.map +0 -1
  396. package/utils/colors/material.d.ts +0 -1
  397. package/utils/colors/material.js +0 -2
  398. package/utils/colors/material.js.map +0 -1
  399. package/utils/colors/pastel.d.ts +0 -1
  400. package/utils/colors/pastel.js +0 -2
  401. package/utils/colors/pastel.js.map +0 -1
  402. package/utils/colors/vordiplom.d.ts +0 -1
  403. package/utils/colors/vordiplom.js +0 -2
  404. package/utils/colors/vordiplom.js.map +0 -1
@@ -1,766 +0,0 @@
1
- import { Canvas, Direction, FillType, LinearGradient, Path, Style, TileMode, releaseImage } from '@nativescript-community/ui-canvas';
2
- import { Screen, profile } from '@nativescript/core';
3
- import { Rounding } from '../data/DataSet';
4
- import { Mode } from '../data/LineDataSet';
5
- import { ColorTemplate } from '../utils/ColorTemplate';
6
- import { Utils } from '../utils/Utils';
7
- import { LineRadarRenderer } from './LineRadarRenderer';
8
- function distanceBetweenPoints(pt1, pt2) {
9
- return Math.sqrt(Math.pow(pt2.x - pt1.x, 2) + Math.pow(pt2.y - pt1.y, 2));
10
- }
11
- function almostEquals(x, y, epsilon) {
12
- return Math.abs(x - y) < epsilon;
13
- }
14
- function _isPointInArea(point, area, margin = 0.5) {
15
- // margin - default is to match rounded decimals
16
- return point && point.x > area.left - margin && point.x < area.right + margin && point.y > area.top - margin && point.y < area.bottom + margin;
17
- }
18
- export function splineCurve(firstPoint, middlePoint, afterPoint, tension) {
19
- // Props to Rob Spencer at scaled innovation for his post on splining between points
20
- // http://scaledinnovation.com/analytics/splines/aboutSplines.html
21
- // This function must also respect "skipped" points
22
- const previous = firstPoint;
23
- const current = middlePoint;
24
- const next = afterPoint;
25
- const d01 = distanceBetweenPoints(current, previous);
26
- const d12 = distanceBetweenPoints(next, current);
27
- let s01 = d01 / (d01 + d12);
28
- let s12 = d12 / (d01 + d12);
29
- // If all points are the same, s01 & s02 will be inf
30
- s01 = isNaN(s01) ? 0 : s01;
31
- s12 = isNaN(s12) ? 0 : s12;
32
- const fa = tension * s01; // scaling factor for triangle Ta
33
- const fb = tension * s12;
34
- return {
35
- previous: {
36
- x: current.x - fa * (next.x - previous.x),
37
- y: current.y - fa * (next.y - previous.y)
38
- },
39
- next: {
40
- x: current.x + fb * (next.x - previous.x),
41
- y: current.y + fb * (next.y - previous.y)
42
- }
43
- };
44
- }
45
- function getXYValue(dataSet, index) {
46
- const yKey = dataSet.yProperty;
47
- const entry = dataSet.getEntryForIndex(index);
48
- const yVal = entry[yKey];
49
- if (yVal === undefined || yVal === null) {
50
- return null;
51
- }
52
- return { x: dataSet.getEntryXValue(entry, index), y: entry[yKey] };
53
- }
54
- // fix drawing "too" thin paths on iOS
55
- export class DataSetImageCache {
56
- /**
57
- * Sets up the cache, returns true if a change of cache was required.
58
- *
59
- * @param set
60
- * @return
61
- */
62
- init(set) {
63
- const size = set.circleColors.length || 1;
64
- let changeRequired = false;
65
- if (!this.circleBitmaps) {
66
- this.circleBitmaps = [];
67
- changeRequired = true;
68
- }
69
- else if (this.circleBitmaps.length !== size) {
70
- this.circleBitmaps = [];
71
- changeRequired = true;
72
- }
73
- return changeRequired;
74
- }
75
- /**
76
- * Fills the cache with bitmaps for the given dataset.
77
- *
78
- * @param set
79
- * @param drawCircleHole
80
- * @param drawTransparentCircleHole
81
- */
82
- fill(set, renderPaint, circlePaintInner, drawCircleHole, drawTransparentCircleHole) {
83
- const colorCount = set.circleColors.length || 1;
84
- const circleRadius = set.circleRadius;
85
- const circleHoleRadius = set.circleHoleRadius;
86
- const scale = set.circleHighRes ? Screen.mainScreen.scale : 1;
87
- for (let i = 0; i < colorCount; i++) {
88
- const canvas = new Canvas(Math.round(circleRadius * 2 * scale), Math.round(circleRadius * 2 * scale));
89
- canvas.scale(scale, scale);
90
- renderPaint.setColor(set.circleColors[i] || set.color);
91
- if (drawTransparentCircleHole) {
92
- const circlePathBuffer = Utils.getTempPath();
93
- // Begin path for circle with hole
94
- circlePathBuffer.reset();
95
- // const oldType = circlePathBuffer.getFillType();
96
- circlePathBuffer.setFillType(FillType.EVEN_ODD);
97
- circlePathBuffer.addCircle(circleRadius, circleRadius, circleRadius, Direction.CW);
98
- // Cut hole in path
99
- circlePathBuffer.addCircle(circleRadius, circleRadius, circleHoleRadius, Direction.CCW);
100
- // Fill in-between
101
- canvas.drawPath(circlePathBuffer, renderPaint);
102
- // circlePathBuffer.setFillType(oldType);
103
- }
104
- else {
105
- canvas.drawCircle(circleRadius, circleRadius, circleRadius, renderPaint);
106
- if (drawCircleHole) {
107
- canvas.drawCircle(circleRadius, circleRadius, circleHoleRadius, circlePaintInner);
108
- }
109
- }
110
- this.circleBitmaps[i] = canvas.getImage();
111
- }
112
- }
113
- /**
114
- * Returns the cached Bitmap at the given index.
115
- *
116
- * @param index
117
- * @return
118
- */
119
- getBitmap(index) {
120
- return this.circleBitmaps[index % this.circleBitmaps.length];
121
- }
122
- }
123
- export class LineChartRenderer extends LineRadarRenderer {
124
- get fillPath() {
125
- if (!LineChartRenderer.mFillPath) {
126
- LineChartRenderer.mFillPath = new Path();
127
- }
128
- return LineChartRenderer.mFillPath;
129
- }
130
- constructor(chart, animator, viewPortHandler) {
131
- super(animator, viewPortHandler);
132
- /**
133
- * cache for the circle bitmaps of all datasets
134
- */
135
- this.mImageCaches = new Map();
136
- this.mChart = chart;
137
- // if (__ANDROID__) {
138
- // this.mBitmapConfig = android.graphics.Bitmap.Config.ARGB_8888;
139
- // }
140
- }
141
- get circlePaintInner() {
142
- if (!this.mCirclePaintInner) {
143
- this.mCirclePaintInner = Utils.getTemplatePaint('white-fill');
144
- }
145
- return this.mCirclePaintInner;
146
- }
147
- drawData(c) {
148
- const width = this.mViewPortHandler.chartWidth;
149
- const height = this.mViewPortHandler.chartHeight;
150
- let drawBitmap = this.mDrawBitmap?.get();
151
- if (!drawBitmap || drawBitmap.width !== width || drawBitmap.height !== height) {
152
- if (width > 0 && height > 0) {
153
- this.mBitmapCanvas = new Canvas(width, height);
154
- drawBitmap = this.mBitmapCanvas.getImage();
155
- this.mDrawBitmap = new WeakRef(drawBitmap);
156
- }
157
- else
158
- return;
159
- }
160
- else {
161
- this.mBitmapCanvas.clear();
162
- }
163
- const lineData = this.mChart.lineData;
164
- let needsBitmapDrawing = false;
165
- for (const set of lineData.visibleDataSets) {
166
- needsBitmapDrawing = this.drawDataSet(c, set) || needsBitmapDrawing;
167
- }
168
- if (needsBitmapDrawing) {
169
- const renderPaint = this.renderPaint;
170
- c.drawBitmap(drawBitmap, 0, 0, renderPaint);
171
- }
172
- }
173
- drawDataSet(c, dataSet) {
174
- if (dataSet.entryCount < 1)
175
- return false;
176
- const renderPaint = this.renderPaint;
177
- renderPaint.setStrokeWidth(dataSet.lineWidth);
178
- if (dataSet.dashPathEffect) {
179
- renderPaint.setPathEffect(dataSet.dashPathEffect);
180
- }
181
- if (dataSet.shader) {
182
- renderPaint.setShader(dataSet.shader);
183
- }
184
- renderPaint.setColor(dataSet.getColor());
185
- renderPaint.setStyle(Style.STROKE);
186
- const scaleX = this.mViewPortHandler.getScaleX();
187
- dataSet.applyFiltering(scaleX);
188
- const result = this.draw(c, dataSet);
189
- if (dataSet.dashPathEffect) {
190
- renderPaint.setPathEffect(null);
191
- }
192
- if (dataSet.shader) {
193
- renderPaint.setShader(null);
194
- }
195
- return result;
196
- }
197
- generateHorizontalBezierPath(dataSet, outputPath) {
198
- if (this.mXBounds.range >= 1) {
199
- const pointsPerEntryPair = 6;
200
- const entryCount = dataSet.entryCount;
201
- if (!this.mLineBuffer || this.mLineBuffer.length < Math.max(entryCount * pointsPerEntryPair, pointsPerEntryPair) * 2) {
202
- this.mLineBuffer = Utils.createArrayBuffer(Math.max(entryCount * pointsPerEntryPair, pointsPerEntryPair) * 2);
203
- }
204
- const phaseY = this.animator.phaseY;
205
- const yKey = dataSet.yProperty;
206
- let firstIndex = Math.max(0, this.mXBounds.min);
207
- // let firstIndex = this.mXBounds.min + 1;
208
- const lastIndex = this.mXBounds.min + this.mXBounds.range;
209
- let prev = dataSet.getEntryForIndex(firstIndex);
210
- let yVal = prev[yKey];
211
- while (firstIndex < lastIndex && (yVal === undefined || yVal === null)) {
212
- firstIndex++;
213
- prev = dataSet.getEntryForIndex(firstIndex);
214
- yVal = prev[yKey];
215
- }
216
- let prevXVal = dataSet.getEntryXValue(prev, firstIndex);
217
- let cur = prev;
218
- let curXVal = prevXVal;
219
- const float32arr = this.mLineBuffer;
220
- let index = 0;
221
- float32arr[index++] = prevXVal;
222
- float32arr[index++] = cur[yKey] * phaseY;
223
- // let the spline start
224
- for (let j = firstIndex + 1; j <= lastIndex; j++) {
225
- const newEntry = dataSet.getEntryForIndex(j);
226
- const yVal = newEntry[yKey];
227
- if (yVal === undefined || yVal === null) {
228
- continue;
229
- }
230
- prev = cur;
231
- prevXVal = curXVal;
232
- cur = newEntry;
233
- curXVal = dataSet.getEntryXValue(cur, j);
234
- const cpx = prevXVal + (curXVal - prevXVal) / 2.0;
235
- float32arr[index++] = cpx;
236
- float32arr[index++] = prev[yKey] * phaseY;
237
- float32arr[index++] = cpx;
238
- float32arr[index++] = cur[yKey] * phaseY;
239
- float32arr[index++] = curXVal;
240
- float32arr[index++] = cur[yKey] * phaseY;
241
- }
242
- const points = Utils.pointsFromBuffer(float32arr);
243
- if (__ANDROID__ && Utils.supportsDirectArrayBuffers()) {
244
- outputPath['setCubicLinesBuffer'](points, 0, index);
245
- }
246
- else {
247
- outputPath.setCubicLines(points, 0, index);
248
- }
249
- return [points, index];
250
- }
251
- else {
252
- outputPath.reset();
253
- return [];
254
- }
255
- }
256
- generateCubicPath(dataSet, outputPath) {
257
- if (this.mXBounds.range >= 1) {
258
- const pointsPerEntryPair = 6;
259
- const entryCount = dataSet.entryCount;
260
- if (!this.mLineBuffer || this.mLineBuffer.length < Math.max(entryCount * pointsPerEntryPair, pointsPerEntryPair) * 2) {
261
- this.mLineBuffer = Utils.createArrayBuffer(Math.max(entryCount * pointsPerEntryPair, pointsPerEntryPair) * 2);
262
- }
263
- const phaseY = this.animator.phaseY;
264
- const xKey = dataSet.xProperty;
265
- const yKey = dataSet.yProperty;
266
- const intensity = dataSet.cubicIntensity;
267
- // Take an extra polet from the left, and an extra from the right.
268
- // That's because we need 4 points for a cubic bezier (cubic=4), otherwise we get lines moving and doing weird stuff on the edges of the chart.
269
- // So in the starting `prev` and `cur`, go -2, -1
270
- // And in the `lastIndex`, add +1
271
- const firstIndex = Math.max(0, this.mXBounds.min);
272
- // let firstIndex = this.mXBounds.min + 1;
273
- const lastIndex = this.mXBounds.min + this.mXBounds.range;
274
- const float32arr = this.mLineBuffer;
275
- let index = 0;
276
- let nextIndex = -1;
277
- let next;
278
- let controlPoints;
279
- let point;
280
- let prev;
281
- let prevControlPoints;
282
- for (let j = firstIndex; j <= lastIndex; j++) {
283
- point = getXYValue(dataSet, j);
284
- if (!point) {
285
- // if (j === 0) {
286
- // return [];
287
- // }
288
- continue;
289
- }
290
- if (!prev) {
291
- prev = point;
292
- }
293
- nextIndex = j + 1 < dataSet.entryCount ? j + 1 : j;
294
- next = getXYValue(dataSet, nextIndex);
295
- if (!next) {
296
- continue;
297
- }
298
- controlPoints = splineCurve(prev, point, next, intensity);
299
- if (j === firstIndex) {
300
- float32arr[index++] = point.x;
301
- float32arr[index++] = point.y * phaseY;
302
- }
303
- else {
304
- float32arr[index++] = prevControlPoints.next.x;
305
- float32arr[index++] = prevControlPoints.next.y * phaseY;
306
- float32arr[index++] = controlPoints.previous.x;
307
- float32arr[index++] = controlPoints.previous.y * phaseY;
308
- float32arr[index++] = point.x;
309
- float32arr[index++] = point.y * phaseY;
310
- }
311
- prevControlPoints = controlPoints;
312
- prev = point;
313
- }
314
- const points = Utils.pointsFromBuffer(float32arr);
315
- if (__ANDROID__ && Utils.supportsDirectArrayBuffers()) {
316
- outputPath['setCubicLinesBuffer'](points, 0, index);
317
- }
318
- else {
319
- outputPath.setCubicLines(points, 0, index);
320
- }
321
- return [points, index];
322
- }
323
- else {
324
- outputPath.reset();
325
- return [];
326
- }
327
- }
328
- generateLinearPath(dataSet, outputPath) {
329
- if (this.mXBounds.range >= 1) {
330
- const isDrawSteppedEnabled = dataSet.mode === Mode.STEPPED;
331
- const entryCount = dataSet.entryCount;
332
- const pointsPerEntryPair = isDrawSteppedEnabled ? 4 : 2;
333
- if (!this.mLineBuffer || this.mLineBuffer.length < Math.max(entryCount * pointsPerEntryPair, pointsPerEntryPair) * 2) {
334
- this.mLineBuffer = Utils.createArrayBuffer(Math.max(entryCount * pointsPerEntryPair, pointsPerEntryPair) * 2);
335
- }
336
- const phaseX = this.animator.phaseX;
337
- const phaseY = this.animator.phaseY;
338
- const yKey = dataSet.yProperty;
339
- // const filled = outputPath;
340
- // outputPath.reset();
341
- let firstIndex = Math.max(0, this.mXBounds.min);
342
- const lastIndex = this.mXBounds.min + this.mXBounds.range;
343
- let firstEntry = dataSet.getEntryForIndex(firstIndex);
344
- let entryXVal = dataSet.getEntryXValue(firstEntry, firstIndex);
345
- let yVal = firstEntry[yKey];
346
- while (firstIndex < lastIndex && (yVal === undefined || yVal === null)) {
347
- firstIndex++;
348
- firstEntry = dataSet.getEntryForIndex(firstIndex);
349
- entryXVal = dataSet.getEntryXValue(firstEntry, firstIndex);
350
- yVal = firstEntry[yKey];
351
- }
352
- const float32arr = this.mLineBuffer;
353
- float32arr[0] = entryXVal;
354
- float32arr[1] = firstEntry[yKey] * phaseY;
355
- let index = 2;
356
- // create a new path
357
- let currentEntry = null;
358
- let currentEntryXVal;
359
- let currentEntryYVal;
360
- let previousEntryYVal;
361
- // doing the if test outside is much much faster on big data
362
- if (isDrawSteppedEnabled) {
363
- for (let x = firstIndex + 1; x <= lastIndex; x++) {
364
- currentEntry = dataSet.getEntryForIndex(x);
365
- currentEntryXVal = dataSet.getEntryXValue(currentEntry, x);
366
- currentEntryYVal = currentEntry[yKey];
367
- if (currentEntryYVal === undefined || currentEntryYVal === null) {
368
- continue;
369
- }
370
- float32arr[index++] = currentEntryXVal;
371
- float32arr[index++] = previousEntryYVal * phaseY;
372
- float32arr[index++] = currentEntryXVal;
373
- float32arr[index++] = currentEntryYVal * phaseY;
374
- previousEntryYVal = currentEntryYVal;
375
- }
376
- }
377
- else {
378
- for (let x = firstIndex + 1; x <= lastIndex; x++) {
379
- currentEntry = dataSet.getEntryForIndex(x);
380
- currentEntryXVal = dataSet.getEntryXValue(currentEntry, x);
381
- currentEntryYVal = currentEntry[yKey];
382
- if (currentEntryYVal === undefined || currentEntryYVal === null) {
383
- continue;
384
- }
385
- float32arr[index++] = currentEntryXVal;
386
- float32arr[index++] = currentEntryYVal * phaseY;
387
- previousEntryYVal = currentEntryYVal;
388
- }
389
- }
390
- const points = Utils.pointsFromBuffer(float32arr);
391
- if (__ANDROID__ && Utils.supportsDirectArrayBuffers()) {
392
- outputPath['setLinesBuffer'](points, 0, index);
393
- }
394
- else {
395
- outputPath.setLines(points, 0, index);
396
- }
397
- return [points, index];
398
- }
399
- else {
400
- outputPath.reset();
401
- return [];
402
- }
403
- }
404
- getMultiColorsShader(colors, points, trans, dataSet) {
405
- const nbColors = colors.length;
406
- const xKey = dataSet.xProperty;
407
- if (nbColors > 0) {
408
- trans.pointValuesToPixel(points);
409
- const shaderColors = [];
410
- const positions = [];
411
- const firstIndex = Math.max(0, this.mXBounds.min);
412
- const range = this.mXBounds.range;
413
- const lastIndex = firstIndex + range;
414
- const width = this.mViewPortHandler.chartWidth;
415
- const chartRect = this.mViewPortHandler.chartRect;
416
- let lastColor;
417
- const gradientDelta = 0;
418
- const posDelta = gradientDelta / width;
419
- for (let index = 0; index < nbColors; index++) {
420
- const color = colors[index];
421
- let colorIndex = color[xKey || 'index'];
422
- // if filtered we need to get the real index
423
- if (dataSet.isFiltered()) {
424
- dataSet.ignoreFiltered = true;
425
- const entry = dataSet.getEntryForIndex(colorIndex);
426
- dataSet.ignoreFiltered = false;
427
- if (entry) {
428
- colorIndex = dataSet.getEntryIndexForXValue(dataSet.getEntryXValue(entry, colorIndex), NaN, Rounding.CLOSEST);
429
- }
430
- }
431
- if (colorIndex < firstIndex) {
432
- lastColor = color.color;
433
- continue;
434
- }
435
- if (colorIndex > lastIndex) {
436
- if (shaderColors.length === 0) {
437
- shaderColors.push(lastColor);
438
- positions.push(0);
439
- shaderColors.push(lastColor);
440
- positions.push(1);
441
- }
442
- break;
443
- }
444
- const posX = Math.floor(points[(colorIndex - firstIndex) * 2]);
445
- const pos = (posX - chartRect.left) / width;
446
- if (lastColor) {
447
- if (shaderColors.length === 0) {
448
- shaderColors.push(lastColor);
449
- positions.push(0);
450
- }
451
- shaderColors.push(lastColor);
452
- positions.push(pos - posDelta);
453
- }
454
- shaderColors.push(color.color);
455
- positions.push(pos + posDelta);
456
- lastColor = color.color;
457
- }
458
- if (shaderColors.length === 0) {
459
- shaderColors.push(colors[0].color);
460
- positions.push(0);
461
- }
462
- if (shaderColors.length === 1) {
463
- shaderColors.push(colors[0].color);
464
- positions.push(1);
465
- }
466
- return new LinearGradient(0, 0, width, 0, shaderColors, positions, TileMode.CLAMP);
467
- }
468
- return null;
469
- }
470
- draw(c, dataSet) {
471
- const result = false;
472
- const drawFilled = dataSet.drawFilledEnabled;
473
- const drawLine = dataSet.lineWidth > 0;
474
- if (!drawFilled && !drawLine) {
475
- return result;
476
- }
477
- const trans = this.mChart.getTransformer(dataSet.axisDependency);
478
- const linePath = Utils.getTempPath();
479
- this.mXBounds.set(this.mChart, dataSet, this.animator);
480
- let points;
481
- switch (dataSet.mode) {
482
- default:
483
- case Mode.LINEAR:
484
- case Mode.STEPPED:
485
- points = this.generateLinearPath(dataSet, linePath)[0];
486
- break;
487
- case Mode.CUBIC_BEZIER:
488
- points = this.generateCubicPath(dataSet, linePath)[0];
489
- break;
490
- case Mode.HORIZONTAL_BEZIER:
491
- points = this.generateHorizontalBezierPath(dataSet, linePath)[0];
492
- break;
493
- }
494
- if (!points) {
495
- return result;
496
- }
497
- const colors = dataSet.colors || [dataSet.color];
498
- const nbColors = colors.length;
499
- const renderPaint = this.renderPaint;
500
- let paintColorsShader;
501
- if (nbColors > 1) {
502
- // TODO: we transforms points in there. Could be dangerous if used after
503
- paintColorsShader = this.getMultiColorsShader(colors, points, trans, dataSet);
504
- }
505
- let oldShader;
506
- if (drawFilled) {
507
- const useColorsForFill = dataSet.useColorsForFill;
508
- if (paintColorsShader && useColorsForFill) {
509
- oldShader = renderPaint.getShader();
510
- renderPaint.setShader(paintColorsShader);
511
- }
512
- const fillPath = this.fillPath;
513
- fillPath.reset();
514
- fillPath.addPath(linePath);
515
- const minEntryValue = dataSet.getEntryXValue(dataSet.getEntryForIndex(this.mXBounds.min), this.mXBounds.min);
516
- const maxEntryValue = dataSet.getEntryXValue(dataSet.getEntryForIndex(this.mXBounds.min + this.mXBounds.range), this.mXBounds.min + this.mXBounds.range);
517
- this.drawFill(c, dataSet, fillPath, trans, minEntryValue, maxEntryValue);
518
- this.lastLinePath = linePath;
519
- if (paintColorsShader && useColorsForFill) {
520
- renderPaint.setShader(oldShader);
521
- oldShader = null;
522
- }
523
- }
524
- const customRender = this.mChart.customRenderer;
525
- if (drawLine) {
526
- const useColorsForLine = dataSet.useColorsForLine;
527
- if (paintColorsShader && useColorsForLine) {
528
- oldShader = renderPaint.getShader();
529
- renderPaint.setShader(paintColorsShader);
530
- }
531
- trans.pathValueToPixel(linePath);
532
- if (customRender?.drawLine) {
533
- customRender.drawLine(c, linePath, renderPaint);
534
- }
535
- else {
536
- this.drawPath(c, linePath, renderPaint);
537
- }
538
- if (paintColorsShader && useColorsForLine) {
539
- renderPaint.setShader(oldShader);
540
- oldShader = null;
541
- }
542
- }
543
- return result;
544
- }
545
- drawLines(canvas, points, offest, length, paint, matrix) {
546
- if (matrix) {
547
- canvas.drawLines(points, offest, length, paint, matrix);
548
- }
549
- else {
550
- canvas.drawLines(points, offest, length, paint);
551
- }
552
- }
553
- drawFill(c, dataSet, spline, trans, min, max, color, fillMin) {
554
- const fillFormatter = dataSet.fillFormatter;
555
- if (fillFormatter.getFillLinePath) {
556
- fillFormatter.getFillLinePath(dataSet, this.mChart, spline, this.lastLinePath);
557
- }
558
- else if (fillMin === undefined) {
559
- fillMin = fillFormatter.getFillLinePosition(dataSet, this.mChart);
560
- spline.lineTo(max, fillMin);
561
- spline.lineTo(min, fillMin);
562
- spline.close();
563
- }
564
- trans && trans.pathValueToPixel(spline);
565
- const drawable = dataSet.fillDrawable;
566
- if (drawable) {
567
- this.drawFilledPathBitmap(c, spline, drawable, dataSet.fillShader);
568
- }
569
- else {
570
- this.drawFilledPath(c, spline, color || dataSet.fillColor, dataSet.fillAlpha, dataSet.fillShader);
571
- }
572
- }
573
- drawValuesForDataset(c, dataSet, dataSetIndex) {
574
- const yKey = dataSet.yProperty;
575
- // apply the text-styling defined by the DataSet
576
- this.applyValueTextStyle(dataSet);
577
- const chart = this.mChart;
578
- const trans = chart.getTransformer(dataSet.axisDependency);
579
- // make sure the values do not interfear with the circles
580
- let valOffset = dataSet.circleRadius * 1.75;
581
- if (!dataSet.drawCirclesEnabled)
582
- valOffset = valOffset / 2;
583
- this.mXBounds.set(chart, dataSet, this.animator);
584
- const { points, count } = trans.generateTransformedValues(dataSet, this.animator.phaseX, this.animator.phaseY, this.mXBounds.min, this.mXBounds.max);
585
- const formatter = dataSet.valueFormatter;
586
- const iconsOffset = dataSet.iconsOffset;
587
- const valuesOffset = dataSet.valuesOffset;
588
- const drawIcons = dataSet.drawIconsEnabled;
589
- const drawValues = dataSet.drawValuesEnabled;
590
- const length = count;
591
- const paint = this.valuePaint;
592
- const customRender = chart.customRenderer;
593
- for (let j = 0; j < length; j += 2) {
594
- const x = points[j];
595
- const y = points[j + 1];
596
- if (!this.mViewPortHandler.isInBoundsRight(x))
597
- break;
598
- if (!this.mViewPortHandler.isInBoundsLeft(x) || !this.mViewPortHandler.isInBoundsY(y))
599
- continue;
600
- const index = j / 2 + this.mXBounds.min;
601
- const entry = dataSet.getEntryForIndex(index);
602
- if (!entry)
603
- continue;
604
- const yVal = entry[yKey];
605
- if (yVal === undefined || yVal === null) {
606
- continue;
607
- }
608
- if (drawValues) {
609
- this.drawValue(c, chart, dataSet, dataSetIndex, entry, index, formatter.getFormattedValue(yVal, entry), valuesOffset.x + x, valuesOffset.y + y - valOffset, dataSet.getValueTextColor(j / 2), paint, customRender);
610
- }
611
- if (drawIcons) {
612
- this.drawIcon(c, chart, dataSet, dataSetIndex, entry, index, dataSet.getEntryIcon(entry), x + iconsOffset.x, y + iconsOffset.y, customRender);
613
- }
614
- }
615
- }
616
- drawValues(c) {
617
- const data = this.mChart.lineData;
618
- const dataSets = data.dataSets;
619
- if (!this.isDrawingValuesAllowed(this.mChart) || dataSets.some((d) => d.drawValuesEnabled || d.drawIconsEnabled) === false) {
620
- return;
621
- }
622
- for (let i = 0; i < dataSets.length; i++) {
623
- const dataSet = dataSets[i];
624
- if (!this.shouldDrawValues(dataSet) || dataSet.entryCount < 1)
625
- continue;
626
- this.drawValuesForDataset(c, dataSet, i);
627
- }
628
- }
629
- drawExtras(c) {
630
- this.drawCircles(c);
631
- }
632
- drawCirclesForDataset(c, dataSet) {
633
- const paint = this.circlePaintInner;
634
- paint.setColor(dataSet.circleHoleColor);
635
- const phaseY = this.animator.phaseY;
636
- const yKey = dataSet.yProperty;
637
- const trans = this.mChart.getTransformer(dataSet.axisDependency);
638
- this.mXBounds.set(this.mChart, dataSet, this.animator);
639
- const circleRadius = dataSet.circleRadius;
640
- const circleHoleRadius = dataSet.circleHoleRadius;
641
- const drawCircleHole = dataSet.drawCircleHoleEnabled && circleHoleRadius < circleRadius && circleHoleRadius > 0;
642
- const drawTransparentCircleHole = drawCircleHole && dataSet.circleHoleColor === ColorTemplate.COLOR_NONE;
643
- let imageCache;
644
- if (this.mImageCaches.get(dataSet)) {
645
- imageCache = this.mImageCaches.get(dataSet);
646
- }
647
- else {
648
- imageCache = new DataSetImageCache();
649
- this.mImageCaches.set(dataSet, imageCache);
650
- }
651
- const changeRequired = imageCache.init(dataSet);
652
- // only fill the cache with new bitmaps if a change is required
653
- if (changeRequired) {
654
- const renderPaint = this.renderPaint;
655
- imageCache.fill(dataSet, renderPaint, paint, drawCircleHole, drawTransparentCircleHole);
656
- }
657
- const boundsRangeCount = this.mXBounds.range + this.mXBounds.min;
658
- const circleBuffer = Utils.getTempArray(2);
659
- const destRect = Utils.getTempRectF();
660
- for (let j = this.mXBounds.min; j <= boundsRangeCount; j++) {
661
- const e = dataSet.getEntryForIndex(j);
662
- if (!e)
663
- continue;
664
- const yVal = e[yKey];
665
- if (yVal === null || yVal === undefined)
666
- continue;
667
- circleBuffer[0] = dataSet.getEntryXValue(e, j);
668
- circleBuffer[1] = yVal * phaseY;
669
- trans.pointValuesToPixel(circleBuffer);
670
- // native buffer access is slow
671
- const cx = circleBuffer[0];
672
- const cy = circleBuffer[1];
673
- if (!this.mViewPortHandler.isInBoundsRight(cx))
674
- break;
675
- if (!this.mViewPortHandler.isInBoundsLeft(cx) || !this.mViewPortHandler.isInBoundsY(cy))
676
- continue;
677
- const circleBitmap = imageCache.getBitmap(j);
678
- if (circleBitmap) {
679
- destRect.set(cx - circleRadius, cy - circleRadius, cx - circleRadius + 2 * circleRadius, cy - circleRadius + 2 * circleRadius);
680
- c.drawBitmap(circleBitmap, null, destRect, null);
681
- }
682
- }
683
- }
684
- drawCircles(c) {
685
- const dataSets = this.mChart.lineData.visibleDataSets;
686
- if (dataSets.some((d) => d.drawCirclesEnabled) === false) {
687
- return;
688
- }
689
- const renderPaint = this.renderPaint;
690
- renderPaint.setStyle(Style.FILL);
691
- const circleBuffer = Utils.getTempArray(2);
692
- circleBuffer[0] = 0;
693
- circleBuffer[1] = 0;
694
- for (let i = 0; i < dataSets.length; i++) {
695
- const dataSet = dataSets[i];
696
- if (!dataSet.drawCirclesEnabled || dataSet.entryCount === 0)
697
- continue;
698
- this.drawCirclesForDataset(c, dataSet);
699
- }
700
- }
701
- drawHighlighted(c, indices, actualDraw = true) {
702
- const lineData = this.mChart.lineData;
703
- const customRender = this.mChart.customRenderer;
704
- const paint = this.highlightPaint;
705
- for (const high of indices) {
706
- const set = lineData.getDataSetByIndex(high.dataSetIndex);
707
- if (!set || !set.highlightEnabled)
708
- continue;
709
- const { entry, index } = lineData.getEntryAndIndexForHighlight(high);
710
- // let e = set.getEntryForXValue(high.x high.y);
711
- if (!this.isInBoundsX(entry, set))
712
- continue;
713
- const yKey = set.yProperty;
714
- const pix = this.mChart.getTransformer(set.axisDependency).getPixelForValues(set.getEntryXValue(entry, index), entry[yKey] * this.animator.phaseY);
715
- high.drawX = pix.x;
716
- high.drawY = pix.y;
717
- if (!actualDraw) {
718
- continue;
719
- }
720
- if (customRender && customRender.drawHighlight) {
721
- customRender.drawHighlight(c, high, set, paint);
722
- }
723
- else {
724
- this.drawHighlightLines(c, high.drawX, high.drawY, set);
725
- }
726
- }
727
- }
728
- /**
729
- * Releases the drawing bitmap. This should be called when {@link LineChart#onDetachedFromWindow()}.
730
- */
731
- releaseBitmap() {
732
- if (this.mBitmapCanvas) {
733
- this.mBitmapCanvas.setBitmap(null);
734
- this.mBitmapCanvas = null;
735
- }
736
- if (this.mDrawBitmap) {
737
- const drawBitmap = this.mDrawBitmap.get();
738
- if (drawBitmap) {
739
- releaseImage(drawBitmap);
740
- }
741
- this.mDrawBitmap = null;
742
- }
743
- }
744
- }
745
- __decorate([
746
- profile
747
- ], LineChartRenderer.prototype, "drawData", null);
748
- __decorate([
749
- profile
750
- ], LineChartRenderer.prototype, "drawDataSet", null);
751
- __decorate([
752
- profile
753
- ], LineChartRenderer.prototype, "generateHorizontalBezierPath", null);
754
- __decorate([
755
- profile
756
- ], LineChartRenderer.prototype, "generateCubicPath", null);
757
- __decorate([
758
- profile
759
- ], LineChartRenderer.prototype, "drawLines", null);
760
- __decorate([
761
- profile
762
- ], LineChartRenderer.prototype, "drawValuesForDataset", null);
763
- __decorate([
764
- profile
765
- ], LineChartRenderer.prototype, "drawCirclesForDataset", null);
766
- //# sourceMappingURL=LineChartRenderer.js.map