diff --git a/src/spectrum/__tests__/updateRangessInfo.test.js b/src/spectrum/__tests__/updateRangesInfo.test.js similarity index 87% rename from src/spectrum/__tests__/updateRangessInfo.test.js rename to src/spectrum/__tests__/updateRangesInfo.test.js index 62a9365..e39e076 100644 --- a/src/spectrum/__tests__/updateRangessInfo.test.js +++ b/src/spectrum/__tests__/updateRangesInfo.test.js @@ -30,6 +30,9 @@ describe('updateRangesInfo', () => { label: 'A', from: 0, to: 3, + baseline: 4.5, + correctedIntegration: 0, + deltaX: 3, integration: 4.5, maxPoint: { x: 3, y: 3, index: 3 }, minPoint: { x: 0, y: 0, index: 0 }, @@ -40,6 +43,9 @@ describe('updateRangesInfo', () => { label: 'B', from: 4, to: 6, + baseline: 8, + correctedIntegration: 1, + deltaX: 2, integration: 9, maxPoint: { x: 5, y: 5, index: 5 }, minPoint: { x: 4, y: 4, index: 4 }, diff --git a/src/spectrum/updateRangesInfo.js b/src/spectrum/updateRangesInfo.js index 898d646..819855a 100644 --- a/src/spectrum/updateRangesInfo.js +++ b/src/spectrum/updateRangesInfo.js @@ -19,7 +19,10 @@ export function updateRangesInfo(spectrum, ranges = []) { fromIndex: xFindClosestIndex(spectrum.normalized.x, range.from), toIndex: xFindClosestIndex(spectrum.normalized.x, range.to), }; + range.deltaX = spectrum.normalized.x[fromToIndex.toIndex] - spectrum.normalized.x[fromToIndex.fromIndex]; + range.baseline = (spectrum.normalized.y[fromToIndex.toIndex] + spectrum.normalized.y[fromToIndex.fromIndex]) * range.deltaX / 2; range.integration = xyIntegration(spectrum.normalized, fromToIndex); + range.correctedIntegration = range.integration - range.baseline; range.maxPoint = xyMaxYPoint(spectrum.normalized, fromToIndex); range.minPoint = xyMinYPoint(spectrum.normalized, fromToIndex); range.x = spectrum.normalized.x.slice(