@thewtex/vtk.js-esm
Version:
Visualization Toolkit for the Web
25 lines (20 loc) • 743 B
JavaScript
import { r as register } from '../../../vendor/webworker-promise/lib/register.js';
/* eslint-disable */
// prettier-ignore
register(function (message, emit) {
var array = message.array;
var min = message.min;
var max = message.max;
var offset = message.component || 0;
var step = message.numberOfComponents || 1;
var numberOfBins = message.numberOfBins;
var delta = max - min;
var histogram = new Float32Array(numberOfBins);
histogram.fill(0);
var len = array.length;
for (var i = offset; i < len; i += step) {
var idx = Math.floor((numberOfBins - 1) * (Number(array[i]) - min) / delta);
histogram[idx] += 1;
}
return Promise.resolve(new register.TransferableResponse(histogram, [histogram.buffer]));
});