(params, data)
| 35660 | } |
| 35661 | |
| 35662 | function progress(params, data) { |
| 35663 | var segCount = params.end - params.start; |
| 35664 | var points = isLargeRender && new Float32Array(segCount * dimLen); |
| 35665 | |
| 35666 | for (var i = params.start, offset = 0, tmpIn = [], tmpOut = []; i < params.end; i++) { |
| 35667 | var point; |
| 35668 | |
| 35669 | if (dimLen === 1) { |
| 35670 | var x = data.get(dims[0], i); |
| 35671 | point = !isNaN(x) && coordSys.dataToPoint(x, null, tmpOut); |
| 35672 | } |
| 35673 | else { |
| 35674 | var x = tmpIn[0] = data.get(dims[0], i); |
| 35675 | var y = tmpIn[1] = data.get(dims[1], i); |
| 35676 | // Also {Array.<number>}, not undefined to avoid if...else... statement |
| 35677 | point = !isNaN(x) && !isNaN(y) && coordSys.dataToPoint(tmpIn, null, tmpOut); |
| 35678 | } |
| 35679 | |
| 35680 | if (isLargeRender) { |
| 35681 | points[offset++] = point ? point[0] : NaN; |
| 35682 | points[offset++] = point ? point[1] : NaN; |
| 35683 | } |
| 35684 | else { |
| 35685 | data.setItemLayout(i, (point && point.slice()) || [NaN, NaN]); |
| 35686 | } |
| 35687 | } |
| 35688 | |
| 35689 | isLargeRender && data.setLayout('symbolPoints', points); |
| 35690 | } |
| 35691 | |
| 35692 | return dimLen && {progress: progress}; |
| 35693 | } |
nothing calls this directly
no test coverage detected