scichart 2.0.2194 → 2.1.0-beta.40
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.
- package/Charting/ChartModifiers/CursorModifier.d.ts +9 -0
- package/Charting/ChartModifiers/CursorModifier.js +10 -0
- package/Charting/ChartModifiers/DataPointSelectionModifier.js +0 -1
- package/Charting/ChartModifiers/RolloverModifier.d.ts +25 -0
- package/Charting/ChartModifiers/RolloverModifier.js +8 -0
- package/Charting/Drawing/BrushCache.d.ts +8 -2
- package/Charting/Drawing/BrushCache.js +16 -8
- package/Charting/Drawing/WebGlRenderContext2D.d.ts +1 -0
- package/Charting/Drawing/WebGlRenderContext2D.js +4 -1
- package/Charting/LayoutManager/BaseAxisLayoutStrategy.d.ts +2 -0
- package/Charting/LayoutManager/BaseAxisLayoutStrategy.js +33 -0
- package/Charting/LayoutManager/BottomAlignedOuterHorizontallyStackedAxisLayoutStrategy.js +18 -2
- package/Charting/LayoutManager/LeftAlignedOuterVerticallyStackedAxisLayoutStrategy.js +19 -2
- package/Charting/LayoutManager/RightAlignedOuterVerticallyStackedAxisLayoutStrategy.js +18 -2
- package/Charting/LayoutManager/TopAlignedOuterHorizontallyStackedAxisLayoutStrategy.js +18 -2
- package/Charting/Model/BaseDataSeries.d.ts +42 -15
- package/Charting/Model/BaseDataSeries.js +77 -28
- package/Charting/Model/BaseHeatmapDataSeries.d.ts +31 -23
- package/Charting/Model/BaseHeatmapDataSeries.js +45 -18
- package/Charting/Model/DataDistributionCalculator/DataDistributionCalculator.d.ts +23 -0
- package/Charting/Model/DataDistributionCalculator/DataDistributionCalculator.js +122 -0
- package/Charting/Model/DataDistributionCalculator/IDataDistributionCalculator.d.ts +57 -0
- package/Charting/Model/DataDistributionCalculator/IDataDistributionCalculator.js +2 -0
- package/Charting/Model/Filters/OhlcFilterBase.d.ts +2 -2
- package/Charting/Model/Filters/XyFilterBase.d.ts +3 -3
- package/Charting/Model/Filters/XyMovingAverageFilter.js +1 -1
- package/Charting/Model/Filters/XyyFilterBase.d.ts +4 -4
- package/Charting/Model/Filters/XyzFilterBase.d.ts +4 -4
- package/Charting/Model/IDataSeries.d.ts +37 -5
- package/Charting/Model/OhlcDataSeries.d.ts +12 -11
- package/Charting/Model/OhlcDataSeries.js +47 -44
- package/Charting/Model/PointSeries/BasePointSeriesResampled.d.ts +21 -0
- package/Charting/Model/PointSeries/BasePointSeriesResampled.js +56 -0
- package/Charting/Model/PointSeries/BasePointSeriesWrapped.d.ts +14 -0
- package/Charting/Model/PointSeries/BasePointSeriesWrapped.js +23 -0
- package/Charting/Model/PointSeries/IPointSeries.d.ts +31 -0
- package/Charting/Model/PointSeries/IPointSeries.js +2 -0
- package/Charting/Model/PointSeries/OhlcPointSeriesResampled.d.ts +13 -0
- package/Charting/Model/PointSeries/OhlcPointSeriesResampled.js +59 -0
- package/Charting/Model/PointSeries/OhlcPointSeriesWrapped.d.ts +11 -0
- package/Charting/Model/PointSeries/OhlcPointSeriesWrapped.js +32 -0
- package/Charting/Model/PointSeries/XyPointSeriesResampled.d.ts +7 -0
- package/Charting/Model/PointSeries/XyPointSeriesResampled.js +27 -0
- package/Charting/Model/PointSeries/XyPointSeriesWrapped.d.ts +6 -0
- package/Charting/Model/PointSeries/XyPointSeriesWrapped.js +27 -0
- package/Charting/Model/PointSeries/XyyPointSeriesResampled.d.ts +10 -0
- package/Charting/Model/PointSeries/XyyPointSeriesResampled.js +48 -0
- package/Charting/Model/PointSeries/XyyPointSeriesWrapped.d.ts +8 -0
- package/Charting/Model/PointSeries/XyyPointSeriesWrapped.js +29 -0
- package/Charting/Model/PointSeries/XyzPointSeriesWrapped.d.ts +8 -0
- package/Charting/Model/PointSeries/XyzPointSeriesWrapped.js +29 -0
- package/Charting/Model/XyDataSeries.d.ts +3 -2
- package/Charting/Model/XyDataSeries.js +26 -26
- package/Charting/Model/XyyDataSeries.d.ts +5 -5
- package/Charting/Model/XyyDataSeries.js +30 -27
- package/Charting/Model/XyzDataSeries.d.ts +5 -5
- package/Charting/Model/XyzDataSeries.js +30 -27
- package/Charting/Numerics/CoordinateCalculators/CategoryCoordinateCalculator.d.ts +2 -2
- package/Charting/Numerics/CoordinateCalculators/FlippedCategoryCoordinateCalculator.d.ts +2 -2
- package/Charting/Numerics/CoordinateCalculators/FlippedNumericCoordinateCalculator.d.ts +2 -1
- package/Charting/Numerics/CoordinateCalculators/FlippedNumericCoordinateCalculator.js +6 -2
- package/Charting/Numerics/CoordinateCalculators/NumericCoordinateCalculator.d.ts +2 -1
- package/Charting/Numerics/CoordinateCalculators/NumericCoordinateCalculator.js +6 -2
- package/Charting/Numerics/Resamplers/ExtremeResamplerHelper.d.ts +54 -0
- package/Charting/Numerics/Resamplers/ExtremeResamplerHelper.js +232 -0
- package/Charting/Numerics/Resamplers/ResamplingMode.d.ts +37 -0
- package/Charting/Numerics/Resamplers/ResamplingMode.js +41 -0
- package/Charting/Numerics/Resamplers/ResamplingParams.d.ts +39 -0
- package/Charting/Numerics/Resamplers/ResamplingParams.js +52 -0
- package/Charting/Services/RenderPassData.d.ts +6 -1
- package/Charting/Services/RenderPassData.js +5 -1
- package/Charting/Services/RenderPassInfo.d.ts +18 -0
- package/Charting/Services/RenderPassInfo.js +14 -0
- package/Charting/Services/SciChartRenderer.d.ts +14 -1
- package/Charting/Services/SciChartRenderer.js +124 -31
- package/Charting/Visuals/Annotations/AnnotationBase.d.ts +1 -1
- package/Charting/Visuals/Annotations/CursorTooltipSvgAnnotation.d.ts +1 -0
- package/Charting/Visuals/Annotations/CursorTooltipSvgAnnotation.js +6 -0
- package/Charting/Visuals/Annotations/RolloverMarkerSvgAnnotation.d.ts +5 -0
- package/Charting/Visuals/Annotations/RolloverMarkerSvgAnnotation.js +12 -1
- package/Charting/Visuals/Annotations/RolloverTooltipSvgAnnotation.d.ts +6 -8
- package/Charting/Visuals/Annotations/RolloverTooltipSvgAnnotation.js +12 -9
- package/Charting/Visuals/Annotations/SvgAnnotationBase.js +7 -2
- package/Charting/Visuals/Axis/AxisBase2D.d.ts +23 -0
- package/Charting/Visuals/Axis/AxisBase2D.js +71 -24
- package/Charting/Visuals/Axis/AxisCore.d.ts +11 -0
- package/Charting/Visuals/Axis/AxisCore.js +39 -18
- package/Charting/Visuals/Axis/AxisRenderer.d.ts +1 -0
- package/Charting/Visuals/Axis/AxisRenderer.js +37 -10
- package/Charting/Visuals/Axis/IAxisCoreOptions.d.ts +5 -0
- package/Charting/Visuals/Axis/LabelProvider/LabelCache.js +2 -2
- package/Charting/Visuals/Axis/LabelProvider/LabelProviderBase2D.js +9 -4
- package/Charting/Visuals/Axis/NumericAxis.js +2 -2
- package/Charting/Visuals/Axis/constants.d.ts +1 -0
- package/Charting/Visuals/Axis/constants.js +1 -0
- package/Charting/Visuals/RenderableSeries/Animations/FadeAnimation.d.ts +2 -2
- package/Charting/Visuals/RenderableSeries/Animations/ScaleAnimation.d.ts +2 -2
- package/Charting/Visuals/RenderableSeries/Animations/SeriesAnimation.d.ts +3 -3
- package/Charting/Visuals/RenderableSeries/Animations/SweepAnimation.d.ts +2 -2
- package/Charting/Visuals/RenderableSeries/Animations/WaveAnimation.d.ts +2 -2
- package/Charting/Visuals/RenderableSeries/Animations/animationHelpers.d.ts +6 -6
- package/Charting/Visuals/RenderableSeries/Animations/animationHelpers.js +2 -2
- package/Charting/Visuals/RenderableSeries/BaseBandRenderableSeries.d.ts +9 -2
- package/Charting/Visuals/RenderableSeries/BaseBandRenderableSeries.js +45 -1
- package/Charting/Visuals/RenderableSeries/BaseLineRenderableSeries.d.ts +1 -0
- package/Charting/Visuals/RenderableSeries/BaseLineRenderableSeries.js +1 -0
- package/Charting/Visuals/RenderableSeries/BaseMountainRenderableSeries.d.ts +1 -0
- package/Charting/Visuals/RenderableSeries/BaseMountainRenderableSeries.js +1 -0
- package/Charting/Visuals/RenderableSeries/BaseOhlcRenderableSeries.d.ts +12 -5
- package/Charting/Visuals/RenderableSeries/BaseOhlcRenderableSeries.js +59 -0
- package/Charting/Visuals/RenderableSeries/BaseRenderableSeries.d.ts +40 -5
- package/Charting/Visuals/RenderableSeries/BaseRenderableSeries.js +116 -11
- package/Charting/Visuals/RenderableSeries/BaseStackedCollection.d.ts +36 -4
- package/Charting/Visuals/RenderableSeries/BaseStackedCollection.js +51 -3
- package/Charting/Visuals/RenderableSeries/BaseStackedRenderableSeries.d.ts +38 -4
- package/Charting/Visuals/RenderableSeries/BaseStackedRenderableSeries.js +54 -3
- package/Charting/Visuals/RenderableSeries/DrawingProviders/BandSeriesDrawingProvider.d.ts +1 -1
- package/Charting/Visuals/RenderableSeries/DrawingProviders/BandSeriesDrawingProvider.js +8 -14
- package/Charting/Visuals/RenderableSeries/DrawingProviders/BaseSeriesDrawingProvider.js +4 -3
- package/Charting/Visuals/RenderableSeries/DrawingProviders/BubbleSeriesDrawingProvider.js +5 -11
- package/Charting/Visuals/RenderableSeries/DrawingProviders/ColumnSeriesDrawingProvider.js +4 -11
- package/Charting/Visuals/RenderableSeries/DrawingProviders/LineSeriesDrawingProvider.d.ts +2 -1
- package/Charting/Visuals/RenderableSeries/DrawingProviders/LineSeriesDrawingProvider.js +17 -21
- package/Charting/Visuals/RenderableSeries/DrawingProviders/MountainSeriesDrawingProvider.js +16 -15
- package/Charting/Visuals/RenderableSeries/DrawingProviders/OhlcSeriesDrawingProvider.js +9 -15
- package/Charting/Visuals/RenderableSeries/DrawingProviders/PointMarkerDrawingProvider.d.ts +4 -3
- package/Charting/Visuals/RenderableSeries/DrawingProviders/PointMarkerDrawingProvider.js +16 -21
- package/Charting/Visuals/RenderableSeries/DrawingProviders/UniformContoursDrawingProvider.js +2 -9
- package/Charting/Visuals/RenderableSeries/DrawingProviders/UniformHeatmapDrawingProvider.js +0 -7
- package/Charting/Visuals/RenderableSeries/FastBubbleRenderableSeries.d.ts +6 -2
- package/Charting/Visuals/RenderableSeries/FastBubbleRenderableSeries.js +5 -0
- package/Charting/Visuals/RenderableSeries/FastColumnRenderableSeries.d.ts +1 -0
- package/Charting/Visuals/RenderableSeries/FastColumnRenderableSeries.js +1 -0
- package/Charting/Visuals/RenderableSeries/FastLineRenderableSeries.d.ts +1 -0
- package/Charting/Visuals/RenderableSeries/FastLineRenderableSeries.js +6 -0
- package/Charting/Visuals/RenderableSeries/HitTest/BandSeriesHitTestProvider.js +2 -2
- package/Charting/Visuals/RenderableSeries/HitTest/BaseHitTestProvider.js +1 -1
- package/Charting/Visuals/RenderableSeries/HitTest/BubbleSeriesHitTestProvider.js +1 -1
- package/Charting/Visuals/RenderableSeries/HitTest/ColumnSeriesHitTestProvider.js +2 -2
- package/Charting/Visuals/RenderableSeries/HitTest/LineSeriesHitTestProvider.js +2 -2
- package/Charting/Visuals/RenderableSeries/HitTest/MountainSeriesHitTestProvider.js +1 -1
- package/Charting/Visuals/RenderableSeries/HitTest/OhlcSeriesHitTestProvider.js +2 -2
- package/Charting/Visuals/RenderableSeries/HitTest/ScatterSeriesHitTestProvider.js +1 -1
- package/Charting/Visuals/RenderableSeries/HitTest/StackedColumnSeriesHitTestProvider.js +2 -2
- package/Charting/Visuals/RenderableSeries/HitTest/StackedMountainSeriesHitTestProvider.js +2 -2
- package/Charting/Visuals/RenderableSeries/HitTest/hitTestHelpers.d.ts +6 -6
- package/Charting/Visuals/RenderableSeries/HitTest/hitTestHelpers.js +1 -1
- package/Charting/Visuals/RenderableSeries/IBaseRenderableSeriesOptions.d.ts +12 -1
- package/Charting/Visuals/RenderableSeries/IRenderableSeries.d.ts +38 -2
- package/Charting/Visuals/RenderableSeries/ISpline.d.ts +3 -3
- package/Charting/Visuals/RenderableSeries/SplineBandRenderableSeries.d.ts +4 -4
- package/Charting/Visuals/RenderableSeries/SplineBandRenderableSeries.js +5 -5
- package/Charting/Visuals/RenderableSeries/SplineLineRenderableSeries.d.ts +3 -3
- package/Charting/Visuals/RenderableSeries/SplineLineRenderableSeries.js +3 -3
- package/Charting/Visuals/RenderableSeries/SplineMountainRenderableSeries.d.ts +3 -3
- package/Charting/Visuals/RenderableSeries/SplineMountainRenderableSeries.js +3 -3
- package/Charting/Visuals/RenderableSeries/StackedColumnCollection.js +0 -6
- package/Charting/Visuals/RenderableSeries/StackedMountainCollection.d.ts +1 -1
- package/Charting/Visuals/RenderableSeries/StackedMountainCollection.js +1 -7
- package/Charting/Visuals/RenderableSeries/UniformContoursRenderableSeries.d.ts +5 -0
- package/Charting/Visuals/RenderableSeries/UniformContoursRenderableSeries.js +6 -0
- package/Charting/Visuals/RenderableSeries/UniformHeatmapRenderableSeries.d.ts +5 -0
- package/Charting/Visuals/RenderableSeries/UniformHeatmapRenderableSeries.js +6 -0
- package/Charting/Visuals/RenderableSeries/XyScatterRenderableSeries.d.ts +5 -3
- package/Charting/Visuals/RenderableSeries/XyScatterRenderableSeries.js +6 -3
- package/Charting/Visuals/RenderableSeries/constants.d.ts +3 -0
- package/Charting/Visuals/RenderableSeries/constants.js +3 -0
- package/Charting/Visuals/SciChartDefaults.d.ts +9 -1
- package/Charting/Visuals/SciChartDefaults.js +9 -1
- package/Charting/Visuals/SciChartSurface.d.ts +4 -4
- package/Charting/Visuals/SciChartSurface.js +18 -11
- package/Charting/Visuals/SciChartSurfaceBase.d.ts +3 -2
- package/Charting/Visuals/SciChartSurfaceBase.js +4 -4
- package/Charting/Visuals/createMaster.d.ts +1 -1
- package/Charting/Visuals/createMaster.js +11 -6
- package/Charting/Visuals/createSingle.d.ts +1 -1
- package/Charting/Visuals/createSingle.js +2 -2
- package/Charting/Visuals/licenseManager2D.js +22 -21
- package/Charting/Visuals/licenseManager2dState.d.ts +4 -0
- package/Charting/Visuals/licenseManager2dState.js +12 -0
- package/Charting/Visuals/sciChartInitCommon.d.ts +2 -2
- package/Charting/Visuals/sciChartInitCommon.js +18 -12
- package/Charting3D/Model/DataSeries/XyzDataSeries3D.d.ts +7 -7
- package/Charting3D/Model/DataSeries/XyzDataSeries3D.js +3 -3
- package/Charting3D/Visuals/SciChart3DSurface.d.ts +2 -2
- package/Charting3D/Visuals/SciChart3DSurface.js +3 -3
- package/Charting3D/Visuals/createMaster3d.d.ts +1 -1
- package/Charting3D/Visuals/createMaster3d.js +11 -6
- package/Charting3D/Visuals/createSingle3d.d.ts +1 -1
- package/Charting3D/Visuals/createSingle3d.js +2 -2
- package/Core/BuildStamp.d.ts +1 -1
- package/Core/BuildStamp.js +2 -2
- package/Core/NumberRange.d.ts +1 -0
- package/Core/NumberRange.js +8 -0
- package/Core/OneTimePerformanceWarning.d.ts +6 -0
- package/Core/OneTimePerformanceWarning.js +19 -0
- package/Core/storage/localStorageApi.d.ts +9 -0
- package/Core/storage/localStorageApi.js +32 -0
- package/_wasm/scichart.browser.js +1 -1
- package/_wasm/scichart2d.js +12 -12
- package/_wasm/scichart2d.wasm +0 -0
- package/_wasm/scichart3d.js +96 -96
- package/_wasm/scichart3d.wasm +0 -0
- package/constants/performanceWarnings.d.ts +5 -0
- package/constants/performanceWarnings.js +8 -0
- package/package.json +1 -1
- package/types/NumberArray.d.ts +1 -0
- package/types/NumberArray.js +5 -1
- package/types/SearchMode.d.ts +21 -0
- package/types/SearchMode.js +25 -0
- package/types/TSciChart.d.ts +143 -40
- package/types/TSciChart3D.d.ts +66 -28
- package/types/TStackedAxisLength.d.ts +4 -0
- package/types/TStackedAxisLength.js +4 -0
- package/utils/array.d.ts +7 -0
- package/utils/array.js +19 -1
- package/utils/calcAverage.d.ts +2 -2
- package/utils/ccall/appendDoubleVectorFromJsArray.d.ts +19 -0
- package/utils/ccall/appendDoubleVectorFromJsArray.js +91 -0
- package/utils/hash.d.ts +7 -0
- package/utils/hash.js +35 -0
- package/utils/ccall/fillDoubleVectorFromJsArray.d.ts +0 -3
- package/utils/ccall/fillDoubleVectorFromJsArray.js +0 -33
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { IIncludeSeries } from "../../Core/IIncludeSeries";
|
|
2
2
|
import { Point } from "../../Core/Point";
|
|
3
3
|
import { EChart2DModifierType } from "../../types/ChartModifierType";
|
|
4
|
+
import { EMousePosition } from "../../types/MousePosition";
|
|
4
5
|
import { SeriesInfo } from "../Model/ChartData/SeriesInfo";
|
|
5
6
|
import { IThemeProvider } from "../Themes/IThemeProvider";
|
|
6
7
|
import { CursorTooltipSvgAnnotation } from "../Visuals/Annotations/CursorTooltipSvgAnnotation";
|
|
@@ -176,6 +177,9 @@ export declare class CursorModifier extends ChartModifierBase2D implements IIncl
|
|
|
176
177
|
* @inheritDoc
|
|
177
178
|
*/
|
|
178
179
|
getIncludedRenderableSeries(): IRenderableSeries[];
|
|
180
|
+
/**
|
|
181
|
+
* Gets or sets the tooltipDataTemplate, which allows to customize content for the tooltip
|
|
182
|
+
*/
|
|
179
183
|
get tooltipDataTemplate(): TCursorTooltipDataTemplate;
|
|
180
184
|
set tooltipDataTemplate(value: TCursorTooltipDataTemplate);
|
|
181
185
|
/**
|
|
@@ -184,6 +188,11 @@ export declare class CursorModifier extends ChartModifierBase2D implements IIncl
|
|
|
184
188
|
* @param mousePoint
|
|
185
189
|
*/
|
|
186
190
|
hitTestRenderableSeries(rs: IRenderableSeries, mousePoint: Point): HitTestInfo;
|
|
191
|
+
/**
|
|
192
|
+
* Returns current mouse position
|
|
193
|
+
*/
|
|
194
|
+
getMousePosition(): EMousePosition;
|
|
195
|
+
/** @inheritDoc */
|
|
187
196
|
toJSON(): {
|
|
188
197
|
type: string;
|
|
189
198
|
options: Required<Omit<IChartModifierBaseOptions, never>>;
|
|
@@ -300,6 +300,9 @@ var CursorModifier = /** @class */ (function (_super) {
|
|
|
300
300
|
return allSeries;
|
|
301
301
|
};
|
|
302
302
|
Object.defineProperty(CursorModifier.prototype, "tooltipDataTemplate", {
|
|
303
|
+
/**
|
|
304
|
+
* Gets or sets the tooltipDataTemplate, which allows to customize content for the tooltip
|
|
305
|
+
*/
|
|
303
306
|
get: function () {
|
|
304
307
|
return this.tooltipDataTemplateProperty;
|
|
305
308
|
},
|
|
@@ -321,6 +324,13 @@ var CursorModifier = /** @class */ (function (_super) {
|
|
|
321
324
|
}
|
|
322
325
|
return rs.hitTestProvider.hitTestXSlice(mousePoint.x, mousePoint.y);
|
|
323
326
|
};
|
|
327
|
+
/**
|
|
328
|
+
* Returns current mouse position
|
|
329
|
+
*/
|
|
330
|
+
CursorModifier.prototype.getMousePosition = function () {
|
|
331
|
+
return this.mousePosition;
|
|
332
|
+
};
|
|
333
|
+
/** @inheritDoc */
|
|
324
334
|
CursorModifier.prototype.toJSON = function () {
|
|
325
335
|
var json = _super.prototype.toJSON.call(this);
|
|
326
336
|
var options = {
|
|
@@ -410,7 +410,6 @@ var DataPointSelectionModifier = /** @class */ (function (_super) {
|
|
|
410
410
|
topYData = yCalc.getDataValue(_this.startPoint.y);
|
|
411
411
|
}
|
|
412
412
|
if (rs.dataSeries.type === IDataSeries_1.EDataSeriesType.HeatmapUniform) {
|
|
413
|
-
var heatmapSeries = rs.dataSeries;
|
|
414
413
|
// TODO: Heatmap series
|
|
415
414
|
}
|
|
416
415
|
else {
|
|
@@ -51,6 +51,24 @@ export declare type TTooltipProps = {
|
|
|
51
51
|
height: number;
|
|
52
52
|
seriesInfo: SeriesInfo;
|
|
53
53
|
};
|
|
54
|
+
/**
|
|
55
|
+
* @ignore
|
|
56
|
+
* Defines the MousePosition enum constants, used by the {@link RolloverModifier}
|
|
57
|
+
*/
|
|
58
|
+
declare enum EMousePosition {
|
|
59
|
+
/**
|
|
60
|
+
* The mouse position is outside the main canvas
|
|
61
|
+
*/
|
|
62
|
+
OutOfCanvas = "OutOfCanvas",
|
|
63
|
+
/**
|
|
64
|
+
* The mouse position is in the Axis area
|
|
65
|
+
*/
|
|
66
|
+
AxisArea = "AxisArea",
|
|
67
|
+
/**
|
|
68
|
+
* The mouse position is in the Series area
|
|
69
|
+
*/
|
|
70
|
+
SeriesArea = "SeriesArea"
|
|
71
|
+
}
|
|
54
72
|
/**
|
|
55
73
|
* Optional parameters used to configure a {@link RolloverModifier} at construct time
|
|
56
74
|
*/
|
|
@@ -173,10 +191,16 @@ export declare class RolloverModifier extends ChartModifierBase2D implements IIn
|
|
|
173
191
|
* @param mousePoint
|
|
174
192
|
*/
|
|
175
193
|
hitTestRenderableSeries(rs: IRenderableSeries, mousePoint: Point): HitTestInfo;
|
|
194
|
+
/**
|
|
195
|
+
* Returns current mouse position
|
|
196
|
+
*/
|
|
197
|
+
getMousePosition(): EMousePosition;
|
|
198
|
+
/** @inheritDoc */
|
|
176
199
|
toJSON(): {
|
|
177
200
|
type: string;
|
|
178
201
|
options: Required<Omit<IChartModifierBaseOptions, never>>;
|
|
179
202
|
};
|
|
203
|
+
/** @inheritDoc */
|
|
180
204
|
protected notifyPropertyChanged(propertyName: string): void;
|
|
181
205
|
private isVerticalChart;
|
|
182
206
|
private removeSeriesAnnotationsFromParentSurface;
|
|
@@ -224,3 +248,4 @@ export declare const calcTooltipProps: (index: number, rs: IRenderableSeries, ro
|
|
|
224
248
|
* @param pixelRatio
|
|
225
249
|
*/
|
|
226
250
|
export declare const calcTooltipPositions: (tooltipArray: TTooltipProps[], allowTooltipOverlapping: boolean, tooltipPaddingTop: number, seriesViewRect: Rect, pixelRatio: number) => TTooltipProps[];
|
|
251
|
+
export {};
|
|
@@ -346,6 +346,13 @@ var RolloverModifier = /** @class */ (function (_super) {
|
|
|
346
346
|
}
|
|
347
347
|
return rs.hitTestProvider.hitTestXSlice(mousePoint.x, mousePoint.y);
|
|
348
348
|
};
|
|
349
|
+
/**
|
|
350
|
+
* Returns current mouse position
|
|
351
|
+
*/
|
|
352
|
+
RolloverModifier.prototype.getMousePosition = function () {
|
|
353
|
+
return this.mousePosition;
|
|
354
|
+
};
|
|
355
|
+
/** @inheritDoc */
|
|
349
356
|
RolloverModifier.prototype.toJSON = function () {
|
|
350
357
|
var json = _super.prototype.toJSON.call(this);
|
|
351
358
|
var options = {
|
|
@@ -361,6 +368,7 @@ var RolloverModifier = /** @class */ (function (_super) {
|
|
|
361
368
|
Object.assign(json.options, options);
|
|
362
369
|
return json;
|
|
363
370
|
};
|
|
371
|
+
/** @inheritDoc */
|
|
364
372
|
RolloverModifier.prototype.notifyPropertyChanged = function (propertyName) {
|
|
365
373
|
_super.prototype.notifyPropertyChanged.call(this, propertyName);
|
|
366
374
|
if (propertyName === constants_1.PROPERTY.X_AXIS_ID) {
|
|
@@ -10,14 +10,18 @@ export declare class BrushCache extends BaseCache<WebGlBrush> {
|
|
|
10
10
|
private opacity;
|
|
11
11
|
private fillLinearGradient;
|
|
12
12
|
private canvasTexture;
|
|
13
|
+
private textureHeightRatio;
|
|
14
|
+
private textureWidthRatio;
|
|
13
15
|
get value(): WebGlBrush;
|
|
14
16
|
/**
|
|
15
17
|
* Creates or fetches a new brush with the specified params
|
|
16
18
|
* @param fill
|
|
17
19
|
* @param opacity
|
|
20
|
+
* @param textureHeightRatio
|
|
21
|
+
* @param textureWidthRatio
|
|
18
22
|
* @param fillLinearGradient
|
|
19
23
|
*/
|
|
20
|
-
create(fill: string, opacity: number, fillLinearGradient?: GradientParams): WebGlBrush;
|
|
24
|
+
create(fill: string, opacity: number, textureHeightRatio?: number, textureWidthRatio?: number, fillLinearGradient?: GradientParams): WebGlBrush;
|
|
21
25
|
invalidateCache(): void;
|
|
22
26
|
reset(): void;
|
|
23
27
|
delete(): void;
|
|
@@ -43,7 +47,9 @@ export declare const getScrtBrushFromCache: (cache: BrushCache) => SCRTBrush;
|
|
|
43
47
|
* @param cache The object that will store a brush
|
|
44
48
|
* @param fill The HTML Color code
|
|
45
49
|
* @param opacity The opacity factor.
|
|
50
|
+
* @param textureHeightRatio The height ratio of the main canvas to the WebGl canvas.
|
|
51
|
+
* @param textureWidthRatio The width ratio of the main canvas to the WebGl canvas.
|
|
46
52
|
* @param fillGradientLinear The gradient params.
|
|
47
53
|
* @returns new or existing instance of {@link SCRTBrush}}
|
|
48
54
|
*/
|
|
49
|
-
export declare const createBrushInCache: (cache: BrushCache, fill: string, opacity: number, fillGradientLinear?: GradientParams) => SCRTBrush;
|
|
55
|
+
export declare const createBrushInCache: (cache: BrushCache, fill: string, opacity: number, textureHeightRatio?: number, textureWidthRatio?: number, fillGradientLinear?: GradientParams) => SCRTBrush;
|
|
@@ -35,7 +35,7 @@ var BrushCache = /** @class */ (function (_super) {
|
|
|
35
35
|
Object.defineProperty(BrushCache.prototype, "value", {
|
|
36
36
|
get: function () {
|
|
37
37
|
if (!this.cachedEntity && (this.fill || this.fillLinearGradient)) {
|
|
38
|
-
this.cachedEntity = this.create(this.fill, this.opacity, this.fillLinearGradient);
|
|
38
|
+
this.cachedEntity = this.create(this.fill, this.opacity, this.textureHeightRatio, this.textureWidthRatio, this.fillLinearGradient);
|
|
39
39
|
}
|
|
40
40
|
return this.cachedEntity;
|
|
41
41
|
},
|
|
@@ -46,18 +46,24 @@ var BrushCache = /** @class */ (function (_super) {
|
|
|
46
46
|
* Creates or fetches a new brush with the specified params
|
|
47
47
|
* @param fill
|
|
48
48
|
* @param opacity
|
|
49
|
+
* @param textureHeightRatio
|
|
50
|
+
* @param textureWidthRatio
|
|
49
51
|
* @param fillLinearGradient
|
|
50
52
|
*/
|
|
51
|
-
BrushCache.prototype.create = function (fill, opacity, fillLinearGradient) {
|
|
53
|
+
BrushCache.prototype.create = function (fill, opacity, textureHeightRatio, textureWidthRatio, fillLinearGradient) {
|
|
52
54
|
if (this.cachedEntity &&
|
|
53
55
|
fill === this.fill &&
|
|
54
56
|
opacity === this.opacity &&
|
|
57
|
+
textureHeightRatio === this.textureHeightRatio &&
|
|
58
|
+
textureWidthRatio === this.textureWidthRatio &&
|
|
55
59
|
fillLinearGradient === this.fillLinearGradient) {
|
|
56
60
|
return this.cachedEntity;
|
|
57
61
|
}
|
|
58
62
|
this.invalidateCache();
|
|
59
63
|
this.fill = fill;
|
|
60
64
|
this.opacity = opacity;
|
|
65
|
+
this.textureHeightRatio = textureHeightRatio;
|
|
66
|
+
this.textureWidthRatio = textureWidthRatio;
|
|
61
67
|
this.fillLinearGradient = fillLinearGradient;
|
|
62
68
|
var brush = fillLinearGradient ? this.createGradientBrush() : this.createSolidBrush(fill, opacity);
|
|
63
69
|
return (this.cachedEntity = new WebGlBrush_1.WebGlBrush(brush));
|
|
@@ -89,10 +95,10 @@ var BrushCache = /** @class */ (function (_super) {
|
|
|
89
95
|
this.canvasTexture.clear();
|
|
90
96
|
var ctx = this.canvasTexture.getContext();
|
|
91
97
|
// BEGIN: Drawing gradient rectangle on canvas2D
|
|
92
|
-
var x1 = convertRelativeToAbsolute(startPoint.x, TEXTURE_SIZE);
|
|
93
|
-
var y1 = convertRelativeToAbsolute(startPoint.y, TEXTURE_SIZE);
|
|
94
|
-
var x2 = convertRelativeToAbsolute(endPoint.x, TEXTURE_SIZE);
|
|
95
|
-
var y2 = convertRelativeToAbsolute(endPoint.y, TEXTURE_SIZE);
|
|
98
|
+
var x1 = convertRelativeToAbsolute(startPoint.x, TEXTURE_SIZE * this.textureWidthRatio);
|
|
99
|
+
var y1 = convertRelativeToAbsolute(startPoint.y, TEXTURE_SIZE * this.textureHeightRatio);
|
|
100
|
+
var x2 = convertRelativeToAbsolute(endPoint.x, TEXTURE_SIZE * this.textureWidthRatio);
|
|
101
|
+
var y2 = convertRelativeToAbsolute(endPoint.y, TEXTURE_SIZE * this.textureHeightRatio);
|
|
96
102
|
var gradient = ctx.createLinearGradient(x1, y1, x2, y2);
|
|
97
103
|
gradientStops.forEach(function (el) {
|
|
98
104
|
gradient.addColorStop(el.offset, el.color);
|
|
@@ -133,12 +139,14 @@ exports.getScrtBrushFromCache = getScrtBrushFromCache;
|
|
|
133
139
|
* @param cache The object that will store a brush
|
|
134
140
|
* @param fill The HTML Color code
|
|
135
141
|
* @param opacity The opacity factor.
|
|
142
|
+
* @param textureHeightRatio The height ratio of the main canvas to the WebGl canvas.
|
|
143
|
+
* @param textureWidthRatio The width ratio of the main canvas to the WebGl canvas.
|
|
136
144
|
* @param fillGradientLinear The gradient params.
|
|
137
145
|
* @returns new or existing instance of {@link SCRTBrush}}
|
|
138
146
|
*/
|
|
139
|
-
var createBrushInCache = function (cache, fill, opacity, fillGradientLinear) {
|
|
147
|
+
var createBrushInCache = function (cache, fill, opacity, textureHeightRatio, textureWidthRatio, fillGradientLinear) {
|
|
140
148
|
Guard_1.Guard.notNull(cache, "brushCache");
|
|
141
|
-
var brush = cache.create(fill, opacity, fillGradientLinear);
|
|
149
|
+
var brush = cache.create(fill, opacity, textureHeightRatio, textureWidthRatio, fillGradientLinear);
|
|
142
150
|
return brush.scrtBrush;
|
|
143
151
|
};
|
|
144
152
|
exports.createBrushInCache = createBrushInCache;
|
|
@@ -39,6 +39,7 @@ export declare class WebGlRenderContext2D implements IRenderContext2D {
|
|
|
39
39
|
private readonly layers;
|
|
40
40
|
private readonly webAssemblyContext;
|
|
41
41
|
private readonly effects;
|
|
42
|
+
private nativeContext;
|
|
42
43
|
/**
|
|
43
44
|
* Creates an instance of the WebGlRenderContext2D
|
|
44
45
|
* @param webAssemblyContext The {@link TSciChart | SciChart WebAssembly Context} containing native methods and access to our WebGL2 Engine
|
|
@@ -43,7 +43,10 @@ var WebGlRenderContext2D = /** @class */ (function () {
|
|
|
43
43
|
* Get the native {@link SCRTRenderContext} for direct access to SciChart's WebAssembly Visual Xccelerator engine
|
|
44
44
|
*/
|
|
45
45
|
WebGlRenderContext2D.prototype.getNativeContext = function () {
|
|
46
|
-
|
|
46
|
+
if (!this.nativeContext) {
|
|
47
|
+
this.nativeContext = this.webAssemblyContext.SCRTGetMainRenderContext2D();
|
|
48
|
+
}
|
|
49
|
+
return this.nativeContext;
|
|
47
50
|
};
|
|
48
51
|
/**
|
|
49
52
|
* Draw lines: grid lines, etc.
|
|
@@ -36,4 +36,6 @@ export declare abstract class BaseAxisLayoutStrategy {
|
|
|
36
36
|
protected layoutAxesFromTopToBottom(left: number, top: number, right: number, bottom: number, axes: AxisBase2D[]): void;
|
|
37
37
|
protected layoutAxesFromLeftToRight(left: number, top: number, right: number, bottom: number, axes: AxisBase2D[]): void;
|
|
38
38
|
protected layoutAxesFromRightToLeft(left: number, top: number, right: number, bottom: number, axes: AxisBase2D[]): void;
|
|
39
|
+
protected calculateTotalAxisHeight(axis: AxisBase2D, totalAxisAreaHeight: number): number;
|
|
40
|
+
protected calculateTotalAxisWidth(axis: AxisBase2D, totalAxisAreaHeight: number): number;
|
|
39
41
|
}
|
|
@@ -56,6 +56,39 @@ var BaseAxisLayoutStrategy = /** @class */ (function () {
|
|
|
56
56
|
(0, AxisLayoutHelpers_1.layoutAxisParts)(axis, _this.layoutAxisPartsStrategy);
|
|
57
57
|
});
|
|
58
58
|
};
|
|
59
|
+
BaseAxisLayoutStrategy.prototype.calculateTotalAxisHeight = function (axis, totalAxisAreaHeight) {
|
|
60
|
+
return (parseSize(axis.stackedAxisLength, totalAxisAreaHeight) +
|
|
61
|
+
axis.axisLayoutState.additionalBottomSize +
|
|
62
|
+
axis.axisLayoutState.additionalTopSize);
|
|
63
|
+
};
|
|
64
|
+
BaseAxisLayoutStrategy.prototype.calculateTotalAxisWidth = function (axis, totalAxisAreaHeight) {
|
|
65
|
+
return (parseSize(axis.stackedAxisLength, totalAxisAreaHeight) +
|
|
66
|
+
axis.axisLayoutState.additionalRightSize +
|
|
67
|
+
axis.axisLayoutState.additionalLeftSize);
|
|
68
|
+
};
|
|
59
69
|
return BaseAxisLayoutStrategy;
|
|
60
70
|
}());
|
|
61
71
|
exports.BaseAxisLayoutStrategy = BaseAxisLayoutStrategy;
|
|
72
|
+
var parseSize = function (value, containerSize) {
|
|
73
|
+
if (typeof value === "number") {
|
|
74
|
+
if (value < 0) {
|
|
75
|
+
throw new Error("stackedAxisLength must be a positive value!");
|
|
76
|
+
}
|
|
77
|
+
return value;
|
|
78
|
+
}
|
|
79
|
+
if (value.includes("%")) {
|
|
80
|
+
return parsePc(value, containerSize);
|
|
81
|
+
}
|
|
82
|
+
var parsedValue = parseFloat(value);
|
|
83
|
+
if (!isNaN(parsedValue)) {
|
|
84
|
+
return parsedValue;
|
|
85
|
+
}
|
|
86
|
+
throw new Error("stackedAxisLength must be a number or a percentage");
|
|
87
|
+
};
|
|
88
|
+
var parsePc = function (value, containerSize) {
|
|
89
|
+
var parsedPercentageValue = parseFloat(value);
|
|
90
|
+
if (parsedPercentageValue < 0 || parsedPercentageValue > 100) {
|
|
91
|
+
throw new Error("stackedAxisLength percentage must be from 0 to 100");
|
|
92
|
+
}
|
|
93
|
+
return Math.round((containerSize * parsedPercentageValue) / 10) / 10;
|
|
94
|
+
};
|
|
@@ -50,14 +50,30 @@ var BottomAlignedOuterHorizontallyStackedAxisLayoutStrategy = /** @class */ (fun
|
|
|
50
50
|
BottomAlignedOuterHorizontallyStackedAxisLayoutStrategy.prototype.layoutAxes = function (left, top, right, bottom, axes) {
|
|
51
51
|
var _this = this;
|
|
52
52
|
var totalAxisAreaWidth = right - left;
|
|
53
|
-
var singleAxisReservedWidth = totalAxisAreaWidth / axes.length;
|
|
54
53
|
var firstAxis = axes[0];
|
|
54
|
+
var lastAxis = axes[axes.length - 1];
|
|
55
|
+
var axesWithDefinedLength = axes.filter(function (axis) { return axis.stackedAxisLength; });
|
|
56
|
+
var spaceWithoutBorders = axes.reduce(function (acc, axis) { return acc - axis.axisLayoutState.additionalBottomSize - axis.axisLayoutState.additionalTopSize; }, totalAxisAreaWidth +
|
|
57
|
+
(firstAxis === null || firstAxis === void 0 ? void 0 : firstAxis.axisLayoutState.additionalLeftSize) +
|
|
58
|
+
(lastAxis === null || lastAxis === void 0 ? void 0 : lastAxis.axisLayoutState.additionalRightSize));
|
|
59
|
+
var totalDefinedAxesLength = axesWithDefinedLength.reduce(function (acc, axis) { return acc + _this.calculateTotalAxisWidth(axis, spaceWithoutBorders); }, 0);
|
|
60
|
+
var availableSpaceForAxes = totalAxisAreaWidth +
|
|
61
|
+
(firstAxis === null || firstAxis === void 0 ? void 0 : firstAxis.axisLayoutState.additionalLeftSize) +
|
|
62
|
+
(lastAxis === null || lastAxis === void 0 ? void 0 : lastAxis.axisLayoutState.additionalRightSize) -
|
|
63
|
+
totalDefinedAxesLength;
|
|
64
|
+
if (availableSpaceForAxes < 0) {
|
|
65
|
+
throw new Error("Bottom stacked axes with defined size total ".concat(totalDefinedAxesLength, " pixels which is ").concat(-availableSpaceForAxes, " more than the space available"));
|
|
66
|
+
}
|
|
67
|
+
var defaultAxisReservedHeight = availableSpaceForAxes / (axes.length - axesWithDefinedLength.length);
|
|
55
68
|
var leftOffset = left - (firstAxis === null || firstAxis === void 0 ? void 0 : firstAxis.axisLayoutState.additionalLeftSize);
|
|
56
69
|
axes.forEach(function (axis) {
|
|
57
70
|
var _a = axis.axisLayoutState, axisSize = _a.axisSize, additionalLeftSize = _a.additionalLeftSize, additionalRightSize = _a.additionalRightSize, additionalTopSize = _a.additionalTopSize;
|
|
58
71
|
var topOffset = top + additionalTopSize;
|
|
59
72
|
var bottomOffset = topOffset + axisSize;
|
|
60
|
-
var
|
|
73
|
+
var axisReservedHeight = axis.stackedAxisLength
|
|
74
|
+
? _this.calculateTotalAxisWidth(axis, spaceWithoutBorders)
|
|
75
|
+
: defaultAxisReservedHeight;
|
|
76
|
+
var rightOffset = leftOffset + axisReservedHeight - additionalRightSize;
|
|
61
77
|
leftOffset += additionalLeftSize;
|
|
62
78
|
axis.offset = leftOffset - left;
|
|
63
79
|
axis.axisLength = rightOffset - leftOffset;
|
|
@@ -49,15 +49,32 @@ var LeftAlignedOuterVerticallyStackedAxisLayoutStrategy = /** @class */ (functio
|
|
|
49
49
|
};
|
|
50
50
|
LeftAlignedOuterVerticallyStackedAxisLayoutStrategy.prototype.layoutAxes = function (left, top, right, bottom, axes) {
|
|
51
51
|
var _this = this;
|
|
52
|
+
// doesn't include top border of the first and bottom border of the last axis
|
|
52
53
|
var totalAxisAreaHeight = bottom - top;
|
|
53
|
-
var singleAxisReservedHeight = totalAxisAreaHeight / axes.length;
|
|
54
54
|
var firstAxis = axes[0];
|
|
55
|
+
var lastAxis = axes[axes.length - 1];
|
|
56
|
+
var axesWithDefinedLength = axes.filter(function (axis) { return axis.stackedAxisLength; });
|
|
57
|
+
var spaceWithoutBorders = axes.reduce(function (acc, axis) { return acc - axis.axisLayoutState.additionalBottomSize - axis.axisLayoutState.additionalTopSize; }, totalAxisAreaHeight +
|
|
58
|
+
(firstAxis === null || firstAxis === void 0 ? void 0 : firstAxis.axisLayoutState.additionalTopSize) +
|
|
59
|
+
(lastAxis === null || lastAxis === void 0 ? void 0 : lastAxis.axisLayoutState.additionalBottomSize));
|
|
60
|
+
var totalDefinedAxesLength = axesWithDefinedLength.reduce(function (acc, axis) { return acc + _this.calculateTotalAxisHeight(axis, spaceWithoutBorders); }, 0);
|
|
61
|
+
var availableSpaceForAxes = totalAxisAreaHeight +
|
|
62
|
+
(firstAxis === null || firstAxis === void 0 ? void 0 : firstAxis.axisLayoutState.additionalTopSize) +
|
|
63
|
+
(lastAxis === null || lastAxis === void 0 ? void 0 : lastAxis.axisLayoutState.additionalBottomSize) -
|
|
64
|
+
totalDefinedAxesLength;
|
|
65
|
+
if (availableSpaceForAxes < 0) {
|
|
66
|
+
throw new Error("Left stacked axes with defined size total ".concat(totalDefinedAxesLength, " pixels which is ").concat(-availableSpaceForAxes, " more than the space available"));
|
|
67
|
+
}
|
|
68
|
+
var defaultAxisReservedHeight = availableSpaceForAxes / (axes.length - axesWithDefinedLength.length);
|
|
55
69
|
var topOffset = top - (firstAxis === null || firstAxis === void 0 ? void 0 : firstAxis.axisLayoutState.additionalTopSize);
|
|
56
70
|
axes.forEach(function (axis) {
|
|
57
71
|
var _a = axis.axisLayoutState, axisSize = _a.axisSize, additionalRightSize = _a.additionalRightSize, additionalBottomSize = _a.additionalBottomSize, additionalTopSize = _a.additionalTopSize;
|
|
58
72
|
var rightOffset = right - additionalRightSize;
|
|
59
73
|
var leftOffset = rightOffset - axisSize;
|
|
60
|
-
var
|
|
74
|
+
var axisReservedHeight = axis.stackedAxisLength
|
|
75
|
+
? _this.calculateTotalAxisHeight(axis, spaceWithoutBorders)
|
|
76
|
+
: defaultAxisReservedHeight;
|
|
77
|
+
var bottomOffset = topOffset + axisReservedHeight - additionalBottomSize;
|
|
61
78
|
topOffset += additionalTopSize;
|
|
62
79
|
axis.offset = topOffset - top;
|
|
63
80
|
axis.axisLength = bottomOffset - topOffset;
|
|
@@ -50,14 +50,30 @@ var RightAlignedOuterVerticallyStackedAxisLayoutStrategy = /** @class */ (functi
|
|
|
50
50
|
RightAlignedOuterVerticallyStackedAxisLayoutStrategy.prototype.layoutAxes = function (left, top, right, bottom, axes) {
|
|
51
51
|
var _this = this;
|
|
52
52
|
var totalAxisAreaHeight = bottom - top;
|
|
53
|
-
var singleAxisReservedHeight = totalAxisAreaHeight / axes.length;
|
|
54
53
|
var firstAxis = axes[0];
|
|
54
|
+
var lastAxis = axes[axes.length - 1];
|
|
55
|
+
var axesWithDefinedLength = axes.filter(function (axis) { return axis.stackedAxisLength; });
|
|
56
|
+
var spaceWithoutBorders = axes.reduce(function (acc, axis) { return acc - axis.axisLayoutState.additionalBottomSize - axis.axisLayoutState.additionalTopSize; }, totalAxisAreaHeight +
|
|
57
|
+
(firstAxis === null || firstAxis === void 0 ? void 0 : firstAxis.axisLayoutState.additionalTopSize) +
|
|
58
|
+
(lastAxis === null || lastAxis === void 0 ? void 0 : lastAxis.axisLayoutState.additionalBottomSize));
|
|
59
|
+
var totalDefinedAxesLength = axesWithDefinedLength.reduce(function (acc, axis) { return acc + _this.calculateTotalAxisHeight(axis, spaceWithoutBorders); }, 0);
|
|
60
|
+
var availableSpaceForAxes = totalAxisAreaHeight +
|
|
61
|
+
(firstAxis === null || firstAxis === void 0 ? void 0 : firstAxis.axisLayoutState.additionalTopSize) +
|
|
62
|
+
(lastAxis === null || lastAxis === void 0 ? void 0 : lastAxis.axisLayoutState.additionalBottomSize) -
|
|
63
|
+
totalDefinedAxesLength;
|
|
64
|
+
if (availableSpaceForAxes < 0) {
|
|
65
|
+
throw new Error("Right stacked axes with defined size total ".concat(totalDefinedAxesLength, " pixels which is ").concat(-availableSpaceForAxes, " more than the space available"));
|
|
66
|
+
}
|
|
67
|
+
var defaultAxisReservedHeight = availableSpaceForAxes / (axes.length - axesWithDefinedLength.length);
|
|
55
68
|
var topOffset = top - (firstAxis === null || firstAxis === void 0 ? void 0 : firstAxis.axisLayoutState.additionalTopSize);
|
|
56
69
|
axes.forEach(function (axis) {
|
|
57
70
|
var _a = axis.axisLayoutState, axisSize = _a.axisSize, additionalLeftSize = _a.additionalLeftSize, additionalBottomSize = _a.additionalBottomSize, additionalTopSize = _a.additionalTopSize;
|
|
58
71
|
var leftOffset = left + additionalLeftSize;
|
|
59
72
|
var rightOffset = leftOffset + axisSize;
|
|
60
|
-
var
|
|
73
|
+
var axisReservedHeight = axis.stackedAxisLength
|
|
74
|
+
? _this.calculateTotalAxisHeight(axis, spaceWithoutBorders)
|
|
75
|
+
: defaultAxisReservedHeight;
|
|
76
|
+
var bottomOffset = topOffset + axisReservedHeight - additionalBottomSize;
|
|
61
77
|
topOffset += additionalTopSize;
|
|
62
78
|
axis.offset = topOffset - top;
|
|
63
79
|
axis.axisLength = bottomOffset - topOffset;
|
|
@@ -50,14 +50,30 @@ var TopAlignedOuterHorizontallyStackedAxisLayoutStrategy = /** @class */ (functi
|
|
|
50
50
|
TopAlignedOuterHorizontallyStackedAxisLayoutStrategy.prototype.layoutAxes = function (left, top, right, bottom, axes) {
|
|
51
51
|
var _this = this;
|
|
52
52
|
var totalAxisAreaWidth = right - left;
|
|
53
|
-
var singleAxisReservedWidth = totalAxisAreaWidth / axes.length;
|
|
54
53
|
var firstAxis = axes[0];
|
|
54
|
+
var lastAxis = axes[axes.length - 1];
|
|
55
|
+
var axesWithDefinedLength = axes.filter(function (axis) { return axis.stackedAxisLength; });
|
|
56
|
+
var spaceWithoutBorders = axes.reduce(function (acc, axis) { return acc - axis.axisLayoutState.additionalBottomSize - axis.axisLayoutState.additionalTopSize; }, totalAxisAreaWidth +
|
|
57
|
+
(firstAxis === null || firstAxis === void 0 ? void 0 : firstAxis.axisLayoutState.additionalLeftSize) +
|
|
58
|
+
(lastAxis === null || lastAxis === void 0 ? void 0 : lastAxis.axisLayoutState.additionalRightSize));
|
|
59
|
+
var totalDefinedAxesLength = axesWithDefinedLength.reduce(function (acc, axis) { return acc + _this.calculateTotalAxisWidth(axis, spaceWithoutBorders); }, 0);
|
|
60
|
+
var availableSpaceForAxes = totalAxisAreaWidth +
|
|
61
|
+
(firstAxis === null || firstAxis === void 0 ? void 0 : firstAxis.axisLayoutState.additionalLeftSize) +
|
|
62
|
+
(lastAxis === null || lastAxis === void 0 ? void 0 : lastAxis.axisLayoutState.additionalRightSize) -
|
|
63
|
+
totalDefinedAxesLength;
|
|
64
|
+
if (availableSpaceForAxes < 0) {
|
|
65
|
+
throw new Error("Top stacked axes with defined size total ".concat(totalDefinedAxesLength, " pixels which is ").concat(-availableSpaceForAxes, " more than the space available"));
|
|
66
|
+
}
|
|
67
|
+
var defaultAxisReservedHeight = availableSpaceForAxes / (axes.length - axesWithDefinedLength.length);
|
|
55
68
|
var leftOffset = left - (firstAxis === null || firstAxis === void 0 ? void 0 : firstAxis.axisLayoutState.additionalLeftSize);
|
|
56
69
|
axes.forEach(function (axis) {
|
|
57
70
|
var _a = axis.axisLayoutState, axisSize = _a.axisSize, additionalLeftSize = _a.additionalLeftSize, additionalRightSize = _a.additionalRightSize, additionalBottomSize = _a.additionalBottomSize;
|
|
58
71
|
var bottomOffset = bottom - additionalBottomSize;
|
|
59
72
|
var topOffset = bottomOffset - axisSize;
|
|
60
|
-
var
|
|
73
|
+
var axisReservedHeight = axis.stackedAxisLength
|
|
74
|
+
? _this.calculateTotalAxisWidth(axis, spaceWithoutBorders)
|
|
75
|
+
: defaultAxisReservedHeight;
|
|
76
|
+
var rightOffset = leftOffset + axisReservedHeight - additionalRightSize;
|
|
61
77
|
leftOffset += additionalLeftSize;
|
|
62
78
|
axis.offset = leftOffset - left;
|
|
63
79
|
axis.axisLength = rightOffset - leftOffset;
|
|
@@ -1,13 +1,19 @@
|
|
|
1
1
|
import { EventHandler } from "../../Core/EventHandler";
|
|
2
2
|
import { NumberRange } from "../../Core/NumberRange";
|
|
3
|
-
import {
|
|
3
|
+
import { ESearchMode } from "../../types/SearchMode";
|
|
4
|
+
import { SCRTDoubleVector, TSciChart } from "../../types/TSciChart";
|
|
4
5
|
import { SeriesAnimation } from "../Visuals/RenderableSeries/Animations/SeriesAnimation";
|
|
6
|
+
import { IDataDistributionCalculator } from "./DataDistributionCalculator/IDataDistributionCalculator";
|
|
5
7
|
import { EDataChangeType, EDataSeriesType, EDataSeriesValueType, IDataChangeArgs, IDataSeries } from "./IDataSeries";
|
|
6
8
|
import { IMetadataGenerator, IPointMetadata } from "./IPointMetadata";
|
|
7
9
|
/**
|
|
8
10
|
* Options to pass to the {@link BaseDataSeries} constructor
|
|
9
11
|
*/
|
|
10
12
|
export interface IBaseDataSeriesOptions {
|
|
13
|
+
/**
|
|
14
|
+
* A unique Id for the {@link IDataSeries}
|
|
15
|
+
*/
|
|
16
|
+
id?: string;
|
|
11
17
|
/**
|
|
12
18
|
* The DataSeries name, used in legends, tooltips to identify the chart series
|
|
13
19
|
*/
|
|
@@ -19,6 +25,14 @@ export interface IBaseDataSeriesOptions {
|
|
|
19
25
|
* algorithms for zooming, panning and ranging and ensure best performance.
|
|
20
26
|
*/
|
|
21
27
|
dataIsSortedInX?: boolean;
|
|
28
|
+
/**
|
|
29
|
+
* When true, the Data is evenly spaced in X.
|
|
30
|
+
* @remarks
|
|
31
|
+
* The user must specify this flag (defaults to true) in order to choose the correct, and
|
|
32
|
+
* fastest algorithms for drawing, indexing and ranging. If you experience glitches or
|
|
33
|
+
* strange drawing, it may be because you have set data with uneven spacing in X but not set this flag.
|
|
34
|
+
*/
|
|
35
|
+
dataEvenlySpacedInX?: boolean;
|
|
22
36
|
/**
|
|
23
37
|
* Gets or sets whether the Y data contains NaN values.
|
|
24
38
|
*/
|
|
@@ -49,6 +63,10 @@ export declare abstract class BaseDataSeries implements IDataSeries {
|
|
|
49
63
|
abstract readonly type: EDataSeriesType;
|
|
50
64
|
/** @inheritDoc */
|
|
51
65
|
readonly dataChanged: EventHandler<IDataChangeArgs>;
|
|
66
|
+
/** @inheritDoc */
|
|
67
|
+
readonly id: string;
|
|
68
|
+
/** @inheritDoc */
|
|
69
|
+
readonly dataDistributionCalculator: IDataDistributionCalculator;
|
|
52
70
|
minXSpacing: number;
|
|
53
71
|
/**
|
|
54
72
|
* If set, these will be included in the serialised definition, so that it can be used with sharedData
|
|
@@ -61,28 +79,30 @@ export declare abstract class BaseDataSeries implements IDataSeries {
|
|
|
61
79
|
/**
|
|
62
80
|
* X vector with initial animation values
|
|
63
81
|
*/
|
|
64
|
-
xInitialAnimationValues:
|
|
82
|
+
xInitialAnimationValues: SCRTDoubleVector;
|
|
65
83
|
/**
|
|
66
84
|
* Y vector with initial animation values
|
|
67
85
|
*/
|
|
68
|
-
yInitialAnimationValues:
|
|
86
|
+
yInitialAnimationValues: SCRTDoubleVector;
|
|
69
87
|
/**
|
|
70
88
|
* X vector with final animation values
|
|
71
89
|
*/
|
|
72
|
-
xFinalAnimationValues:
|
|
90
|
+
xFinalAnimationValues: SCRTDoubleVector;
|
|
73
91
|
/**
|
|
74
92
|
* Y vector with final animation values
|
|
75
93
|
*/
|
|
76
|
-
yFinalAnimationValues:
|
|
77
|
-
protected xValues:
|
|
78
|
-
protected yValues:
|
|
79
|
-
protected indexes:
|
|
94
|
+
yFinalAnimationValues: SCRTDoubleVector;
|
|
95
|
+
protected xValues: SCRTDoubleVector;
|
|
96
|
+
protected yValues: SCRTDoubleVector;
|
|
97
|
+
protected indexes: SCRTDoubleVector;
|
|
80
98
|
protected isDeleted: boolean;
|
|
81
99
|
private dataSeriesNameProperty;
|
|
82
100
|
private isSortedProperty;
|
|
83
101
|
private containsNaNProperty;
|
|
102
|
+
private isEvenlySpacedProperty;
|
|
84
103
|
private metadataProperty;
|
|
85
104
|
private metadataGeneratorProperty;
|
|
105
|
+
private changeCountProperty;
|
|
86
106
|
/**
|
|
87
107
|
* Creates an instance of {@link BaseDataSeries}
|
|
88
108
|
* @param webAssemblyContext the {@link TSciChart | SciChart WebAssembly Context} containing native methods
|
|
@@ -91,7 +111,7 @@ export declare abstract class BaseDataSeries implements IDataSeries {
|
|
|
91
111
|
*/
|
|
92
112
|
protected constructor(webAssemblyContext: TSciChart, options?: IBaseDataSeriesOptions);
|
|
93
113
|
/** @inheritDoc */
|
|
94
|
-
|
|
114
|
+
clear(): void;
|
|
95
115
|
/** @inheritDoc */
|
|
96
116
|
get containsNaN(): boolean;
|
|
97
117
|
/** @inheritDoc */
|
|
@@ -101,6 +121,10 @@ export declare abstract class BaseDataSeries implements IDataSeries {
|
|
|
101
121
|
/** @inheritDoc */
|
|
102
122
|
set isSorted(isSorted: boolean);
|
|
103
123
|
/** @inheritDoc */
|
|
124
|
+
get isEvenlySpaced(): boolean;
|
|
125
|
+
/** @inheritDoc */
|
|
126
|
+
set isEvenlySpaced(isSorted: boolean);
|
|
127
|
+
/** @inheritDoc */
|
|
104
128
|
get dataSeriesName(): string;
|
|
105
129
|
/** @inheritDoc */
|
|
106
130
|
set dataSeriesName(dataSeriesName: string);
|
|
@@ -109,11 +133,11 @@ export declare abstract class BaseDataSeries implements IDataSeries {
|
|
|
109
133
|
/** @inheritDoc */
|
|
110
134
|
getIsDeleted(): boolean;
|
|
111
135
|
/** @inheritDoc */
|
|
112
|
-
getNativeIndexes():
|
|
136
|
+
getNativeIndexes(): SCRTDoubleVector;
|
|
113
137
|
/** @inheritDoc */
|
|
114
|
-
getNativeXValues():
|
|
138
|
+
getNativeXValues(): SCRTDoubleVector;
|
|
115
139
|
/** @inheritDoc */
|
|
116
|
-
getNativeYValues():
|
|
140
|
+
getNativeYValues(): SCRTDoubleVector;
|
|
117
141
|
/** @inheritDoc */
|
|
118
142
|
delete(): void;
|
|
119
143
|
/**
|
|
@@ -126,7 +150,8 @@ export declare abstract class BaseDataSeries implements IDataSeries {
|
|
|
126
150
|
getXRange(dataSeriesValueType?: EDataSeriesValueType): NumberRange;
|
|
127
151
|
/** @inheritDoc */
|
|
128
152
|
getWindowedYRange(xRange: NumberRange, getPositiveRange: boolean, isXCategoryAxis?: boolean, dataSeriesValueType?: EDataSeriesValueType): NumberRange;
|
|
129
|
-
|
|
153
|
+
/** @inheritDoc */
|
|
154
|
+
getIndicesRange(xRange: NumberRange, isCategoryData?: boolean, downSearchMode?: ESearchMode, upSearchMode?: ESearchMode): NumberRange;
|
|
130
155
|
/** @inheritDoc */
|
|
131
156
|
get hasValues(): boolean;
|
|
132
157
|
/**
|
|
@@ -169,6 +194,8 @@ export declare abstract class BaseDataSeries implements IDataSeries {
|
|
|
169
194
|
updateAnimationProperties(progress: number, animation: SeriesAnimation): void;
|
|
170
195
|
/** @inheritDoc */
|
|
171
196
|
toJSON(excludeData?: boolean): any;
|
|
197
|
+
/** @inheritDoc */
|
|
198
|
+
get changeCount(): number;
|
|
172
199
|
protected validateIndex(index: number, message?: string): void;
|
|
173
200
|
protected setMetadataAt(index: number, metadata: IPointMetadata): void;
|
|
174
201
|
protected appendMetadata(metadata: IPointMetadata): void;
|
|
@@ -178,8 +205,8 @@ export declare abstract class BaseDataSeries implements IDataSeries {
|
|
|
178
205
|
protected removeMetadataAt(index: number): void;
|
|
179
206
|
protected removeMetadataRange(startIndex: number, count: number): void;
|
|
180
207
|
protected setMetadata(value: IPointMetadata[]): void;
|
|
181
|
-
protected getXValues(dataSeriesValueType: EDataSeriesValueType):
|
|
208
|
+
protected getXValues(dataSeriesValueType: EDataSeriesValueType): SCRTDoubleVector;
|
|
182
209
|
private fillMetadataIfUndefined;
|
|
183
210
|
private getYValues;
|
|
184
211
|
}
|
|
185
|
-
export declare const getWindowedYRange: (webAssemblyContext: TSciChart, xValues:
|
|
212
|
+
export declare const getWindowedYRange: (webAssemblyContext: TSciChart, xValues: SCRTDoubleVector, yValues: SCRTDoubleVector, xRange: NumberRange, getPositiveRange: boolean, isXCategoryAxis: boolean, isSorted: boolean) => NumberRange;
|