| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 |
- "use strict";
- exports.__esModule = true;
- exports["default"] = void 0;
- var _common = require("../../util/common");
- var _abstract = _interopRequireDefault(require("./abstract"));
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
- function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; }
- var Circle = /*#__PURE__*/function (_Abstract) {
- _inheritsLoose(Circle, _Abstract);
- function Circle() {
- return _Abstract.apply(this, arguments) || this;
- }
- var _proto = Circle.prototype;
- _proto._initDefaultCfg = function _initDefaultCfg() {
- _Abstract.prototype._initDefaultCfg.call(this);
- this.startAngle = -Math.PI / 2; // start angle,in radian
- this.endAngle = Math.PI * 3 / 2; // end angle, in radian
- this.radius = null; // radius
- this.center = null; // center
- };
- _proto.getOffsetPoint = function getOffsetPoint(value) {
- var startAngle = this.startAngle,
- endAngle = this.endAngle;
- var angle = startAngle + (endAngle - startAngle) * value;
- return this._getCirclePoint(angle);
- };
- _proto._getCirclePoint = function _getCirclePoint(angle, radius) {
- var self = this;
- var center = self.center;
- radius = radius || self.radius;
- return {
- x: center.x + Math.cos(angle) * radius,
- y: center.y + Math.sin(angle) * radius
- };
- };
- _proto.getTextAlignInfo = function getTextAlignInfo(point, offset) {
- var self = this;
- var offsetVector = self.getOffsetVector(point, offset);
- var align;
- var baseLine = 'middle';
- if (offsetVector[0] > 0) {
- align = 'left';
- } else if (offsetVector[0] < 0) {
- align = 'right';
- } else {
- align = 'center';
- if (offsetVector[1] > 0) {
- baseLine = 'top';
- } else if (offsetVector[1] < 0) {
- baseLine = 'bottom';
- }
- }
- return {
- textAlign: align,
- textBaseline: baseLine
- };
- };
- _proto.getAxisVector = function getAxisVector(point) {
- var center = this.center;
- var factor = this.offsetFactor;
- return [(point.y - center.y) * factor, (point.x - center.x) * -1 * factor];
- };
- _proto.drawLine = function drawLine(lineCfg) {
- var center = this.center,
- radius = this.radius,
- startAngle = this.startAngle,
- endAngle = this.endAngle;
- var container = this.getContainer(lineCfg.top);
- container.addShape('arc', {
- className: 'axis-line',
- attrs: (0, _common.mix)({
- x: center.x,
- y: center.y,
- r: radius,
- startAngle: startAngle,
- endAngle: endAngle
- }, lineCfg)
- });
- };
- return Circle;
- }(_abstract["default"]);
- _abstract["default"].Circle = Circle;
- var _default = Circle;
- exports["default"] = _default;
|