| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- "use strict";
- /**
- * @fileoverview marker
- * @author dengfuping_develop@163.com
- */
- Object.defineProperty(exports, "__esModule", { value: true });
- var tslib_1 = require("tslib");
- var util_1 = require("@antv/util");
- var base_1 = require("../base");
- var symbols_1 = require("./symbols");
- var Marker = /** @class */ (function (_super) {
- tslib_1.__extends(Marker, _super);
- function Marker() {
- var _this = _super !== null && _super.apply(this, arguments) || this;
- _this.type = 'marker';
- _this.canFill = true;
- _this.canStroke = true;
- return _this;
- }
- Marker.prototype.createPath = function (context) {
- var el = this.get('el');
- el.setAttribute('d', this._assembleMarker());
- };
- Marker.prototype._assembleMarker = function () {
- var d = this._getPath();
- if (util_1.isArray(d)) {
- return d
- .map(function (path) {
- return path.join(' ');
- })
- .join('');
- }
- return d;
- };
- Marker.prototype._getPath = function () {
- var attrs = this.attr();
- var x = attrs.x, y = attrs.y;
- // 兼容 r 和 radius 两种写法,推荐使用 r
- var r = attrs.r || attrs.radius;
- var symbol = attrs.symbol || 'circle';
- var method;
- if (util_1.isFunction(symbol)) {
- method = symbol;
- }
- else {
- method = symbols_1.default.get(symbol);
- }
- if (!method) {
- console.warn(method + " symbol is not exist.");
- return null;
- }
- return method(x, y, r);
- };
- // 作为其静态属性
- Marker.symbolsFactory = symbols_1.default;
- return Marker;
- }(base_1.default));
- exports.default = Marker;
- //# sourceMappingURL=index.js.map
|