@wcardinal/wcardinal-ui 0.296.0 → 0.297.0
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/dist/types/wcardinal/ui/d-chart-axis-base-tick-container.d.ts +5 -3
- package/dist/types/wcardinal/ui/d-chart-coordinate-base.d.ts +1 -1
- package/dist/types/wcardinal/ui/d-chart-coordinate-linear-tick.d.ts +1 -1
- package/dist/types/wcardinal/ui/d-chart-coordinate-log-tick.d.ts +1 -1
- package/dist/types/wcardinal/ui/d-chart-coordinate-tick.d.ts +1 -1
- package/dist/types/wcardinal/ui/d-chart-coordinate.d.ts +5 -3
- package/dist/wcardinal/ui/d-chart-axis-base-tick-container.js +41 -14
- package/dist/wcardinal/ui/d-chart-axis-base-tick-container.js.map +1 -1
- package/dist/wcardinal/ui/d-chart-coordinate-base.js +2 -2
- package/dist/wcardinal/ui/d-chart-coordinate-base.js.map +1 -1
- package/dist/wcardinal/ui/d-chart-coordinate-linear-tick.js +47 -49
- package/dist/wcardinal/ui/d-chart-coordinate-linear-tick.js.map +1 -1
- package/dist/wcardinal/ui/d-chart-coordinate-log-tick.js +48 -49
- package/dist/wcardinal/ui/d-chart-coordinate-log-tick.js.map +1 -1
- package/dist/wcardinal/ui/d-chart-coordinate-tick.js.map +1 -1
- package/dist/wcardinal/ui/d-chart-coordinate.js.map +1 -1
- package/dist/wcardinal-ui-theme-dark.js +1 -1
- package/dist/wcardinal-ui-theme-dark.min.js +1 -1
- package/dist/wcardinal-ui-theme-white.js +1 -1
- package/dist/wcardinal-ui-theme-white.min.js +1 -1
- package/dist/wcardinal-ui.cjs.js +141 -117
- package/dist/wcardinal-ui.js +141 -117
- package/dist/wcardinal-ui.min.js +2 -2
- package/dist/wcardinal-ui.min.js.map +1 -1
- package/package.json +1 -1
|
@@ -31,15 +31,17 @@ export declare class DChartAxisBaseTickContainer<CHART extends DBase = DBase, OP
|
|
|
31
31
|
unbind(): void;
|
|
32
32
|
update(): boolean;
|
|
33
33
|
protected getDomain(plotArea: DChartPlotArea<CHART>, coordinate: DChartCoordinate<CHART>, result: DChartRegion): DChartRegion;
|
|
34
|
+
protected getDomainVisible(plotArea: DChartPlotArea<CHART>, coordinate: DChartCoordinate<CHART>, result: DChartRegion): DChartRegion;
|
|
34
35
|
protected getRange(plotArea: DChartPlotArea<CHART>, coordinate: DChartCoordinate<CHART>, result: DChartRegion): DChartRegion;
|
|
35
|
-
protected
|
|
36
|
-
protected
|
|
36
|
+
protected getRangeVisible(plotArea: DChartPlotArea<CHART>, coordinate: DChartCoordinate<CHART>, result: DChartRegion): DChartRegion;
|
|
37
|
+
protected updateX(domainFrom: number, domainTo: number, domainVisibleFrom: number, domainVisibleTo: number, coordinate: DChartCoordinate<CHART>, majorShapes: EShape[], minorShapes: EShape[], gridlineShapes: EShape[], shapePositionY: number, transform: Matrix, plotAreaHeight: number): boolean;
|
|
38
|
+
protected updateY(rangeFrom: number, rangeTo: number, rangeVisibleFrom: number, rangeVisibleTo: number, coordinate: DChartCoordinate<CHART>, majorShapes: EShape[], minorShapes: EShape[], gridlineShapes: EShape[], shapePositionX: number, transform: Matrix, plotAreaWidth: number): boolean;
|
|
37
39
|
protected showMajor(shape: EShape, x: number, y: number, text?: string): void;
|
|
38
40
|
protected showMajorGridline(shape: EShape, value: number, x: number, y: number, sx: number, sy: number): void;
|
|
39
41
|
protected hideMajor(shape: EShape): void;
|
|
40
42
|
protected hideMajorGridline(shape: EShape): void;
|
|
41
43
|
protected showMinor(shape: EShape, x: number, y: number, text?: string): void;
|
|
42
44
|
protected hideMinor(shape: EShape): void;
|
|
43
|
-
protected newTicks(coordinate: DChartCoordinate<CHART>,
|
|
45
|
+
protected newTicks(coordinate: DChartCoordinate<CHART>, domainFrom: number, domainTo: number, domainVisibleFrom: number, domainVisibleTo: number, majorCount: number, majorCapacity: number, majorStep: number | DChartCoordinateTickMajorStepFunction | undefined, minorCountPerMajor: number, minorCount: number, minorStep: number | DChartCoordinateTickMinorStepFunction | undefined, majorResult: number[], minorResult: number[]): void;
|
|
44
46
|
destroy(): void;
|
|
45
47
|
}
|
|
@@ -47,7 +47,7 @@ export declare abstract class DChartCoordinateBase<CHART extends DBase = DBase>
|
|
|
47
47
|
mapAll(values: number[], ifrom: number, iend: number, stride: number, offset: number): void;
|
|
48
48
|
unmap(value: number): number;
|
|
49
49
|
unmapAll(values: number[], ifrom: number, iend: number, stride: number, offset: number): void;
|
|
50
|
-
ticks(domainFrom: number, domainTo: number, majorCount: number, majorCapacity: number, majorStep: number | DChartCoordinateTickMajorStepFunction | undefined, minorCountPerMajor: number, minorCount: number, minorStep: number | DChartCoordinateTickMinorStepFunction | undefined, majorResult: number[], minorResult: number[]): void;
|
|
50
|
+
ticks(domainFrom: number, domainTo: number, domainVisibleFrom: number, domainVisibleTo: number, majorCount: number, majorCapacity: number, majorStep: number | DChartCoordinateTickMajorStepFunction | undefined, minorCountPerMajor: number, minorCount: number, minorStep: number | DChartCoordinateTickMinorStepFunction | undefined, majorResult: number[], minorResult: number[]): void;
|
|
51
51
|
protected toTheme(options?: DChartCoordinateOptions): DThemeChartCoordinate;
|
|
52
52
|
protected getThemeDefault(): DThemeChartCoordinate;
|
|
53
53
|
protected getType(): string;
|
|
@@ -10,7 +10,7 @@ export declare class DChartCoordinateLinearTick<CHART extends DBase = DBase> imp
|
|
|
10
10
|
protected toMinorStep(majorStep: number, minorCount: number, minorStep?: number | DChartCoordinateTickMinorStepFunction): number;
|
|
11
11
|
protected calcStepMinor(majorStep: number, minorCount: number): number;
|
|
12
12
|
protected calcTickMinorPositions(step: number, count: number, majorPosition: number, rangeMin: number, rangeMax: number, iresult: number, result: Float64Array): void;
|
|
13
|
-
calculate(domainFrom: number, domainTo: number, majorCount: number, majorCapacity: number, majorStep: number | DChartCoordinateTickMajorStepFunction | undefined, minorCountPerMajor: number, minorCount: number, minorStep: number | DChartCoordinateTickMinorStepFunction | undefined, majorResult: number[], minorResult: number[], coordinate: DChartCoordinate<CHART>): void;
|
|
13
|
+
calculate(domainFrom: number, domainTo: number, domainVisibleFrom: number, domainVisibleTo: number, majorCount: number, majorCapacity: number, majorStep: number | DChartCoordinateTickMajorStepFunction | undefined, minorCountPerMajor: number, minorCount: number, minorStep: number | DChartCoordinateTickMinorStepFunction | undefined, majorResult: number[], minorResult: number[], coordinate: DChartCoordinate<CHART>): void;
|
|
14
14
|
protected toTheme(options?: DChartCoordinateTickOptions): DThemeChartCoordinateTick;
|
|
15
15
|
protected getThemeDefault(): DThemeChartCoordinateTick;
|
|
16
16
|
protected getType(): string;
|
|
@@ -12,7 +12,7 @@ export declare class DChartCoordinateLogTick<CHART extends DBase = DBase> implem
|
|
|
12
12
|
protected toMinorStep(majorStep: number, minorCount: number, minorStep?: number | DChartCoordinateTickMinorStepFunction): number;
|
|
13
13
|
protected calcStepMinor(majorStep: number, minorCount: number): number;
|
|
14
14
|
protected calcTickMinorPositions(step: number, count: number, majorPosition: number, rangeMin: number, rangeMax: number, iresult: number, result: Float64Array): void;
|
|
15
|
-
calculate(domainFrom: number, domainTo: number, majorCount: number, majorCapacity: number, majorStep: number | DChartCoordinateTickMajorStepFunction | undefined, minorCountPerMajor: number, minorCount: number, minorStep: number | DChartCoordinateTickMinorStepFunction | undefined, majorResult: number[], minorResult: number[], coordinate: DChartCoordinate<CHART>): void;
|
|
15
|
+
calculate(domainFrom: number, domainTo: number, domainVisibleFrom: number, domainVisibleTo: number, majorCount: number, majorCapacity: number, majorStep: number | DChartCoordinateTickMajorStepFunction | undefined, minorCountPerMajor: number, minorCount: number, minorStep: number | DChartCoordinateTickMinorStepFunction | undefined, majorResult: number[], minorResult: number[], coordinate: DChartCoordinate<CHART>): void;
|
|
16
16
|
protected toTheme(options?: DChartCoordinateTickOptions): DThemeChartCoordinateTick;
|
|
17
17
|
protected getThemeDefault(): DThemeChartCoordinateTick;
|
|
18
18
|
protected getType(): string;
|
|
@@ -9,5 +9,5 @@ export interface DChartCoordinateTickOptions {
|
|
|
9
9
|
theme?: DThemeChartCoordinateTick;
|
|
10
10
|
}
|
|
11
11
|
export interface DChartCoordinateTick<CHART extends DBase = DBase> {
|
|
12
|
-
calculate(domainFrom: number, domainTo: number, majorCount: number, majorCapacity: number, majorStep: number | DChartCoordinateTickMajorStepFunction | undefined, minorCountPerMajor: number, minorCount: number, minorStep: number | DChartCoordinateTickMinorStepFunction | undefined, majorResult: number[], minorResult: number[], coordinate: DChartCoordinate<CHART>): void;
|
|
12
|
+
calculate(domainFrom: number, domainTo: number, domainVisibleFrom: number, domainVisibleTo: number, majorCount: number, majorCapacity: number, majorStep: number | DChartCoordinateTickMajorStepFunction | undefined, minorCountPerMajor: number, minorCount: number, minorStep: number | DChartCoordinateTickMinorStepFunction | undefined, majorResult: number[], minorResult: number[], coordinate: DChartCoordinate<CHART>): void;
|
|
13
13
|
}
|
|
@@ -74,13 +74,15 @@ export interface DChartCoordinate<CHART extends DBase = DBase> {
|
|
|
74
74
|
/**
|
|
75
75
|
* Returns major / minor tick positions.
|
|
76
76
|
*
|
|
77
|
-
* @param domainMin
|
|
78
|
-
* @param domainMax
|
|
77
|
+
* @param domainMin domain lower bound
|
|
78
|
+
* @param domainMax domain upper bound
|
|
79
|
+
* @param domainVisibleMin visible domain lower bound
|
|
80
|
+
* @param domainVisibleMax visible domain upper bound
|
|
79
81
|
* @param majorCount Expected major tick count
|
|
80
82
|
* @param minorCountPerMajor Expected minor tick count per major ticks
|
|
81
83
|
* @param minorCount Expected total minor tick count
|
|
82
84
|
* @param majorResult `majorResult.length` must be larger than `majorCount * 3`.
|
|
83
85
|
* @param minorResult `minorResult.length` must be larger than `minorCount * 3`.
|
|
84
86
|
*/
|
|
85
|
-
ticks(domainMin: number, domainMax: number, majorCount: number, majorCapacity: number, majorStep: number | DChartCoordinateTickMajorStepFunction | undefined, minorCountPerMajor: number, minorCount: number, minorStep: number | DChartCoordinateTickMinorStepFunction | undefined, majorResult: number[], minorResult: number[]): void;
|
|
87
|
+
ticks(domainMin: number, domainMax: number, domainVisibleMin: number, domainVisibleMax: number, majorCount: number, majorCapacity: number, majorStep: number | DChartCoordinateTickMajorStepFunction | undefined, minorCountPerMajor: number, minorCount: number, minorStep: number | DChartCoordinateTickMinorStepFunction | undefined, majorResult: number[], minorResult: number[]): void;
|
|
86
88
|
}
|
|
@@ -54,38 +54,59 @@ var DChartAxisBaseTickContainer = /** @class */ (function () {
|
|
|
54
54
|
var gridlineShapes = this._major.gridline.shapes;
|
|
55
55
|
var parser = this._parser;
|
|
56
56
|
var offset = parser.padding * this._index;
|
|
57
|
+
var work = this._work;
|
|
57
58
|
var coordinate = void 0;
|
|
58
59
|
switch (parser.position) {
|
|
59
60
|
case DChartAxisPosition.TOP:
|
|
60
61
|
coordinate = plotArea.coordinate.x.get(parser.coordinate);
|
|
61
62
|
if (coordinate) {
|
|
62
|
-
var domain = this.getDomain(plotArea, coordinate,
|
|
63
|
+
var domain = this.getDomain(plotArea, coordinate, work);
|
|
64
|
+
var domainFrom = domain.from;
|
|
65
|
+
var domainTo = domain.to;
|
|
66
|
+
var domainVisible = this.getDomainVisible(plotArea, coordinate, work);
|
|
67
|
+
var domainVisibleFrom = domainVisible.from;
|
|
68
|
+
var domainVisibleTo = domainVisible.to;
|
|
63
69
|
var plotAreaHeight = plotArea.height;
|
|
64
|
-
return this.updateX(
|
|
70
|
+
return this.updateX(domainFrom, domainTo, domainVisibleFrom, domainVisibleTo, coordinate, majorShapes, minorShapes, gridlineShapes, 0 - offset, transform, plotAreaHeight);
|
|
65
71
|
}
|
|
66
72
|
break;
|
|
67
73
|
case DChartAxisPosition.BOTTOM:
|
|
68
74
|
coordinate = plotArea.coordinate.x.get(parser.coordinate);
|
|
69
75
|
if (coordinate) {
|
|
70
|
-
var domain = this.getDomain(plotArea, coordinate,
|
|
76
|
+
var domain = this.getDomain(plotArea, coordinate, work);
|
|
77
|
+
var domainFrom = domain.from;
|
|
78
|
+
var domainTo = domain.to;
|
|
79
|
+
var domainVisible = this.getDomainVisible(plotArea, coordinate, work);
|
|
80
|
+
var domainVisibleFrom = domainVisible.from;
|
|
81
|
+
var domainVisibleTo = domainVisible.to;
|
|
71
82
|
var plotAreaHeight = plotArea.height;
|
|
72
|
-
return this.updateX(
|
|
83
|
+
return this.updateX(domainFrom, domainTo, domainVisibleFrom, domainVisibleTo, coordinate, majorShapes, minorShapes, gridlineShapes, plotAreaHeight + offset, transform, plotAreaHeight);
|
|
73
84
|
}
|
|
74
85
|
break;
|
|
75
86
|
case DChartAxisPosition.LEFT:
|
|
76
87
|
coordinate = plotArea.coordinate.y.get(parser.coordinate);
|
|
77
88
|
if (coordinate) {
|
|
78
|
-
var range = this.getRange(plotArea, coordinate,
|
|
89
|
+
var range = this.getRange(plotArea, coordinate, work);
|
|
90
|
+
var rangeFrom = range.from;
|
|
91
|
+
var rangeTo = range.to;
|
|
92
|
+
var rangeVisible = this.getRangeVisible(plotArea, coordinate, work);
|
|
93
|
+
var rangeVisibleFrom = rangeVisible.from;
|
|
94
|
+
var rangeVisibleTo = rangeVisible.to;
|
|
79
95
|
var plotAreaWidth = plotArea.width;
|
|
80
|
-
return this.updateY(
|
|
96
|
+
return this.updateY(rangeFrom, rangeTo, rangeVisibleFrom, rangeVisibleTo, coordinate, majorShapes, minorShapes, gridlineShapes, 0 - offset, transform, plotAreaWidth);
|
|
81
97
|
}
|
|
82
98
|
break;
|
|
83
99
|
case DChartAxisPosition.RIGHT:
|
|
84
100
|
coordinate = plotArea.coordinate.y.get(parser.coordinate);
|
|
85
101
|
if (coordinate) {
|
|
86
|
-
var range = this.getRange(plotArea, coordinate,
|
|
102
|
+
var range = this.getRange(plotArea, coordinate, work);
|
|
103
|
+
var rangeFrom = range.from;
|
|
104
|
+
var rangeTo = range.to;
|
|
105
|
+
var rangeVisible = this.getRangeVisible(plotArea, coordinate, work);
|
|
106
|
+
var rangeVisibleFrom = rangeVisible.from;
|
|
107
|
+
var rangeVisibleTo = rangeVisible.to;
|
|
87
108
|
var plotAreaWidth = plotArea.width;
|
|
88
|
-
return this.updateY(
|
|
109
|
+
return this.updateY(rangeFrom, rangeTo, rangeVisibleFrom, rangeVisibleTo, coordinate, majorShapes, minorShapes, gridlineShapes, plotAreaWidth + offset, transform, plotAreaWidth);
|
|
89
110
|
}
|
|
90
111
|
break;
|
|
91
112
|
}
|
|
@@ -97,12 +118,18 @@ var DChartAxisBaseTickContainer = /** @class */ (function () {
|
|
|
97
118
|
var transform = coordinate.transform;
|
|
98
119
|
return result.set(coordinate.unmap(transform.unmap(bounds.x)), coordinate.unmap(transform.unmap(bounds.x + bounds.width)));
|
|
99
120
|
};
|
|
121
|
+
DChartAxisBaseTickContainer.prototype.getDomainVisible = function (plotArea, coordinate, result) {
|
|
122
|
+
return result;
|
|
123
|
+
};
|
|
100
124
|
DChartAxisBaseTickContainer.prototype.getRange = function (plotArea, coordinate, result) {
|
|
101
125
|
var bounds = plotArea.getBoundsInContainer();
|
|
102
126
|
var transform = coordinate.transform;
|
|
103
127
|
return result.set(coordinate.unmap(transform.unmap(bounds.y)), coordinate.unmap(transform.unmap(bounds.y + bounds.height)));
|
|
104
128
|
};
|
|
105
|
-
DChartAxisBaseTickContainer.prototype.
|
|
129
|
+
DChartAxisBaseTickContainer.prototype.getRangeVisible = function (plotArea, coordinate, result) {
|
|
130
|
+
return result;
|
|
131
|
+
};
|
|
132
|
+
DChartAxisBaseTickContainer.prototype.updateX = function (domainFrom, domainTo, domainVisibleFrom, domainVisibleTo, coordinate, majorShapes, minorShapes, gridlineShapes, shapePositionY, transform, plotAreaHeight) {
|
|
106
133
|
var tick = this._parser.tick;
|
|
107
134
|
var majorTick = tick.major;
|
|
108
135
|
var majorCount = majorTick.count;
|
|
@@ -116,7 +143,7 @@ var DChartAxisBaseTickContainer = /** @class */ (function () {
|
|
|
116
143
|
var minorFormatter = minorTick.formatter;
|
|
117
144
|
var majorTicks = this._majorTicks;
|
|
118
145
|
var minorTicks = this._minorTicks;
|
|
119
|
-
this.newTicks(coordinate,
|
|
146
|
+
this.newTicks(coordinate, domainFrom, domainTo, domainVisibleFrom, domainVisibleTo, majorCount, majorCapacity, majorStep, minorCountPerMajor, minorCount, minorStep, majorTicks, minorTicks);
|
|
120
147
|
var a = transform.a;
|
|
121
148
|
var tx = transform.tx;
|
|
122
149
|
for (var i = 0; i < majorCapacity; ++i) {
|
|
@@ -155,7 +182,7 @@ var DChartAxisBaseTickContainer = /** @class */ (function () {
|
|
|
155
182
|
}
|
|
156
183
|
return true;
|
|
157
184
|
};
|
|
158
|
-
DChartAxisBaseTickContainer.prototype.updateY = function (
|
|
185
|
+
DChartAxisBaseTickContainer.prototype.updateY = function (rangeFrom, rangeTo, rangeVisibleFrom, rangeVisibleTo, coordinate, majorShapes, minorShapes, gridlineShapes, shapePositionX, transform, plotAreaWidth) {
|
|
159
186
|
var tick = this._parser.tick;
|
|
160
187
|
var majorTick = tick.major;
|
|
161
188
|
var majorCount = majorTick.count;
|
|
@@ -169,7 +196,7 @@ var DChartAxisBaseTickContainer = /** @class */ (function () {
|
|
|
169
196
|
var minorFormatter = minorTick.formatter;
|
|
170
197
|
var majorTicks = this._majorTicks;
|
|
171
198
|
var minorTicks = this._minorTicks;
|
|
172
|
-
this.newTicks(coordinate,
|
|
199
|
+
this.newTicks(coordinate, rangeFrom, rangeTo, rangeVisibleFrom, rangeVisibleTo, majorCount, majorCapacity, majorStep, minorCountPerMajor, minorCount, minorStep, majorTicks, minorTicks);
|
|
173
200
|
var d = transform.d;
|
|
174
201
|
var ty = transform.ty;
|
|
175
202
|
for (var i = 0; i < majorCapacity; ++i) {
|
|
@@ -238,8 +265,8 @@ var DChartAxisBaseTickContainer = /** @class */ (function () {
|
|
|
238
265
|
DChartAxisBaseTickContainer.prototype.hideMinor = function (shape) {
|
|
239
266
|
shape.visible = false;
|
|
240
267
|
};
|
|
241
|
-
DChartAxisBaseTickContainer.prototype.newTicks = function (coordinate,
|
|
242
|
-
coordinate.ticks(
|
|
268
|
+
DChartAxisBaseTickContainer.prototype.newTicks = function (coordinate, domainFrom, domainTo, domainVisibleFrom, domainVisibleTo, majorCount, majorCapacity, majorStep, minorCountPerMajor, minorCount, minorStep, majorResult, minorResult) {
|
|
269
|
+
coordinate.ticks(domainFrom, domainTo, domainVisibleFrom, domainVisibleTo, majorCount, majorCapacity, majorStep, minorCountPerMajor, minorCount, minorStep, majorResult, minorResult);
|
|
243
270
|
};
|
|
244
271
|
DChartAxisBaseTickContainer.prototype.destroy = function () {
|
|
245
272
|
this._major.destroy();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"d-chart-axis-base-tick-container.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-chart-axis-base-tick-container.ts"],"names":[],"mappings":"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","sourcesContent":["import { Matrix } from \"pixi.js\";\nimport { DBase } from \"./d-base\";\nimport { DChartAxisBaseOptionParser } from \"./d-chart-axis-base-options-parser\";\nimport { DChartAxisBaseTickMajor } from \"./d-chart-axis-base-tick-major\";\nimport { DChartAxisBaseTickMinor } from \"./d-chart-axis-base-tick-minor\";\nimport { DChartAxisContainer } from \"./d-chart-axis-container\";\nimport { DChartAxisPosition } from \"./d-chart-axis-position\";\nimport { DChartAxisTickContainer } from \"./d-chart-axis-tick-container\";\nimport { DChartAxisTickMajor } from \"./d-chart-axis-tick-major\";\nimport { DChartAxisTickMinor } from \"./d-chart-axis-tick-minor\";\nimport { DChartCoordinate } from \"./d-chart-coordinate\";\nimport { DChartCoordinateTickMajorStepFunction } from \"./d-chart-coordinate-tick-major-step-function\";\nimport { DChartCoordinateTickMinorStepFunction } from \"./d-chart-coordinate-tick-minor-step-function\";\nimport { DChartPlotArea } from \"./d-chart-plot-area\";\nimport { DChartRegion } from \"./d-chart-region\";\nimport { DChartRegionImpl } from \"./d-chart-region-impl\";\nimport { EShape } from \"./shape/e-shape\";\n\nexport interface DChartAxisBaseTickContainerOptions {}\n\nexport class DChartAxisBaseTickContainer<\n\tCHART extends DBase = DBase,\n\tOPTIONS extends DChartAxisBaseTickContainerOptions = DChartAxisBaseTickContainerOptions\n> implements DChartAxisTickContainer<CHART>\n{\n\tprotected _parser: DChartAxisBaseOptionParser;\n\tprotected _container?: DChartAxisContainer<CHART>;\n\tprotected _index: number;\n\tprotected _major: DChartAxisTickMajor<CHART>;\n\tprotected _minor: DChartAxisTickMinor<CHART>;\n\tprotected _majorTicks: number[];\n\tprotected _minorTicks: number[];\n\tprotected _work: DChartRegion;\n\n\tconstructor(parser: DChartAxisBaseOptionParser, options?: OPTIONS) {\n\t\tthis._parser = parser;\n\t\tthis._index = 0;\n\t\tthis._major = this.newMajor(parser, options);\n\t\tthis._minor = this.newMinor(parser, options);\n\t\tthis._majorTicks = [];\n\t\tthis._minorTicks = [];\n\t\tthis._work = new DChartRegionImpl(0, 0);\n\t}\n\n\tget major(): DChartAxisTickMajor<CHART> {\n\t\treturn this._major;\n\t}\n\n\tprotected newMajor(\n\t\tparser: DChartAxisBaseOptionParser,\n\t\toptions?: OPTIONS\n\t): DChartAxisTickMajor<CHART> {\n\t\treturn new DChartAxisBaseTickMajor(parser);\n\t}\n\n\tget minor(): DChartAxisTickMinor<CHART> {\n\t\treturn this._minor;\n\t}\n\n\tprotected newMinor(\n\t\tparser: DChartAxisBaseOptionParser,\n\t\toptions?: OPTIONS\n\t): DChartAxisTickMinor<CHART> {\n\t\treturn new DChartAxisBaseTickMinor(parser);\n\t}\n\n\tbind(container: DChartAxisContainer<CHART>, index: number): void {\n\t\tthis._container = container;\n\t\tthis._index = index;\n\t\tthis._major.bind(container, index);\n\t\tthis._minor.bind(container, index);\n\t}\n\n\tunbind(): void {\n\t\tthis._minor.unbind();\n\t\tthis._major.unbind();\n\t\tthis._index = 0;\n\t\tthis._container = undefined;\n\t}\n\n\tupdate(): boolean {\n\t\tconst container = this._container;\n\t\tconst majorShapes = this._major.shapes;\n\t\tconst minorShapes = this._minor.shapes;\n\t\tif (container != null && majorShapes && minorShapes) {\n\t\t\tconst plotArea = container.plotArea;\n\t\t\tconst transform = plotArea.container.transform.localTransform;\n\t\t\tconst gridlineShapes = this._major.gridline.shapes;\n\n\t\t\tconst parser = this._parser;\n\t\t\tconst offset = parser.padding * this._index;\n\t\t\tlet coordinate: DChartCoordinate<CHART> | null;\n\t\t\tswitch (parser.position) {\n\t\t\t\tcase DChartAxisPosition.TOP:\n\t\t\t\t\tcoordinate = plotArea.coordinate.x.get(parser.coordinate);\n\t\t\t\t\tif (coordinate) {\n\t\t\t\t\t\tconst domain = this.getDomain(plotArea, coordinate, this._work);\n\t\t\t\t\t\tconst plotAreaHeight = plotArea.height;\n\t\t\t\t\t\treturn this.updateX(\n\t\t\t\t\t\t\tdomain.from,\n\t\t\t\t\t\t\tdomain.to,\n\t\t\t\t\t\t\tcoordinate,\n\t\t\t\t\t\t\tmajorShapes,\n\t\t\t\t\t\t\tminorShapes,\n\t\t\t\t\t\t\tgridlineShapes,\n\t\t\t\t\t\t\t0 - offset,\n\t\t\t\t\t\t\ttransform,\n\t\t\t\t\t\t\tplotAreaHeight\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase DChartAxisPosition.BOTTOM:\n\t\t\t\t\tcoordinate = plotArea.coordinate.x.get(parser.coordinate);\n\t\t\t\t\tif (coordinate) {\n\t\t\t\t\t\tconst domain = this.getDomain(plotArea, coordinate, this._work);\n\t\t\t\t\t\tconst plotAreaHeight = plotArea.height;\n\t\t\t\t\t\treturn this.updateX(\n\t\t\t\t\t\t\tdomain.from,\n\t\t\t\t\t\t\tdomain.to,\n\t\t\t\t\t\t\tcoordinate,\n\t\t\t\t\t\t\tmajorShapes,\n\t\t\t\t\t\t\tminorShapes,\n\t\t\t\t\t\t\tgridlineShapes,\n\t\t\t\t\t\t\tplotAreaHeight + offset,\n\t\t\t\t\t\t\ttransform,\n\t\t\t\t\t\t\tplotAreaHeight\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase DChartAxisPosition.LEFT:\n\t\t\t\t\tcoordinate = plotArea.coordinate.y.get(parser.coordinate);\n\t\t\t\t\tif (coordinate) {\n\t\t\t\t\t\tconst range = this.getRange(plotArea, coordinate, this._work);\n\t\t\t\t\t\tconst plotAreaWidth = plotArea.width;\n\t\t\t\t\t\treturn this.updateY(\n\t\t\t\t\t\t\trange.from,\n\t\t\t\t\t\t\trange.to,\n\t\t\t\t\t\t\tcoordinate,\n\t\t\t\t\t\t\tmajorShapes,\n\t\t\t\t\t\t\tminorShapes,\n\t\t\t\t\t\t\tgridlineShapes,\n\t\t\t\t\t\t\t0 - offset,\n\t\t\t\t\t\t\ttransform,\n\t\t\t\t\t\t\tplotAreaWidth\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase DChartAxisPosition.RIGHT:\n\t\t\t\t\tcoordinate = plotArea.coordinate.y.get(parser.coordinate);\n\t\t\t\t\tif (coordinate) {\n\t\t\t\t\t\tconst range = this.getRange(plotArea, coordinate, this._work);\n\t\t\t\t\t\tconst plotAreaWidth = plotArea.width;\n\t\t\t\t\t\treturn this.updateY(\n\t\t\t\t\t\t\trange.from,\n\t\t\t\t\t\t\trange.to,\n\t\t\t\t\t\t\tcoordinate,\n\t\t\t\t\t\t\tmajorShapes,\n\t\t\t\t\t\t\tminorShapes,\n\t\t\t\t\t\t\tgridlineShapes,\n\t\t\t\t\t\t\tplotAreaWidth + offset,\n\t\t\t\t\t\t\ttransform,\n\t\t\t\t\t\t\tplotAreaWidth\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\tprotected getDomain(\n\t\tplotArea: DChartPlotArea<CHART>,\n\t\tcoordinate: DChartCoordinate<CHART>,\n\t\tresult: DChartRegion\n\t): DChartRegion {\n\t\tconst bounds = plotArea.getBoundsInContainer();\n\t\tconst transform = coordinate.transform;\n\t\treturn result.set(\n\t\t\tcoordinate.unmap(transform.unmap(bounds.x)),\n\t\t\tcoordinate.unmap(transform.unmap(bounds.x + bounds.width))\n\t\t);\n\t}\n\n\tprotected getRange(\n\t\tplotArea: DChartPlotArea<CHART>,\n\t\tcoordinate: DChartCoordinate<CHART>,\n\t\tresult: DChartRegion\n\t): DChartRegion {\n\t\tconst bounds = plotArea.getBoundsInContainer();\n\t\tconst transform = coordinate.transform;\n\t\treturn result.set(\n\t\t\tcoordinate.unmap(transform.unmap(bounds.y)),\n\t\t\tcoordinate.unmap(transform.unmap(bounds.y + bounds.height))\n\t\t);\n\t}\n\n\tprotected updateX(\n\t\tdomainMin: number,\n\t\tdomainMax: number,\n\t\tcoordinate: DChartCoordinate<CHART>,\n\t\tmajorShapes: EShape[],\n\t\tminorShapes: EShape[],\n\t\tgridlineShapes: EShape[],\n\t\tshapePositionY: number,\n\t\ttransform: Matrix,\n\t\tplotAreaHeight: number\n\t): boolean {\n\t\tconst tick = this._parser.tick;\n\t\tconst majorTick = tick.major;\n\t\tconst majorCount = majorTick.count;\n\t\tconst majorCapacity = majorTick.capacity;\n\t\tconst majorStep = majorTick.step;\n\t\tconst majorFormatter = majorTick.formatter;\n\t\tconst minorTick = tick.minor;\n\t\tconst minorCountPerMajor = minorTick.count;\n\t\tconst minorCount = (majorCapacity + 1) * minorCountPerMajor;\n\t\tconst minorStep = minorTick.step;\n\t\tconst minorFormatter = minorTick.formatter;\n\t\tconst majorTicks = this._majorTicks;\n\t\tconst minorTicks = this._minorTicks;\n\t\tthis.newTicks(\n\t\t\tcoordinate,\n\t\t\tdomainMin,\n\t\t\tdomainMax,\n\t\t\tmajorCount,\n\t\t\tmajorCapacity,\n\t\t\tmajorStep,\n\t\t\tminorCountPerMajor,\n\t\t\tminorCount,\n\t\t\tminorStep,\n\t\t\tmajorTicks,\n\t\t\tminorTicks\n\t\t);\n\n\t\tconst a = transform.a;\n\t\tconst tx = transform.tx;\n\t\tfor (let i = 0; i < majorCapacity; ++i) {\n\t\t\tconst majorShape = majorShapes[i];\n\t\t\tconst imajorTick = i * 3;\n\t\t\tconst majorTickPosition = majorTicks[imajorTick + 0];\n\t\t\tif (!isNaN(majorTickPosition)) {\n\t\t\t\tconst majorTickProjectedPosition = majorTicks[imajorTick + 1];\n\t\t\t\tconst majotTickPositionX = a * majorTickProjectedPosition + tx;\n\t\t\t\tconst majorTickStep = majorTicks[imajorTick + 2];\n\t\t\t\tthis.showMajor(\n\t\t\t\t\tmajorShape,\n\t\t\t\t\tmajotTickPositionX,\n\t\t\t\t\tshapePositionY,\n\t\t\t\t\tmajorFormatter?.format(majorTickPosition, majorTickStep)\n\t\t\t\t);\n\t\t\t\tif (i < gridlineShapes.length) {\n\t\t\t\t\tthis.showMajorGridline(\n\t\t\t\t\t\tgridlineShapes[i],\n\t\t\t\t\t\tmajorTickPosition,\n\t\t\t\t\t\tmajotTickPositionX,\n\t\t\t\t\t\tplotAreaHeight * 0.5,\n\t\t\t\t\t\t0,\n\t\t\t\t\t\tplotAreaHeight\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthis.hideMajor(majorShape);\n\t\t\t\tif (i < gridlineShapes.length) {\n\t\t\t\t\tthis.hideMajorGridline(gridlineShapes[i]);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tfor (let i = 0; i < minorCount; ++i) {\n\t\t\tconst minorShape = minorShapes[i];\n\t\t\tconst iminorTick = i * 3;\n\t\t\tconst minorTickPosition = minorTicks[iminorTick + 0];\n\t\t\tif (!isNaN(minorTickPosition)) {\n\t\t\t\tconst minorTickProjectedPosition = minorTicks[iminorTick + 1];\n\t\t\t\tconst minorTickPositionX = a * minorTickProjectedPosition + tx;\n\t\t\t\tconst minorTickStep = minorTicks[iminorTick + 2];\n\t\t\t\tthis.showMinor(\n\t\t\t\t\tminorShape,\n\t\t\t\t\tminorTickPositionX,\n\t\t\t\t\tshapePositionY,\n\t\t\t\t\tminorFormatter?.format(minorTickPosition, minorTickStep)\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tthis.hideMinor(minorShape);\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\n\tprotected updateY(\n\t\trangeMin: number,\n\t\trangeMax: number,\n\t\tcoordinate: DChartCoordinate<CHART>,\n\t\tmajorShapes: EShape[],\n\t\tminorShapes: EShape[],\n\t\tgridlineShapes: EShape[],\n\t\tshapePositionX: number,\n\t\ttransform: Matrix,\n\t\tplotAreaWidth: number\n\t): boolean {\n\t\tconst tick = this._parser.tick;\n\t\tconst majorTick = tick.major;\n\t\tconst majorCount = majorTick.count;\n\t\tconst majorCapacity = majorTick.capacity;\n\t\tconst majorStep = majorTick.step;\n\t\tconst majorFormatter = majorTick.formatter;\n\t\tconst minorTick = tick.minor;\n\t\tconst minorCountPerMajor = minorTick.count;\n\t\tconst minorCount = (majorCapacity + 1) * minorCountPerMajor;\n\t\tconst minorStep = minorTick.step;\n\t\tconst minorFormatter = minorTick.formatter;\n\t\tconst majorTicks = this._majorTicks;\n\t\tconst minorTicks = this._minorTicks;\n\t\tthis.newTicks(\n\t\t\tcoordinate,\n\t\t\trangeMin,\n\t\t\trangeMax,\n\t\t\tmajorCount,\n\t\t\tmajorCapacity,\n\t\t\tmajorStep,\n\t\t\tminorCountPerMajor,\n\t\t\tminorCount,\n\t\t\tminorStep,\n\t\t\tmajorTicks,\n\t\t\tminorTicks\n\t\t);\n\n\t\tconst d = transform.d;\n\t\tconst ty = transform.ty;\n\t\tfor (let i = 0; i < majorCapacity; ++i) {\n\t\t\tconst majorShape = majorShapes[i];\n\t\t\tconst imajorTick = i * 3;\n\t\t\tconst majorTickPosition = majorTicks[imajorTick + 0];\n\t\t\tif (!isNaN(majorTickPosition)) {\n\t\t\t\tconst majorTickProjectedPosition = majorTicks[imajorTick + 1];\n\t\t\t\tconst majotTickPositionY = d * majorTickProjectedPosition + ty;\n\t\t\t\tconst majorTickStep = majorTicks[imajorTick + 2];\n\t\t\t\tthis.showMajor(\n\t\t\t\t\tmajorShape,\n\t\t\t\t\tshapePositionX,\n\t\t\t\t\tmajotTickPositionY,\n\t\t\t\t\tmajorFormatter?.format(majorTickPosition, majorTickStep)\n\t\t\t\t);\n\t\t\t\tif (i < gridlineShapes.length) {\n\t\t\t\t\tthis.showMajorGridline(\n\t\t\t\t\t\tgridlineShapes[i],\n\t\t\t\t\t\tmajorTickPosition,\n\t\t\t\t\t\tplotAreaWidth * 0.5,\n\t\t\t\t\t\tmajotTickPositionY,\n\t\t\t\t\t\tplotAreaWidth,\n\t\t\t\t\t\t0\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthis.hideMajor(majorShape);\n\t\t\t\tif (i < gridlineShapes.length) {\n\t\t\t\t\tthis.hideMajorGridline(gridlineShapes[i]);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tfor (let i = 0; i < minorCount; ++i) {\n\t\t\tconst minorShape = minorShapes[i];\n\t\t\tconst iminorTick = i * 3;\n\t\t\tconst minorTickPosition = minorTicks[iminorTick + 0];\n\t\t\tif (!isNaN(minorTickPosition)) {\n\t\t\t\tconst minorTickProjectedPosition = minorTicks[iminorTick + 1];\n\t\t\t\tconst minorTickPositionY = d * minorTickProjectedPosition + ty;\n\t\t\t\tconst minorTickStep = minorTicks[iminorTick + 2];\n\t\t\t\tthis.showMinor(\n\t\t\t\t\tminorShape,\n\t\t\t\t\tshapePositionX,\n\t\t\t\t\tminorTickPositionY,\n\t\t\t\t\tminorFormatter?.format(minorTickPosition, minorTickStep)\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tthis.hideMinor(minorShape);\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\n\tprotected showMajor(shape: EShape, x: number, y: number, text?: string): void {\n\t\tshape.disallowUploadedUpdate();\n\t\tshape.visible = true;\n\t\tshape.transform.position.set(x, y);\n\t\tshape.text.value = text != null ? text : \"\";\n\t\tshape.allowUploadedUpdate();\n\t}\n\n\tprotected showMajorGridline(\n\t\tshape: EShape,\n\t\tvalue: number,\n\t\tx: number,\n\t\ty: number,\n\t\tsx: number,\n\t\tsy: number\n\t): void {\n\t\tshape.disallowUploadedUpdate();\n\t\tshape.visible = true;\n\t\tshape.transform.position.set(x, y);\n\t\tshape.size.set(sx, sy);\n\t\tshape.allowUploadedUpdate();\n\t}\n\n\tprotected hideMajor(shape: EShape): void {\n\t\tshape.visible = false;\n\t}\n\n\tprotected hideMajorGridline(shape: EShape): void {\n\t\tshape.visible = false;\n\t}\n\n\tprotected showMinor(shape: EShape, x: number, y: number, text?: string): void {\n\t\tshape.disallowUploadedUpdate();\n\t\tshape.visible = true;\n\t\tshape.transform.position.set(x, y);\n\t\tshape.text.value = text != null ? text : \"\";\n\t\tshape.allowUploadedUpdate();\n\t}\n\n\tprotected hideMinor(shape: EShape): void {\n\t\tshape.visible = false;\n\t}\n\n\tprotected newTicks(\n\t\tcoordinate: DChartCoordinate<CHART>,\n\t\tdomainMin: number,\n\t\tdomainMax: number,\n\t\tmajorCount: number,\n\t\tmajorCapacity: number,\n\t\tmajorStep: number | DChartCoordinateTickMajorStepFunction | undefined,\n\t\tminorCountPerMajor: number,\n\t\tminorCount: number,\n\t\tminorStep: number | DChartCoordinateTickMinorStepFunction | undefined,\n\t\tmajorResult: number[],\n\t\tminorResult: number[]\n\t): void {\n\t\tcoordinate.ticks(\n\t\t\tdomainMin,\n\t\t\tdomainMax,\n\t\t\tmajorCount,\n\t\t\tmajorCapacity,\n\t\t\tmajorStep,\n\t\t\tminorCountPerMajor,\n\t\t\tminorCount,\n\t\t\tminorStep,\n\t\t\tmajorResult,\n\t\t\tminorResult\n\t\t);\n\t}\n\n\tdestroy(): void {\n\t\tthis._major.destroy();\n\t\tthis._minor.destroy();\n\t\tthis._index = 0;\n\t\tthis._container = undefined;\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"d-chart-axis-base-tick-container.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-chart-axis-base-tick-container.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAEzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAS7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAKzD;IAcC,qCAAY,MAAkC,EAAE,OAAiB;QAChE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAChB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC7C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC7C,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC,KAAK,GAAG,IAAI,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACzC,CAAC;IAED,sBAAI,8CAAK;aAAT;YACC,OAAO,IAAI,CAAC,MAAM,CAAC;QACpB,CAAC;;;OAAA;IAES,8CAAQ,GAAlB,UACC,MAAkC,EAClC,OAAiB;QAEjB,OAAO,IAAI,uBAAuB,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC;IAED,sBAAI,8CAAK;aAAT;YACC,OAAO,IAAI,CAAC,MAAM,CAAC;QACpB,CAAC;;;OAAA;IAES,8CAAQ,GAAlB,UACC,MAAkC,EAClC,OAAiB;QAEjB,OAAO,IAAI,uBAAuB,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC;IAED,0CAAI,GAAJ,UAAK,SAAqC,EAAE,KAAa;QACxD,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACnC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,4CAAM,GAAN;QACC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACrB,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAChB,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED,4CAAM,GAAN;QACC,IAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC;QAClC,IAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;QACvC,IAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;QACvC,IAAI,SAAS,IAAI,IAAI,IAAI,WAAW,IAAI,WAAW,EAAE;YACpD,IAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;YACpC,IAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC,cAAc,CAAC;YAC9D,IAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;YAEnD,IAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;YAC5B,IAAM,MAAM,GAAG,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;YAC5C,IAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;YACxB,IAAI,UAAU,SAAgC,CAAC;YAC/C,QAAQ,MAAM,CAAC,QAAQ,EAAE;gBACxB,KAAK,kBAAkB,CAAC,GAAG;oBAC1B,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;oBAC1D,IAAI,UAAU,EAAE;wBACf,IAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;wBAC1D,IAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC;wBAC/B,IAAM,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC;wBAC3B,IAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;wBACxE,IAAM,iBAAiB,GAAG,aAAa,CAAC,IAAI,CAAC;wBAC7C,IAAM,eAAe,GAAG,aAAa,CAAC,EAAE,CAAC;wBACzC,IAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC;wBACvC,OAAO,IAAI,CAAC,OAAO,CAClB,UAAU,EACV,QAAQ,EACR,iBAAiB,EACjB,eAAe,EACf,UAAU,EACV,WAAW,EACX,WAAW,EACX,cAAc,EACd,CAAC,GAAG,MAAM,EACV,SAAS,EACT,cAAc,CACd,CAAC;qBACF;oBACD,MAAM;gBACP,KAAK,kBAAkB,CAAC,MAAM;oBAC7B,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;oBAC1D,IAAI,UAAU,EAAE;wBACf,IAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;wBAC1D,IAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC;wBAC/B,IAAM,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC;wBAC3B,IAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;wBACxE,IAAM,iBAAiB,GAAG,aAAa,CAAC,IAAI,CAAC;wBAC7C,IAAM,eAAe,GAAG,aAAa,CAAC,EAAE,CAAC;wBACzC,IAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC;wBACvC,OAAO,IAAI,CAAC,OAAO,CAClB,UAAU,EACV,QAAQ,EACR,iBAAiB,EACjB,eAAe,EACf,UAAU,EACV,WAAW,EACX,WAAW,EACX,cAAc,EACd,cAAc,GAAG,MAAM,EACvB,SAAS,EACT,cAAc,CACd,CAAC;qBACF;oBACD,MAAM;gBACP,KAAK,kBAAkB,CAAC,IAAI;oBAC3B,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;oBAC1D,IAAI,UAAU,EAAE;wBACf,IAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;wBACxD,IAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC;wBAC7B,IAAM,OAAO,GAAG,KAAK,CAAC,EAAE,CAAC;wBACzB,IAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;wBACtE,IAAM,gBAAgB,GAAG,YAAY,CAAC,IAAI,CAAC;wBAC3C,IAAM,cAAc,GAAG,YAAY,CAAC,EAAE,CAAC;wBACvC,IAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC;wBACrC,OAAO,IAAI,CAAC,OAAO,CAClB,SAAS,EACT,OAAO,EACP,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,WAAW,EACX,WAAW,EACX,cAAc,EACd,CAAC,GAAG,MAAM,EACV,SAAS,EACT,aAAa,CACb,CAAC;qBACF;oBACD,MAAM;gBACP,KAAK,kBAAkB,CAAC,KAAK;oBAC5B,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;oBAC1D,IAAI,UAAU,EAAE;wBACf,IAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;wBACxD,IAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC;wBAC7B,IAAM,OAAO,GAAG,KAAK,CAAC,EAAE,CAAC;wBACzB,IAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;wBACtE,IAAM,gBAAgB,GAAG,YAAY,CAAC,IAAI,CAAC;wBAC3C,IAAM,cAAc,GAAG,YAAY,CAAC,EAAE,CAAC;wBACvC,IAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC;wBACrC,OAAO,IAAI,CAAC,OAAO,CAClB,SAAS,EACT,OAAO,EACP,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,WAAW,EACX,WAAW,EACX,cAAc,EACd,aAAa,GAAG,MAAM,EACtB,SAAS,EACT,aAAa,CACb,CAAC;qBACF;oBACD,MAAM;aACP;SACD;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IAES,+CAAS,GAAnB,UACC,QAA+B,EAC/B,UAAmC,EACnC,MAAoB;QAEpB,IAAM,MAAM,GAAG,QAAQ,CAAC,oBAAoB,EAAE,CAAC;QAC/C,IAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;QACvC,OAAO,MAAM,CAAC,GAAG,CAChB,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAC3C,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAC1D,CAAC;IACH,CAAC;IAES,sDAAgB,GAA1B,UACC,QAA+B,EAC/B,UAAmC,EACnC,MAAoB;QAEpB,OAAO,MAAM,CAAC;IACf,CAAC;IAES,8CAAQ,GAAlB,UACC,QAA+B,EAC/B,UAAmC,EACnC,MAAoB;QAEpB,IAAM,MAAM,GAAG,QAAQ,CAAC,oBAAoB,EAAE,CAAC;QAC/C,IAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;QACvC,OAAO,MAAM,CAAC,GAAG,CAChB,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAC3C,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAC3D,CAAC;IACH,CAAC;IAES,qDAAe,GAAzB,UACC,QAA+B,EAC/B,UAAmC,EACnC,MAAoB;QAEpB,OAAO,MAAM,CAAC;IACf,CAAC;IAES,6CAAO,GAAjB,UACC,UAAkB,EAClB,QAAgB,EAChB,iBAAyB,EACzB,eAAuB,EACvB,UAAmC,EACnC,WAAqB,EACrB,WAAqB,EACrB,cAAwB,EACxB,cAAsB,EACtB,SAAiB,EACjB,cAAsB;QAEtB,IAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QAC/B,IAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;QAC7B,IAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC;QACnC,IAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC;QACzC,IAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC;QACjC,IAAM,cAAc,GAAG,SAAS,CAAC,SAAS,CAAC;QAC3C,IAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;QAC7B,IAAM,kBAAkB,GAAG,SAAS,CAAC,KAAK,CAAC;QAC3C,IAAM,UAAU,GAAG,CAAC,aAAa,GAAG,CAAC,CAAC,GAAG,kBAAkB,CAAC;QAC5D,IAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC;QACjC,IAAM,cAAc,GAAG,SAAS,CAAC,SAAS,CAAC;QAC3C,IAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;QACpC,IAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;QACpC,IAAI,CAAC,QAAQ,CACZ,UAAU,EACV,UAAU,EACV,QAAQ,EACR,iBAAiB,EACjB,eAAe,EACf,UAAU,EACV,aAAa,EACb,SAAS,EACT,kBAAkB,EAClB,UAAU,EACV,SAAS,EACT,UAAU,EACV,UAAU,CACV,CAAC;QAEF,IAAM,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC;QACtB,IAAM,EAAE,GAAG,SAAS,CAAC,EAAE,CAAC;QACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,EAAE,EAAE,CAAC,EAAE;YACvC,IAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;YAClC,IAAM,UAAU,GAAG,CAAC,GAAG,CAAC,CAAC;YACzB,IAAM,iBAAiB,GAAG,UAAU,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE;gBAC9B,IAAM,0BAA0B,GAAG,UAAU,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;gBAC9D,IAAM,kBAAkB,GAAG,CAAC,GAAG,0BAA0B,GAAG,EAAE,CAAC;gBAC/D,IAAM,aAAa,GAAG,UAAU,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;gBACjD,IAAI,CAAC,SAAS,CACb,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,MAAM,CAAC,iBAAiB,EAAE,aAAa,CAAC,CACxD,CAAC;gBACF,IAAI,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE;oBAC9B,IAAI,CAAC,iBAAiB,CACrB,cAAc,CAAC,CAAC,CAAC,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,GAAG,GAAG,EACpB,CAAC,EACD,cAAc,CACd,CAAC;iBACF;aACD;iBAAM;gBACN,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;gBAC3B,IAAI,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE;oBAC9B,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;iBAC1C;aACD;SACD;QAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,EAAE,CAAC,EAAE;YACpC,IAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;YAClC,IAAM,UAAU,GAAG,CAAC,GAAG,CAAC,CAAC;YACzB,IAAM,iBAAiB,GAAG,UAAU,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE;gBAC9B,IAAM,0BAA0B,GAAG,UAAU,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;gBAC9D,IAAM,kBAAkB,GAAG,CAAC,GAAG,0BAA0B,GAAG,EAAE,CAAC;gBAC/D,IAAM,aAAa,GAAG,UAAU,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;gBACjD,IAAI,CAAC,SAAS,CACb,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,MAAM,CAAC,iBAAiB,EAAE,aAAa,CAAC,CACxD,CAAC;aACF;iBAAM;gBACN,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;aAC3B;SACD;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAES,6CAAO,GAAjB,UACC,SAAiB,EACjB,OAAe,EACf,gBAAwB,EACxB,cAAsB,EACtB,UAAmC,EACnC,WAAqB,EACrB,WAAqB,EACrB,cAAwB,EACxB,cAAsB,EACtB,SAAiB,EACjB,aAAqB;QAErB,IAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QAC/B,IAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;QAC7B,IAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC;QACnC,IAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC;QACzC,IAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC;QACjC,IAAM,cAAc,GAAG,SAAS,CAAC,SAAS,CAAC;QAC3C,IAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;QAC7B,IAAM,kBAAkB,GAAG,SAAS,CAAC,KAAK,CAAC;QAC3C,IAAM,UAAU,GAAG,CAAC,aAAa,GAAG,CAAC,CAAC,GAAG,kBAAkB,CAAC;QAC5D,IAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC;QACjC,IAAM,cAAc,GAAG,SAAS,CAAC,SAAS,CAAC;QAC3C,IAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;QACpC,IAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;QACpC,IAAI,CAAC,QAAQ,CACZ,UAAU,EACV,SAAS,EACT,OAAO,EACP,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,aAAa,EACb,SAAS,EACT,kBAAkB,EAClB,UAAU,EACV,SAAS,EACT,UAAU,EACV,UAAU,CACV,CAAC;QAEF,IAAM,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC;QACtB,IAAM,EAAE,GAAG,SAAS,CAAC,EAAE,CAAC;QACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,EAAE,EAAE,CAAC,EAAE;YACvC,IAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;YAClC,IAAM,UAAU,GAAG,CAAC,GAAG,CAAC,CAAC;YACzB,IAAM,iBAAiB,GAAG,UAAU,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE;gBAC9B,IAAM,0BAA0B,GAAG,UAAU,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;gBAC9D,IAAM,kBAAkB,GAAG,CAAC,GAAG,0BAA0B,GAAG,EAAE,CAAC;gBAC/D,IAAM,aAAa,GAAG,UAAU,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;gBACjD,IAAI,CAAC,SAAS,CACb,UAAU,EACV,cAAc,EACd,kBAAkB,EAClB,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,MAAM,CAAC,iBAAiB,EAAE,aAAa,CAAC,CACxD,CAAC;gBACF,IAAI,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE;oBAC9B,IAAI,CAAC,iBAAiB,CACrB,cAAc,CAAC,CAAC,CAAC,EACjB,iBAAiB,EACjB,aAAa,GAAG,GAAG,EACnB,kBAAkB,EAClB,aAAa,EACb,CAAC,CACD,CAAC;iBACF;aACD;iBAAM;gBACN,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;gBAC3B,IAAI,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE;oBAC9B,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;iBAC1C;aACD;SACD;QAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,EAAE,CAAC,EAAE;YACpC,IAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;YAClC,IAAM,UAAU,GAAG,CAAC,GAAG,CAAC,CAAC;YACzB,IAAM,iBAAiB,GAAG,UAAU,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE;gBAC9B,IAAM,0BAA0B,GAAG,UAAU,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;gBAC9D,IAAM,kBAAkB,GAAG,CAAC,GAAG,0BAA0B,GAAG,EAAE,CAAC;gBAC/D,IAAM,aAAa,GAAG,UAAU,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;gBACjD,IAAI,CAAC,SAAS,CACb,UAAU,EACV,cAAc,EACd,kBAAkB,EAClB,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,MAAM,CAAC,iBAAiB,EAAE,aAAa,CAAC,CACxD,CAAC;aACF;iBAAM;gBACN,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;aAC3B;SACD;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAES,+CAAS,GAAnB,UAAoB,KAAa,EAAE,CAAS,EAAE,CAAS,EAAE,IAAa;QACrE,KAAK,CAAC,sBAAsB,EAAE,CAAC;QAC/B,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QACrB,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5C,KAAK,CAAC,mBAAmB,EAAE,CAAC;IAC7B,CAAC;IAES,uDAAiB,GAA3B,UACC,KAAa,EACb,KAAa,EACb,CAAS,EACT,CAAS,EACT,EAAU,EACV,EAAU;QAEV,KAAK,CAAC,sBAAsB,EAAE,CAAC;QAC/B,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QACrB,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACvB,KAAK,CAAC,mBAAmB,EAAE,CAAC;IAC7B,CAAC;IAES,+CAAS,GAAnB,UAAoB,KAAa;QAChC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,CAAC;IAES,uDAAiB,GAA3B,UAA4B,KAAa;QACxC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,CAAC;IAES,+CAAS,GAAnB,UAAoB,KAAa,EAAE,CAAS,EAAE,CAAS,EAAE,IAAa;QACrE,KAAK,CAAC,sBAAsB,EAAE,CAAC;QAC/B,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QACrB,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5C,KAAK,CAAC,mBAAmB,EAAE,CAAC;IAC7B,CAAC;IAES,+CAAS,GAAnB,UAAoB,KAAa;QAChC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,CAAC;IAES,8CAAQ,GAAlB,UACC,UAAmC,EACnC,UAAkB,EAClB,QAAgB,EAChB,iBAAyB,EACzB,eAAuB,EACvB,UAAkB,EAClB,aAAqB,EACrB,SAAqE,EACrE,kBAA0B,EAC1B,UAAkB,EAClB,SAAqE,EACrE,WAAqB,EACrB,WAAqB;QAErB,UAAU,CAAC,KAAK,CACf,UAAU,EACV,QAAQ,EACR,iBAAiB,EACjB,eAAe,EACf,UAAU,EACV,aAAa,EACb,SAAS,EACT,kBAAkB,EAClB,UAAU,EACV,SAAS,EACT,WAAW,EACX,WAAW,CACX,CAAC;IACH,CAAC;IAED,6CAAO,GAAP;QACC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACtB,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAChB,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAC7B,CAAC;IACF,kCAAC;AAAD,CAAC,AA/eD,IA+eC","sourcesContent":["import { Matrix } from \"pixi.js\";\nimport { DBase } from \"./d-base\";\nimport { DChartAxisBaseOptionParser } from \"./d-chart-axis-base-options-parser\";\nimport { DChartAxisBaseTickMajor } from \"./d-chart-axis-base-tick-major\";\nimport { DChartAxisBaseTickMinor } from \"./d-chart-axis-base-tick-minor\";\nimport { DChartAxisContainer } from \"./d-chart-axis-container\";\nimport { DChartAxisPosition } from \"./d-chart-axis-position\";\nimport { DChartAxisTickContainer } from \"./d-chart-axis-tick-container\";\nimport { DChartAxisTickMajor } from \"./d-chart-axis-tick-major\";\nimport { DChartAxisTickMinor } from \"./d-chart-axis-tick-minor\";\nimport { DChartCoordinate } from \"./d-chart-coordinate\";\nimport { DChartCoordinateTickMajorStepFunction } from \"./d-chart-coordinate-tick-major-step-function\";\nimport { DChartCoordinateTickMinorStepFunction } from \"./d-chart-coordinate-tick-minor-step-function\";\nimport { DChartPlotArea } from \"./d-chart-plot-area\";\nimport { DChartRegion } from \"./d-chart-region\";\nimport { DChartRegionImpl } from \"./d-chart-region-impl\";\nimport { EShape } from \"./shape/e-shape\";\n\nexport interface DChartAxisBaseTickContainerOptions {}\n\nexport class DChartAxisBaseTickContainer<\n\tCHART extends DBase = DBase,\n\tOPTIONS extends DChartAxisBaseTickContainerOptions = DChartAxisBaseTickContainerOptions\n> implements DChartAxisTickContainer<CHART>\n{\n\tprotected _parser: DChartAxisBaseOptionParser;\n\tprotected _container?: DChartAxisContainer<CHART>;\n\tprotected _index: number;\n\tprotected _major: DChartAxisTickMajor<CHART>;\n\tprotected _minor: DChartAxisTickMinor<CHART>;\n\tprotected _majorTicks: number[];\n\tprotected _minorTicks: number[];\n\tprotected _work: DChartRegion;\n\n\tconstructor(parser: DChartAxisBaseOptionParser, options?: OPTIONS) {\n\t\tthis._parser = parser;\n\t\tthis._index = 0;\n\t\tthis._major = this.newMajor(parser, options);\n\t\tthis._minor = this.newMinor(parser, options);\n\t\tthis._majorTicks = [];\n\t\tthis._minorTicks = [];\n\t\tthis._work = new DChartRegionImpl(0, 0);\n\t}\n\n\tget major(): DChartAxisTickMajor<CHART> {\n\t\treturn this._major;\n\t}\n\n\tprotected newMajor(\n\t\tparser: DChartAxisBaseOptionParser,\n\t\toptions?: OPTIONS\n\t): DChartAxisTickMajor<CHART> {\n\t\treturn new DChartAxisBaseTickMajor(parser);\n\t}\n\n\tget minor(): DChartAxisTickMinor<CHART> {\n\t\treturn this._minor;\n\t}\n\n\tprotected newMinor(\n\t\tparser: DChartAxisBaseOptionParser,\n\t\toptions?: OPTIONS\n\t): DChartAxisTickMinor<CHART> {\n\t\treturn new DChartAxisBaseTickMinor(parser);\n\t}\n\n\tbind(container: DChartAxisContainer<CHART>, index: number): void {\n\t\tthis._container = container;\n\t\tthis._index = index;\n\t\tthis._major.bind(container, index);\n\t\tthis._minor.bind(container, index);\n\t}\n\n\tunbind(): void {\n\t\tthis._minor.unbind();\n\t\tthis._major.unbind();\n\t\tthis._index = 0;\n\t\tthis._container = undefined;\n\t}\n\n\tupdate(): boolean {\n\t\tconst container = this._container;\n\t\tconst majorShapes = this._major.shapes;\n\t\tconst minorShapes = this._minor.shapes;\n\t\tif (container != null && majorShapes && minorShapes) {\n\t\t\tconst plotArea = container.plotArea;\n\t\t\tconst transform = plotArea.container.transform.localTransform;\n\t\t\tconst gridlineShapes = this._major.gridline.shapes;\n\n\t\t\tconst parser = this._parser;\n\t\t\tconst offset = parser.padding * this._index;\n\t\t\tconst work = this._work;\n\t\t\tlet coordinate: DChartCoordinate<CHART> | null;\n\t\t\tswitch (parser.position) {\n\t\t\t\tcase DChartAxisPosition.TOP:\n\t\t\t\t\tcoordinate = plotArea.coordinate.x.get(parser.coordinate);\n\t\t\t\t\tif (coordinate) {\n\t\t\t\t\t\tconst domain = this.getDomain(plotArea, coordinate, work);\n\t\t\t\t\t\tconst domainFrom = domain.from;\n\t\t\t\t\t\tconst domainTo = domain.to;\n\t\t\t\t\t\tconst domainVisible = this.getDomainVisible(plotArea, coordinate, work);\n\t\t\t\t\t\tconst domainVisibleFrom = domainVisible.from;\n\t\t\t\t\t\tconst domainVisibleTo = domainVisible.to;\n\t\t\t\t\t\tconst plotAreaHeight = plotArea.height;\n\t\t\t\t\t\treturn this.updateX(\n\t\t\t\t\t\t\tdomainFrom,\n\t\t\t\t\t\t\tdomainTo,\n\t\t\t\t\t\t\tdomainVisibleFrom,\n\t\t\t\t\t\t\tdomainVisibleTo,\n\t\t\t\t\t\t\tcoordinate,\n\t\t\t\t\t\t\tmajorShapes,\n\t\t\t\t\t\t\tminorShapes,\n\t\t\t\t\t\t\tgridlineShapes,\n\t\t\t\t\t\t\t0 - offset,\n\t\t\t\t\t\t\ttransform,\n\t\t\t\t\t\t\tplotAreaHeight\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase DChartAxisPosition.BOTTOM:\n\t\t\t\t\tcoordinate = plotArea.coordinate.x.get(parser.coordinate);\n\t\t\t\t\tif (coordinate) {\n\t\t\t\t\t\tconst domain = this.getDomain(plotArea, coordinate, work);\n\t\t\t\t\t\tconst domainFrom = domain.from;\n\t\t\t\t\t\tconst domainTo = domain.to;\n\t\t\t\t\t\tconst domainVisible = this.getDomainVisible(plotArea, coordinate, work);\n\t\t\t\t\t\tconst domainVisibleFrom = domainVisible.from;\n\t\t\t\t\t\tconst domainVisibleTo = domainVisible.to;\n\t\t\t\t\t\tconst plotAreaHeight = plotArea.height;\n\t\t\t\t\t\treturn this.updateX(\n\t\t\t\t\t\t\tdomainFrom,\n\t\t\t\t\t\t\tdomainTo,\n\t\t\t\t\t\t\tdomainVisibleFrom,\n\t\t\t\t\t\t\tdomainVisibleTo,\n\t\t\t\t\t\t\tcoordinate,\n\t\t\t\t\t\t\tmajorShapes,\n\t\t\t\t\t\t\tminorShapes,\n\t\t\t\t\t\t\tgridlineShapes,\n\t\t\t\t\t\t\tplotAreaHeight + offset,\n\t\t\t\t\t\t\ttransform,\n\t\t\t\t\t\t\tplotAreaHeight\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase DChartAxisPosition.LEFT:\n\t\t\t\t\tcoordinate = plotArea.coordinate.y.get(parser.coordinate);\n\t\t\t\t\tif (coordinate) {\n\t\t\t\t\t\tconst range = this.getRange(plotArea, coordinate, work);\n\t\t\t\t\t\tconst rangeFrom = range.from;\n\t\t\t\t\t\tconst rangeTo = range.to;\n\t\t\t\t\t\tconst rangeVisible = this.getRangeVisible(plotArea, coordinate, work);\n\t\t\t\t\t\tconst rangeVisibleFrom = rangeVisible.from;\n\t\t\t\t\t\tconst rangeVisibleTo = rangeVisible.to;\n\t\t\t\t\t\tconst plotAreaWidth = plotArea.width;\n\t\t\t\t\t\treturn this.updateY(\n\t\t\t\t\t\t\trangeFrom,\n\t\t\t\t\t\t\trangeTo,\n\t\t\t\t\t\t\trangeVisibleFrom,\n\t\t\t\t\t\t\trangeVisibleTo,\n\t\t\t\t\t\t\tcoordinate,\n\t\t\t\t\t\t\tmajorShapes,\n\t\t\t\t\t\t\tminorShapes,\n\t\t\t\t\t\t\tgridlineShapes,\n\t\t\t\t\t\t\t0 - offset,\n\t\t\t\t\t\t\ttransform,\n\t\t\t\t\t\t\tplotAreaWidth\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase DChartAxisPosition.RIGHT:\n\t\t\t\t\tcoordinate = plotArea.coordinate.y.get(parser.coordinate);\n\t\t\t\t\tif (coordinate) {\n\t\t\t\t\t\tconst range = this.getRange(plotArea, coordinate, work);\n\t\t\t\t\t\tconst rangeFrom = range.from;\n\t\t\t\t\t\tconst rangeTo = range.to;\n\t\t\t\t\t\tconst rangeVisible = this.getRangeVisible(plotArea, coordinate, work);\n\t\t\t\t\t\tconst rangeVisibleFrom = rangeVisible.from;\n\t\t\t\t\t\tconst rangeVisibleTo = rangeVisible.to;\n\t\t\t\t\t\tconst plotAreaWidth = plotArea.width;\n\t\t\t\t\t\treturn this.updateY(\n\t\t\t\t\t\t\trangeFrom,\n\t\t\t\t\t\t\trangeTo,\n\t\t\t\t\t\t\trangeVisibleFrom,\n\t\t\t\t\t\t\trangeVisibleTo,\n\t\t\t\t\t\t\tcoordinate,\n\t\t\t\t\t\t\tmajorShapes,\n\t\t\t\t\t\t\tminorShapes,\n\t\t\t\t\t\t\tgridlineShapes,\n\t\t\t\t\t\t\tplotAreaWidth + offset,\n\t\t\t\t\t\t\ttransform,\n\t\t\t\t\t\t\tplotAreaWidth\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\tprotected getDomain(\n\t\tplotArea: DChartPlotArea<CHART>,\n\t\tcoordinate: DChartCoordinate<CHART>,\n\t\tresult: DChartRegion\n\t): DChartRegion {\n\t\tconst bounds = plotArea.getBoundsInContainer();\n\t\tconst transform = coordinate.transform;\n\t\treturn result.set(\n\t\t\tcoordinate.unmap(transform.unmap(bounds.x)),\n\t\t\tcoordinate.unmap(transform.unmap(bounds.x + bounds.width))\n\t\t);\n\t}\n\n\tprotected getDomainVisible(\n\t\tplotArea: DChartPlotArea<CHART>,\n\t\tcoordinate: DChartCoordinate<CHART>,\n\t\tresult: DChartRegion\n\t): DChartRegion {\n\t\treturn result;\n\t}\n\n\tprotected getRange(\n\t\tplotArea: DChartPlotArea<CHART>,\n\t\tcoordinate: DChartCoordinate<CHART>,\n\t\tresult: DChartRegion\n\t): DChartRegion {\n\t\tconst bounds = plotArea.getBoundsInContainer();\n\t\tconst transform = coordinate.transform;\n\t\treturn result.set(\n\t\t\tcoordinate.unmap(transform.unmap(bounds.y)),\n\t\t\tcoordinate.unmap(transform.unmap(bounds.y + bounds.height))\n\t\t);\n\t}\n\n\tprotected getRangeVisible(\n\t\tplotArea: DChartPlotArea<CHART>,\n\t\tcoordinate: DChartCoordinate<CHART>,\n\t\tresult: DChartRegion\n\t): DChartRegion {\n\t\treturn result;\n\t}\n\n\tprotected updateX(\n\t\tdomainFrom: number,\n\t\tdomainTo: number,\n\t\tdomainVisibleFrom: number,\n\t\tdomainVisibleTo: number,\n\t\tcoordinate: DChartCoordinate<CHART>,\n\t\tmajorShapes: EShape[],\n\t\tminorShapes: EShape[],\n\t\tgridlineShapes: EShape[],\n\t\tshapePositionY: number,\n\t\ttransform: Matrix,\n\t\tplotAreaHeight: number\n\t): boolean {\n\t\tconst tick = this._parser.tick;\n\t\tconst majorTick = tick.major;\n\t\tconst majorCount = majorTick.count;\n\t\tconst majorCapacity = majorTick.capacity;\n\t\tconst majorStep = majorTick.step;\n\t\tconst majorFormatter = majorTick.formatter;\n\t\tconst minorTick = tick.minor;\n\t\tconst minorCountPerMajor = minorTick.count;\n\t\tconst minorCount = (majorCapacity + 1) * minorCountPerMajor;\n\t\tconst minorStep = minorTick.step;\n\t\tconst minorFormatter = minorTick.formatter;\n\t\tconst majorTicks = this._majorTicks;\n\t\tconst minorTicks = this._minorTicks;\n\t\tthis.newTicks(\n\t\t\tcoordinate,\n\t\t\tdomainFrom,\n\t\t\tdomainTo,\n\t\t\tdomainVisibleFrom,\n\t\t\tdomainVisibleTo,\n\t\t\tmajorCount,\n\t\t\tmajorCapacity,\n\t\t\tmajorStep,\n\t\t\tminorCountPerMajor,\n\t\t\tminorCount,\n\t\t\tminorStep,\n\t\t\tmajorTicks,\n\t\t\tminorTicks\n\t\t);\n\n\t\tconst a = transform.a;\n\t\tconst tx = transform.tx;\n\t\tfor (let i = 0; i < majorCapacity; ++i) {\n\t\t\tconst majorShape = majorShapes[i];\n\t\t\tconst imajorTick = i * 3;\n\t\t\tconst majorTickPosition = majorTicks[imajorTick + 0];\n\t\t\tif (!isNaN(majorTickPosition)) {\n\t\t\t\tconst majorTickProjectedPosition = majorTicks[imajorTick + 1];\n\t\t\t\tconst majotTickPositionX = a * majorTickProjectedPosition + tx;\n\t\t\t\tconst majorTickStep = majorTicks[imajorTick + 2];\n\t\t\t\tthis.showMajor(\n\t\t\t\t\tmajorShape,\n\t\t\t\t\tmajotTickPositionX,\n\t\t\t\t\tshapePositionY,\n\t\t\t\t\tmajorFormatter?.format(majorTickPosition, majorTickStep)\n\t\t\t\t);\n\t\t\t\tif (i < gridlineShapes.length) {\n\t\t\t\t\tthis.showMajorGridline(\n\t\t\t\t\t\tgridlineShapes[i],\n\t\t\t\t\t\tmajorTickPosition,\n\t\t\t\t\t\tmajotTickPositionX,\n\t\t\t\t\t\tplotAreaHeight * 0.5,\n\t\t\t\t\t\t0,\n\t\t\t\t\t\tplotAreaHeight\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthis.hideMajor(majorShape);\n\t\t\t\tif (i < gridlineShapes.length) {\n\t\t\t\t\tthis.hideMajorGridline(gridlineShapes[i]);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tfor (let i = 0; i < minorCount; ++i) {\n\t\t\tconst minorShape = minorShapes[i];\n\t\t\tconst iminorTick = i * 3;\n\t\t\tconst minorTickPosition = minorTicks[iminorTick + 0];\n\t\t\tif (!isNaN(minorTickPosition)) {\n\t\t\t\tconst minorTickProjectedPosition = minorTicks[iminorTick + 1];\n\t\t\t\tconst minorTickPositionX = a * minorTickProjectedPosition + tx;\n\t\t\t\tconst minorTickStep = minorTicks[iminorTick + 2];\n\t\t\t\tthis.showMinor(\n\t\t\t\t\tminorShape,\n\t\t\t\t\tminorTickPositionX,\n\t\t\t\t\tshapePositionY,\n\t\t\t\t\tminorFormatter?.format(minorTickPosition, minorTickStep)\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tthis.hideMinor(minorShape);\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\n\tprotected updateY(\n\t\trangeFrom: number,\n\t\trangeTo: number,\n\t\trangeVisibleFrom: number,\n\t\trangeVisibleTo: number,\n\t\tcoordinate: DChartCoordinate<CHART>,\n\t\tmajorShapes: EShape[],\n\t\tminorShapes: EShape[],\n\t\tgridlineShapes: EShape[],\n\t\tshapePositionX: number,\n\t\ttransform: Matrix,\n\t\tplotAreaWidth: number\n\t): boolean {\n\t\tconst tick = this._parser.tick;\n\t\tconst majorTick = tick.major;\n\t\tconst majorCount = majorTick.count;\n\t\tconst majorCapacity = majorTick.capacity;\n\t\tconst majorStep = majorTick.step;\n\t\tconst majorFormatter = majorTick.formatter;\n\t\tconst minorTick = tick.minor;\n\t\tconst minorCountPerMajor = minorTick.count;\n\t\tconst minorCount = (majorCapacity + 1) * minorCountPerMajor;\n\t\tconst minorStep = minorTick.step;\n\t\tconst minorFormatter = minorTick.formatter;\n\t\tconst majorTicks = this._majorTicks;\n\t\tconst minorTicks = this._minorTicks;\n\t\tthis.newTicks(\n\t\t\tcoordinate,\n\t\t\trangeFrom,\n\t\t\trangeTo,\n\t\t\trangeVisibleFrom,\n\t\t\trangeVisibleTo,\n\t\t\tmajorCount,\n\t\t\tmajorCapacity,\n\t\t\tmajorStep,\n\t\t\tminorCountPerMajor,\n\t\t\tminorCount,\n\t\t\tminorStep,\n\t\t\tmajorTicks,\n\t\t\tminorTicks\n\t\t);\n\n\t\tconst d = transform.d;\n\t\tconst ty = transform.ty;\n\t\tfor (let i = 0; i < majorCapacity; ++i) {\n\t\t\tconst majorShape = majorShapes[i];\n\t\t\tconst imajorTick = i * 3;\n\t\t\tconst majorTickPosition = majorTicks[imajorTick + 0];\n\t\t\tif (!isNaN(majorTickPosition)) {\n\t\t\t\tconst majorTickProjectedPosition = majorTicks[imajorTick + 1];\n\t\t\t\tconst majotTickPositionY = d * majorTickProjectedPosition + ty;\n\t\t\t\tconst majorTickStep = majorTicks[imajorTick + 2];\n\t\t\t\tthis.showMajor(\n\t\t\t\t\tmajorShape,\n\t\t\t\t\tshapePositionX,\n\t\t\t\t\tmajotTickPositionY,\n\t\t\t\t\tmajorFormatter?.format(majorTickPosition, majorTickStep)\n\t\t\t\t);\n\t\t\t\tif (i < gridlineShapes.length) {\n\t\t\t\t\tthis.showMajorGridline(\n\t\t\t\t\t\tgridlineShapes[i],\n\t\t\t\t\t\tmajorTickPosition,\n\t\t\t\t\t\tplotAreaWidth * 0.5,\n\t\t\t\t\t\tmajotTickPositionY,\n\t\t\t\t\t\tplotAreaWidth,\n\t\t\t\t\t\t0\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthis.hideMajor(majorShape);\n\t\t\t\tif (i < gridlineShapes.length) {\n\t\t\t\t\tthis.hideMajorGridline(gridlineShapes[i]);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tfor (let i = 0; i < minorCount; ++i) {\n\t\t\tconst minorShape = minorShapes[i];\n\t\t\tconst iminorTick = i * 3;\n\t\t\tconst minorTickPosition = minorTicks[iminorTick + 0];\n\t\t\tif (!isNaN(minorTickPosition)) {\n\t\t\t\tconst minorTickProjectedPosition = minorTicks[iminorTick + 1];\n\t\t\t\tconst minorTickPositionY = d * minorTickProjectedPosition + ty;\n\t\t\t\tconst minorTickStep = minorTicks[iminorTick + 2];\n\t\t\t\tthis.showMinor(\n\t\t\t\t\tminorShape,\n\t\t\t\t\tshapePositionX,\n\t\t\t\t\tminorTickPositionY,\n\t\t\t\t\tminorFormatter?.format(minorTickPosition, minorTickStep)\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tthis.hideMinor(minorShape);\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\n\tprotected showMajor(shape: EShape, x: number, y: number, text?: string): void {\n\t\tshape.disallowUploadedUpdate();\n\t\tshape.visible = true;\n\t\tshape.transform.position.set(x, y);\n\t\tshape.text.value = text != null ? text : \"\";\n\t\tshape.allowUploadedUpdate();\n\t}\n\n\tprotected showMajorGridline(\n\t\tshape: EShape,\n\t\tvalue: number,\n\t\tx: number,\n\t\ty: number,\n\t\tsx: number,\n\t\tsy: number\n\t): void {\n\t\tshape.disallowUploadedUpdate();\n\t\tshape.visible = true;\n\t\tshape.transform.position.set(x, y);\n\t\tshape.size.set(sx, sy);\n\t\tshape.allowUploadedUpdate();\n\t}\n\n\tprotected hideMajor(shape: EShape): void {\n\t\tshape.visible = false;\n\t}\n\n\tprotected hideMajorGridline(shape: EShape): void {\n\t\tshape.visible = false;\n\t}\n\n\tprotected showMinor(shape: EShape, x: number, y: number, text?: string): void {\n\t\tshape.disallowUploadedUpdate();\n\t\tshape.visible = true;\n\t\tshape.transform.position.set(x, y);\n\t\tshape.text.value = text != null ? text : \"\";\n\t\tshape.allowUploadedUpdate();\n\t}\n\n\tprotected hideMinor(shape: EShape): void {\n\t\tshape.visible = false;\n\t}\n\n\tprotected newTicks(\n\t\tcoordinate: DChartCoordinate<CHART>,\n\t\tdomainFrom: number,\n\t\tdomainTo: number,\n\t\tdomainVisibleFrom: number,\n\t\tdomainVisibleTo: number,\n\t\tmajorCount: number,\n\t\tmajorCapacity: number,\n\t\tmajorStep: number | DChartCoordinateTickMajorStepFunction | undefined,\n\t\tminorCountPerMajor: number,\n\t\tminorCount: number,\n\t\tminorStep: number | DChartCoordinateTickMinorStepFunction | undefined,\n\t\tmajorResult: number[],\n\t\tminorResult: number[]\n\t): void {\n\t\tcoordinate.ticks(\n\t\t\tdomainFrom,\n\t\t\tdomainTo,\n\t\t\tdomainVisibleFrom,\n\t\t\tdomainVisibleTo,\n\t\t\tmajorCount,\n\t\t\tmajorCapacity,\n\t\t\tmajorStep,\n\t\t\tminorCountPerMajor,\n\t\t\tminorCount,\n\t\t\tminorStep,\n\t\t\tmajorResult,\n\t\t\tminorResult\n\t\t);\n\t}\n\n\tdestroy(): void {\n\t\tthis._major.destroy();\n\t\tthis._minor.destroy();\n\t\tthis._index = 0;\n\t\tthis._container = undefined;\n\t}\n}\n"]}
|
|
@@ -176,8 +176,8 @@ var DChartCoordinateBase = /** @class */ (function () {
|
|
|
176
176
|
DChartCoordinateBase.prototype.unmapAll = function (values, ifrom, iend, stride, offset) {
|
|
177
177
|
// DO NOTHING
|
|
178
178
|
};
|
|
179
|
-
DChartCoordinateBase.prototype.ticks = function (domainFrom, domainTo, majorCount, majorCapacity, majorStep, minorCountPerMajor, minorCount, minorStep, majorResult, minorResult) {
|
|
180
|
-
this._tick.calculate(domainFrom, domainTo, majorCount, majorCapacity, majorStep, minorCountPerMajor, minorCount, minorStep, majorResult, minorResult, this);
|
|
179
|
+
DChartCoordinateBase.prototype.ticks = function (domainFrom, domainTo, domainVisibleFrom, domainVisibleTo, majorCount, majorCapacity, majorStep, minorCountPerMajor, minorCount, minorStep, majorResult, minorResult) {
|
|
180
|
+
this._tick.calculate(domainFrom, domainTo, domainVisibleFrom, domainVisibleTo, majorCount, majorCapacity, majorStep, minorCountPerMajor, minorCount, minorStep, majorResult, minorResult, this);
|
|
181
181
|
};
|
|
182
182
|
DChartCoordinateBase.prototype.toTheme = function (options) {
|
|
183
183
|
var _a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"d-chart-coordinate-base.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-chart-coordinate-base.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DBase } from \"./d-base\";\nimport {\n\tDChartCoordinate,\n\tDChartCoordinateOptions,\n\tDThemeChartCoordinate\n} from \"./d-chart-coordinate\";\nimport { DChartCoordinateContainerSub } from \"./d-chart-coordinate-container-sub\";\nimport { DChartCoordinateDirection } from \"./d-chart-coordinate-direction\";\nimport { DChartCoordinateTick, DChartCoordinateTickOptions } from \"./d-chart-coordinate-tick\";\nimport { DChartCoordinateTickMajorStepFunction } from \"./d-chart-coordinate-tick-major-step-function\";\nimport { DChartCoordinateTickMinorStepFunction } from \"./d-chart-coordinate-tick-minor-step-function\";\nimport {\n\tDChartCoordinateTransform,\n\tDChartCoordinateTransformOptions\n} from \"./d-chart-coordinate-transform\";\nimport { DChartCoordinateTransformImpl } from \"./d-chart-coordinate-transform-impl\";\nimport {\n\tDChartCoordinateTransformMark,\n\tDChartCoordinateTransformMarkImpl\n} from \"./d-chart-coordinate-transform-mark\";\nimport { DChartPlotArea } from \"./d-chart-plot-area\";\nimport { DChartRegion } from \"./d-chart-region\";\nimport { DChartRegionImpl } from \"./d-chart-region-impl\";\nimport { DThemes } from \"./theme/d-themes\";\nimport { isNaN } from \"./util/is-nan\";\n\nexport abstract class DChartCoordinateBase<CHART extends DBase = DBase>\n\timplements DChartCoordinate<CHART>\n{\n\tprotected _id: number;\n\tprotected _transform: DChartCoordinateTransform<CHART>;\n\tprotected _container?: DChartCoordinateContainerSub<CHART>;\n\tprotected _direction: DChartCoordinateDirection;\n\tprotected _theme: DThemeChartCoordinate;\n\tprotected _work: DChartRegionImpl;\n\tprotected _tick: DChartCoordinateTick<CHART>;\n\tprotected _mark: DChartCoordinateTransformMark;\n\tprotected _from?: number;\n\tprotected _to?: number;\n\n\tconstructor(options?: DChartCoordinateOptions) {\n\t\tthis._id = 0;\n\t\tthis._direction = DChartCoordinateDirection.X;\n\t\tthis._theme = this.toTheme(options);\n\t\tthis._transform = this.newTransform(options?.transform);\n\t\tthis._tick = this.newTick(options?.tick);\n\t\tthis._work = this.newRegion();\n\t\tthis._mark = this.newMark();\n\t\tthis._from = options?.from;\n\t\tthis._to = options?.to;\n\t}\n\n\tprotected newTransform(\n\t\toptions?: DChartCoordinateTransformOptions\n\t): DChartCoordinateTransform<CHART> {\n\t\treturn new DChartCoordinateTransformImpl(options);\n\t}\n\n\tprotected abstract newTick(options?: DChartCoordinateTickOptions): DChartCoordinateTick<CHART>;\n\n\tprotected newRegion(): DChartRegion {\n\t\treturn new DChartRegionImpl(NaN, NaN);\n\t}\n\n\tprotected newMark(): DChartCoordinateTransformMark {\n\t\treturn new DChartCoordinateTransformMarkImpl();\n\t}\n\n\tget from(): number | undefined {\n\t\treturn this._from;\n\t}\n\n\tset from(from: number | undefined) {\n\t\tthis._from = from;\n\t}\n\n\tget to(): number | undefined {\n\t\treturn this._to;\n\t}\n\n\tset to(to: number | undefined) {\n\t\tthis._to = to;\n\t}\n\n\tbind(\n\t\tcontainer: DChartCoordinateContainerSub<CHART>,\n\t\tdirection: DChartCoordinateDirection\n\t): void {\n\t\tthis._container = container;\n\t\tthis._direction = direction;\n\t\tthis._transform.bind(container, direction);\n\t}\n\n\tunbind(): void {\n\t\tthis._container = undefined;\n\t\tthis._transform.unbind();\n\t}\n\n\tfit(from?: number, to?: number): void {\n\t\tthis.doFit(from, to, this._transform);\n\t}\n\n\tmark(from?: number, to?: number): void {\n\t\tconst mark = this._mark;\n\t\tconst transform = this._transform;\n\t\tmark.oldTranslate = transform.translate;\n\t\tmark.oldScale = transform.scale;\n\t\tthis.doFit(from, to, mark);\n\t}\n\n\tblend(ratio: number): void {\n\t\tthis._transform.blend(ratio, this._mark);\n\t}\n\n\tprotected doFit(\n\t\tfrom: number | undefined,\n\t\tto: number | undefined,\n\t\tresult: DChartCoordinateTransformMark | DChartCoordinateTransform<CHART>\n\t): void {\n\t\tconst container = this._container;\n\t\tif (container) {\n\t\t\tconst plotArea = container.container.plotArea;\n\t\t\tconst work = this._work;\n\t\t\tswitch (this._direction) {\n\t\t\t\tcase DChartCoordinateDirection.X:\n\t\t\t\t\tthis.getPixelDomain(plotArea, work);\n\t\t\t\t\tthis.doFit_(\n\t\t\t\t\t\twork.from,\n\t\t\t\t\t\twork.to,\n\t\t\t\t\t\tthis.toFitDomain(from, to, plotArea, work),\n\t\t\t\t\t\tresult\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t\tcase DChartCoordinateDirection.Y:\n\t\t\t\t\tthis.getPixelRange(plotArea, work);\n\t\t\t\t\tthis.doFit_(\n\t\t\t\t\t\twork.from,\n\t\t\t\t\t\twork.to,\n\t\t\t\t\t\tthis.toFitRange(from, to, plotArea, work),\n\t\t\t\t\t\tresult\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected getPixelDomain(plotArea: DChartPlotArea<CHART>, result: DChartRegion): DChartRegion {\n\t\tconst padding = plotArea.padding;\n\t\treturn result.set(padding.getLeft(), plotArea.width - padding.getRight());\n\t}\n\n\tprotected getPixelRange(plotArea: DChartPlotArea<CHART>, result: DChartRegion): DChartRegion {\n\t\tconst padding = plotArea.padding;\n\t\treturn result.set(plotArea.height - padding.getBottom(), padding.getTop());\n\t}\n\n\tprotected toFitDomain(\n\t\tfrom: number | undefined,\n\t\tto: number | undefined,\n\t\tplotArea: DChartPlotArea<CHART>,\n\t\tresult: DChartRegion\n\t): DChartRegion {\n\t\tif (from == null) {\n\t\t\tfrom = this._from;\n\t\t}\n\t\tif (to == null) {\n\t\t\tto = this._to;\n\t\t}\n\t\tif (from != null && to != null) {\n\t\t\tresult.set(from, to);\n\t\t} else {\n\t\t\tplotArea.series.getDomain(this, result);\n\t\t\tresult.set(from, to);\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected toFitRange(\n\t\tfrom: number | undefined,\n\t\tto: number | undefined,\n\t\tplotArea: DChartPlotArea<CHART>,\n\t\tresult: DChartRegion\n\t): DChartRegion {\n\t\tif (from == null) {\n\t\t\tfrom = this._from;\n\t\t}\n\t\tif (to == null) {\n\t\t\tto = this._to;\n\t\t}\n\t\tif (from != null && to != null) {\n\t\t\tresult.set(from, to);\n\t\t} else {\n\t\t\tplotArea.series.getRange(this, result);\n\t\t\tresult.set(from, to);\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected doFit_(\n\t\tpixelFrom: number,\n\t\tpixelTo: number,\n\t\tregion: DChartRegion,\n\t\tresult: DChartCoordinateTransformMark | DChartCoordinateTransform<CHART>\n\t): void {\n\t\tconst regionFrom = region.from;\n\t\tconst regionTo = region.to;\n\t\tif (!(isNaN(regionFrom) || isNaN(regionTo))) {\n\t\t\t// Scale\n\t\t\tlet newScale = 1;\n\t\t\tconst regionFromMapped = this.map(regionFrom);\n\t\t\tconst regionToMapped = this.map(regionTo);\n\t\t\tconst regionSizeMapped = regionToMapped - regionFromMapped;\n\t\t\tif (!this._theme.isZero(regionSizeMapped)) {\n\t\t\t\tconst pixelSize = pixelTo - pixelFrom;\n\t\t\t\tnewScale = pixelSize / regionSizeMapped;\n\t\t\t} else {\n\t\t\t\tnewScale = pixelTo < pixelFrom ? -1 : 1;\n\t\t\t}\n\n\t\t\t// Translation\n\t\t\tconst newTranslation = pixelFrom - regionFromMapped * newScale;\n\n\t\t\t// Done\n\t\t\tresult.set(newTranslation, newScale);\n\t\t}\n\t}\n\n\tget id(): number {\n\t\treturn this._id;\n\t}\n\n\tget transform(): DChartCoordinateTransform<CHART> {\n\t\treturn this._transform;\n\t}\n\n\tmap(value: number): number {\n\t\treturn value;\n\t}\n\n\tmapAll(values: number[], ifrom: number, iend: number, stride: number, offset: number): void {\n\t\t// DO NOTHING\n\t}\n\n\tunmap(value: number): number {\n\t\treturn value;\n\t}\n\n\tunmapAll(values: number[], ifrom: number, iend: number, stride: number, offset: number): void {\n\t\t// DO NOTHING\n\t}\n\n\tticks(\n\t\tdomainFrom: number,\n\t\tdomainTo: number,\n\t\tmajorCount: number,\n\t\tmajorCapacity: number,\n\t\tmajorStep: number | DChartCoordinateTickMajorStepFunction | undefined,\n\t\tminorCountPerMajor: number,\n\t\tminorCount: number,\n\t\tminorStep: number | DChartCoordinateTickMinorStepFunction | undefined,\n\t\tmajorResult: number[],\n\t\tminorResult: number[]\n\t): void {\n\t\tthis._tick.calculate(\n\t\t\tdomainFrom,\n\t\t\tdomainTo,\n\t\t\tmajorCount,\n\t\t\tmajorCapacity,\n\t\t\tmajorStep,\n\t\t\tminorCountPerMajor,\n\t\t\tminorCount,\n\t\t\tminorStep,\n\t\t\tmajorResult,\n\t\t\tminorResult,\n\t\t\tthis\n\t\t);\n\t}\n\n\tprotected toTheme(options?: DChartCoordinateOptions): DThemeChartCoordinate {\n\t\treturn options?.theme ?? this.getThemeDefault();\n\t}\n\n\tprotected getThemeDefault(): DThemeChartCoordinate {\n\t\treturn DThemes.getInstance().get(this.getType());\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DChartCoordinate\";\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"d-chart-coordinate-base.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-chart-coordinate-base.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DBase } from \"./d-base\";\nimport {\n\tDChartCoordinate,\n\tDChartCoordinateOptions,\n\tDThemeChartCoordinate\n} from \"./d-chart-coordinate\";\nimport { DChartCoordinateContainerSub } from \"./d-chart-coordinate-container-sub\";\nimport { DChartCoordinateDirection } from \"./d-chart-coordinate-direction\";\nimport { DChartCoordinateTick, DChartCoordinateTickOptions } from \"./d-chart-coordinate-tick\";\nimport { DChartCoordinateTickMajorStepFunction } from \"./d-chart-coordinate-tick-major-step-function\";\nimport { DChartCoordinateTickMinorStepFunction } from \"./d-chart-coordinate-tick-minor-step-function\";\nimport {\n\tDChartCoordinateTransform,\n\tDChartCoordinateTransformOptions\n} from \"./d-chart-coordinate-transform\";\nimport { DChartCoordinateTransformImpl } from \"./d-chart-coordinate-transform-impl\";\nimport {\n\tDChartCoordinateTransformMark,\n\tDChartCoordinateTransformMarkImpl\n} from \"./d-chart-coordinate-transform-mark\";\nimport { DChartPlotArea } from \"./d-chart-plot-area\";\nimport { DChartRegion } from \"./d-chart-region\";\nimport { DChartRegionImpl } from \"./d-chart-region-impl\";\nimport { DThemes } from \"./theme/d-themes\";\nimport { isNaN } from \"./util/is-nan\";\n\nexport abstract class DChartCoordinateBase<CHART extends DBase = DBase>\n\timplements DChartCoordinate<CHART>\n{\n\tprotected _id: number;\n\tprotected _transform: DChartCoordinateTransform<CHART>;\n\tprotected _container?: DChartCoordinateContainerSub<CHART>;\n\tprotected _direction: DChartCoordinateDirection;\n\tprotected _theme: DThemeChartCoordinate;\n\tprotected _work: DChartRegionImpl;\n\tprotected _tick: DChartCoordinateTick<CHART>;\n\tprotected _mark: DChartCoordinateTransformMark;\n\tprotected _from?: number;\n\tprotected _to?: number;\n\n\tconstructor(options?: DChartCoordinateOptions) {\n\t\tthis._id = 0;\n\t\tthis._direction = DChartCoordinateDirection.X;\n\t\tthis._theme = this.toTheme(options);\n\t\tthis._transform = this.newTransform(options?.transform);\n\t\tthis._tick = this.newTick(options?.tick);\n\t\tthis._work = this.newRegion();\n\t\tthis._mark = this.newMark();\n\t\tthis._from = options?.from;\n\t\tthis._to = options?.to;\n\t}\n\n\tprotected newTransform(\n\t\toptions?: DChartCoordinateTransformOptions\n\t): DChartCoordinateTransform<CHART> {\n\t\treturn new DChartCoordinateTransformImpl(options);\n\t}\n\n\tprotected abstract newTick(options?: DChartCoordinateTickOptions): DChartCoordinateTick<CHART>;\n\n\tprotected newRegion(): DChartRegion {\n\t\treturn new DChartRegionImpl(NaN, NaN);\n\t}\n\n\tprotected newMark(): DChartCoordinateTransformMark {\n\t\treturn new DChartCoordinateTransformMarkImpl();\n\t}\n\n\tget from(): number | undefined {\n\t\treturn this._from;\n\t}\n\n\tset from(from: number | undefined) {\n\t\tthis._from = from;\n\t}\n\n\tget to(): number | undefined {\n\t\treturn this._to;\n\t}\n\n\tset to(to: number | undefined) {\n\t\tthis._to = to;\n\t}\n\n\tbind(\n\t\tcontainer: DChartCoordinateContainerSub<CHART>,\n\t\tdirection: DChartCoordinateDirection\n\t): void {\n\t\tthis._container = container;\n\t\tthis._direction = direction;\n\t\tthis._transform.bind(container, direction);\n\t}\n\n\tunbind(): void {\n\t\tthis._container = undefined;\n\t\tthis._transform.unbind();\n\t}\n\n\tfit(from?: number, to?: number): void {\n\t\tthis.doFit(from, to, this._transform);\n\t}\n\n\tmark(from?: number, to?: number): void {\n\t\tconst mark = this._mark;\n\t\tconst transform = this._transform;\n\t\tmark.oldTranslate = transform.translate;\n\t\tmark.oldScale = transform.scale;\n\t\tthis.doFit(from, to, mark);\n\t}\n\n\tblend(ratio: number): void {\n\t\tthis._transform.blend(ratio, this._mark);\n\t}\n\n\tprotected doFit(\n\t\tfrom: number | undefined,\n\t\tto: number | undefined,\n\t\tresult: DChartCoordinateTransformMark | DChartCoordinateTransform<CHART>\n\t): void {\n\t\tconst container = this._container;\n\t\tif (container) {\n\t\t\tconst plotArea = container.container.plotArea;\n\t\t\tconst work = this._work;\n\t\t\tswitch (this._direction) {\n\t\t\t\tcase DChartCoordinateDirection.X:\n\t\t\t\t\tthis.getPixelDomain(plotArea, work);\n\t\t\t\t\tthis.doFit_(\n\t\t\t\t\t\twork.from,\n\t\t\t\t\t\twork.to,\n\t\t\t\t\t\tthis.toFitDomain(from, to, plotArea, work),\n\t\t\t\t\t\tresult\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t\tcase DChartCoordinateDirection.Y:\n\t\t\t\t\tthis.getPixelRange(plotArea, work);\n\t\t\t\t\tthis.doFit_(\n\t\t\t\t\t\twork.from,\n\t\t\t\t\t\twork.to,\n\t\t\t\t\t\tthis.toFitRange(from, to, plotArea, work),\n\t\t\t\t\t\tresult\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected getPixelDomain(plotArea: DChartPlotArea<CHART>, result: DChartRegion): DChartRegion {\n\t\tconst padding = plotArea.padding;\n\t\treturn result.set(padding.getLeft(), plotArea.width - padding.getRight());\n\t}\n\n\tprotected getPixelRange(plotArea: DChartPlotArea<CHART>, result: DChartRegion): DChartRegion {\n\t\tconst padding = plotArea.padding;\n\t\treturn result.set(plotArea.height - padding.getBottom(), padding.getTop());\n\t}\n\n\tprotected toFitDomain(\n\t\tfrom: number | undefined,\n\t\tto: number | undefined,\n\t\tplotArea: DChartPlotArea<CHART>,\n\t\tresult: DChartRegion\n\t): DChartRegion {\n\t\tif (from == null) {\n\t\t\tfrom = this._from;\n\t\t}\n\t\tif (to == null) {\n\t\t\tto = this._to;\n\t\t}\n\t\tif (from != null && to != null) {\n\t\t\tresult.set(from, to);\n\t\t} else {\n\t\t\tplotArea.series.getDomain(this, result);\n\t\t\tresult.set(from, to);\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected toFitRange(\n\t\tfrom: number | undefined,\n\t\tto: number | undefined,\n\t\tplotArea: DChartPlotArea<CHART>,\n\t\tresult: DChartRegion\n\t): DChartRegion {\n\t\tif (from == null) {\n\t\t\tfrom = this._from;\n\t\t}\n\t\tif (to == null) {\n\t\t\tto = this._to;\n\t\t}\n\t\tif (from != null && to != null) {\n\t\t\tresult.set(from, to);\n\t\t} else {\n\t\t\tplotArea.series.getRange(this, result);\n\t\t\tresult.set(from, to);\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected doFit_(\n\t\tpixelFrom: number,\n\t\tpixelTo: number,\n\t\tregion: DChartRegion,\n\t\tresult: DChartCoordinateTransformMark | DChartCoordinateTransform<CHART>\n\t): void {\n\t\tconst regionFrom = region.from;\n\t\tconst regionTo = region.to;\n\t\tif (!(isNaN(regionFrom) || isNaN(regionTo))) {\n\t\t\t// Scale\n\t\t\tlet newScale = 1;\n\t\t\tconst regionFromMapped = this.map(regionFrom);\n\t\t\tconst regionToMapped = this.map(regionTo);\n\t\t\tconst regionSizeMapped = regionToMapped - regionFromMapped;\n\t\t\tif (!this._theme.isZero(regionSizeMapped)) {\n\t\t\t\tconst pixelSize = pixelTo - pixelFrom;\n\t\t\t\tnewScale = pixelSize / regionSizeMapped;\n\t\t\t} else {\n\t\t\t\tnewScale = pixelTo < pixelFrom ? -1 : 1;\n\t\t\t}\n\n\t\t\t// Translation\n\t\t\tconst newTranslation = pixelFrom - regionFromMapped * newScale;\n\n\t\t\t// Done\n\t\t\tresult.set(newTranslation, newScale);\n\t\t}\n\t}\n\n\tget id(): number {\n\t\treturn this._id;\n\t}\n\n\tget transform(): DChartCoordinateTransform<CHART> {\n\t\treturn this._transform;\n\t}\n\n\tmap(value: number): number {\n\t\treturn value;\n\t}\n\n\tmapAll(values: number[], ifrom: number, iend: number, stride: number, offset: number): void {\n\t\t// DO NOTHING\n\t}\n\n\tunmap(value: number): number {\n\t\treturn value;\n\t}\n\n\tunmapAll(values: number[], ifrom: number, iend: number, stride: number, offset: number): void {\n\t\t// DO NOTHING\n\t}\n\n\tticks(\n\t\tdomainFrom: number,\n\t\tdomainTo: number,\n\t\tdomainVisibleFrom: number,\n\t\tdomainVisibleTo: number,\n\t\tmajorCount: number,\n\t\tmajorCapacity: number,\n\t\tmajorStep: number | DChartCoordinateTickMajorStepFunction | undefined,\n\t\tminorCountPerMajor: number,\n\t\tminorCount: number,\n\t\tminorStep: number | DChartCoordinateTickMinorStepFunction | undefined,\n\t\tmajorResult: number[],\n\t\tminorResult: number[]\n\t): void {\n\t\tthis._tick.calculate(\n\t\t\tdomainFrom,\n\t\t\tdomainTo,\n\t\t\tdomainVisibleFrom,\n\t\t\tdomainVisibleTo,\n\t\t\tmajorCount,\n\t\t\tmajorCapacity,\n\t\t\tmajorStep,\n\t\t\tminorCountPerMajor,\n\t\t\tminorCount,\n\t\t\tminorStep,\n\t\t\tmajorResult,\n\t\t\tminorResult,\n\t\t\tthis\n\t\t);\n\t}\n\n\tprotected toTheme(options?: DChartCoordinateOptions): DThemeChartCoordinate {\n\t\treturn options?.theme ?? this.getThemeDefault();\n\t}\n\n\tprotected getThemeDefault(): DThemeChartCoordinate {\n\t\treturn DThemes.getInstance().get(this.getType());\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DChartCoordinate\";\n\t}\n}\n"]}
|
|
@@ -47,65 +47,63 @@ var DChartCoordinateLinearTick = /** @class */ (function () {
|
|
|
47
47
|
}
|
|
48
48
|
}
|
|
49
49
|
};
|
|
50
|
-
DChartCoordinateLinearTick.prototype.calculate = function (domainFrom, domainTo, majorCount, majorCapacity, majorStep, minorCountPerMajor, minorCount, minorStep, majorResult, minorResult, coordinate) {
|
|
50
|
+
DChartCoordinateLinearTick.prototype.calculate = function (domainFrom, domainTo, domainVisibleFrom, domainVisibleTo, majorCount, majorCapacity, majorStep, minorCountPerMajor, minorCount, minorStep, majorResult, minorResult, coordinate) {
|
|
51
51
|
if (majorCount <= 0) {
|
|
52
52
|
return;
|
|
53
53
|
}
|
|
54
54
|
var transform = coordinate.transform;
|
|
55
55
|
var domainMin = Math.min(domainFrom, domainTo);
|
|
56
56
|
var domainMax = Math.max(domainFrom, domainTo);
|
|
57
|
-
var
|
|
57
|
+
var domainVisibleMin = Math.min(domainVisibleFrom, domainVisibleTo);
|
|
58
|
+
var domainVisibleMax = Math.max(domainVisibleFrom, domainVisibleTo);
|
|
59
|
+
var domainVisibleMinMapped = coordinate.map(domainVisibleMin);
|
|
60
|
+
var domainVisibleMaxMapped = coordinate.map(domainVisibleMax);
|
|
61
|
+
var from0 = Math.min(domainVisibleMinMapped, domainVisibleMaxMapped);
|
|
62
|
+
var to0 = Math.max(domainVisibleMinMapped, domainVisibleMaxMapped);
|
|
63
|
+
var domainMinMapped = coordinate.map(domainMin);
|
|
64
|
+
var domainMaxMapped = coordinate.map(domainMax);
|
|
65
|
+
var from1 = Math.min(domainMinMapped, domainMaxMapped);
|
|
66
|
+
var to1 = Math.max(domainMinMapped, domainMaxMapped);
|
|
67
|
+
var from = Math.max(from0, from1);
|
|
68
|
+
var to = Math.min(to0, to1);
|
|
69
|
+
var imajor = 0;
|
|
70
|
+
var iminor = 0;
|
|
71
|
+
var majorStepMapped = this.toMajorStep(domainMinMapped, domainMaxMapped, majorCount, majorStep);
|
|
58
72
|
if (majorStepMapped <= 0) {
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
majorResult[imajorResult + 0] = NaN;
|
|
65
|
-
majorResult[imajorResult + 1] = NaN;
|
|
66
|
-
majorResult[imajorResult + 2] = NaN;
|
|
67
|
-
}
|
|
68
|
-
for (var i = 0; i < minorCount; ++i) {
|
|
69
|
-
var iminorResult = i * 3;
|
|
70
|
-
minorResult[iminorResult + 0] = NaN;
|
|
71
|
-
minorResult[iminorResult + 1] = NaN;
|
|
72
|
-
minorResult[iminorResult + 2] = NaN;
|
|
73
|
+
if (from <= domainMinMapped && domainMinMapped <= to) {
|
|
74
|
+
majorResult[0] = domainMin;
|
|
75
|
+
majorResult[1] = transform.map(domainMinMapped);
|
|
76
|
+
majorResult[2] = 0;
|
|
77
|
+
imajor += 1;
|
|
73
78
|
}
|
|
74
|
-
return;
|
|
75
79
|
}
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
var imajorResult = imajor * 3;
|
|
93
|
-
majorResult[imajorResult + 0] = majorPosition;
|
|
94
|
-
majorResult[imajorResult + 1] = majorPositionMapped;
|
|
95
|
-
majorResult[imajorResult + 2] = majorStepMapped;
|
|
96
|
-
imajor += 1;
|
|
80
|
+
else {
|
|
81
|
+
// Major tick start position
|
|
82
|
+
var idomainStartMapped = Math.floor(domainMinMapped / majorStepMapped) - 1;
|
|
83
|
+
var idomainEndMapped = Math.ceil(domainMaxMapped / majorStepMapped) + 1;
|
|
84
|
+
// Major / minor tick positions
|
|
85
|
+
var minorStepMapped = this.toMinorStep(majorStepMapped, minorCountPerMajor, minorStep);
|
|
86
|
+
for (var i = idomainStartMapped; i <= idomainEndMapped; ++i) {
|
|
87
|
+
var majorPositionMapped = i * majorStepMapped;
|
|
88
|
+
if (imajor < majorCapacity) {
|
|
89
|
+
if (from <= majorPositionMapped && majorPositionMapped <= to) {
|
|
90
|
+
var imajorResult = imajor * 3;
|
|
91
|
+
majorResult[imajorResult + 0] = coordinate.unmap(majorPositionMapped);
|
|
92
|
+
majorResult[imajorResult + 1] = transform.map(majorPositionMapped);
|
|
93
|
+
majorResult[imajorResult + 2] = majorStepMapped;
|
|
94
|
+
imajor += 1;
|
|
95
|
+
}
|
|
97
96
|
}
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
iminor += 1;
|
|
97
|
+
for (var j = 0; j < minorCountPerMajor; j += 1) {
|
|
98
|
+
if (iminor < minorCount) {
|
|
99
|
+
var minorPositionMapped = majorPositionMapped + (j + 1) * minorStepMapped;
|
|
100
|
+
if (from <= minorPositionMapped && minorPositionMapped <= to) {
|
|
101
|
+
var iminorResult = iminor * 3;
|
|
102
|
+
minorResult[iminorResult + 0] = coordinate.unmap(minorPositionMapped);
|
|
103
|
+
minorResult[iminorResult + 1] = transform.map(minorPositionMapped);
|
|
104
|
+
minorResult[iminorResult + 2] = minorStepMapped;
|
|
105
|
+
iminor += 1;
|
|
106
|
+
}
|
|
109
107
|
}
|
|
110
108
|
}
|
|
111
109
|
}
|