UNPKG

1.79 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3exports.Point = void 0;
4const band_1 = require("./band");
5/**
6 * Point 比例尺
7 *
8 * 一种特殊的 band scale,它的 bandWidth 恒为 0。
9 *
10 * 由于部分选项较为抽象,见下图描述:
11 *
12 * PO = Padding = PaddingInner
13 * domain = ["A", "B", "C"]
14 *
15 * |<------------------------------------------- range ------------------------------------------->|
16 * | | | | |
17 * |<--step*PO-->|<--------------step------------->|<--------------step------------->|<--step*PO-->|
18 * | | | | |
19 * | A B C |
20 * |-----------------------------------------------------------------------------------------------|
21 *
22 * 性能方便较 d3 快出 8 - 9 倍
23 */
24class Point extends band_1.Band {
25 // 覆盖默认配置
26 getDefaultOptions() {
27 return {
28 domain: [],
29 range: [0, 1],
30 align: 0.5,
31 round: false,
32 padding: 0,
33 unknown: undefined,
34 paddingInner: 1,
35 paddingOuter: 0,
36 };
37 }
38 // 能接受的参数只是 PointOptions,不能有 paddingInner 这些属性
39 constructor(options) {
40 super(options);
41 }
42 getPaddingInner() {
43 return this.options.paddingInner;
44 }
45 clone() {
46 return new Point(this.options);
47 }
48 update(options) {
49 super.update(options);
50 }
51 getPaddingOuter() {
52 return this.options.padding;
53 }
54}
55exports.Point = Point;
56//# sourceMappingURL=point.js.map
\No newline at end of file