MCPcopy
hub / github.com/apache/echarts / getIsInPiecewiseRange

Function getIsInPiecewiseRange

src/chart/heatmap/HeatmapView.ts:42–80  ·  view source on GitHub ↗
(
    dataExtent: number[],
    pieceList: ReturnType<PiecewiseModel['getPieceList']>,
    selected: Dictionary<boolean>
)

Source from the content-addressed store, hash-verified

40
41
42function getIsInPiecewiseRange(
43 dataExtent: number[],
44 pieceList: ReturnType<PiecewiseModel['getPieceList']>,
45 selected: Dictionary<boolean>
46) {
47 const dataSpan = dataExtent[1] - dataExtent[0];
48 pieceList = zrUtil.map(pieceList, function (piece) {
49 return {
50 interval: [
51 (piece.interval[0] - dataExtent[0]) / dataSpan,
52 (piece.interval[1] - dataExtent[0]) / dataSpan
53 ]
54 };
55 });
56 const len = pieceList.length;
57 let lastIndex = 0;
58
59 return function (val: number) {
60 let i;
61 // Try to find in the location of the last found
62 for (i = lastIndex; i < len; i++) {
63 const interval = pieceList[i].interval;
64 if (interval[0] <= val && val <= interval[1]) {
65 lastIndex = i;
66 break;
67 }
68 }
69 if (i === len) { // Not found, back interation
70 for (i = lastIndex - 1; i >= 0; i--) {
71 const interval = pieceList[i].interval;
72 if (interval[0] <= val && val <= interval[1]) {
73 lastIndex = i;
74 break;
75 }
76 }
77 }
78 return i >= 0 && i < len && selected[i];
79 };
80}
81
82function getIsInContinuousRange(dataExtent: number[], range: number[]) {
83 const dataSpan = dataExtent[1] - dataExtent[0];

Callers 1

_renderOnGeoMethod · 0.85

Calls 1

mapMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…