circle.js 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. exports.CircleCrosshair = void 0;
  4. var tslib_1 = require("tslib");
  5. var util_1 = require("../../util");
  6. var symbol_1 = require("../marker/symbol");
  7. var base_1 = require("./base");
  8. var constant_1 = require("./constant");
  9. var CircleCrosshair = /** @class */ (function (_super) {
  10. tslib_1.__extends(CircleCrosshair, _super);
  11. function CircleCrosshair(options) {
  12. return _super.call(this, (0, util_1.deepAssign)({}, CircleCrosshair.defaultOptions, options)) || this;
  13. }
  14. Object.defineProperty(CircleCrosshair.prototype, "crosshairPath", {
  15. get: function () {
  16. return this.createCirclePath();
  17. },
  18. enumerable: false,
  19. configurable: true
  20. });
  21. CircleCrosshair.prototype.update = function (cfg) {
  22. _super.prototype.update.call(this, cfg);
  23. };
  24. CircleCrosshair.prototype.setPointer = function (_a) {
  25. var _b = tslib_1.__read(_a, 2), x = _b[0], y = _b[1];
  26. _super.prototype.setPointer.call(this, [x, y]);
  27. var _c = tslib_1.__read(this.localPointer, 2), lx = _c[0], ly = _c[1];
  28. var _d = tslib_1.__read(this.attributes.center, 2), cx = _d[0], cy = _d[1];
  29. var path = this.createCirclePath(Math.pow((Math.pow((lx - cx), 2) + Math.pow((ly - cy), 2)), 0.5));
  30. this.crosshairShape.attr({ path: path });
  31. };
  32. CircleCrosshair.prototype.adjustLayout = function () {
  33. (0, util_1.hide)(this.tagShape);
  34. };
  35. CircleCrosshair.prototype.createCirclePath = function (radius) {
  36. var _a = this.attributes, _b = tslib_1.__read(_a.center, 2), x = _b[0], y = _b[1], defaultRadius = _a.defaultRadius;
  37. return (0, symbol_1.circle)(x, y, radius || defaultRadius);
  38. };
  39. CircleCrosshair.tag = 'circle-crosshair';
  40. CircleCrosshair.defaultOptions = {
  41. style: constant_1.CIRCLE_CROSSHAIR_DEFAULT_STYLE,
  42. };
  43. return CircleCrosshair;
  44. }(base_1.CrosshairBase));
  45. exports.CircleCrosshair = CircleCrosshair;
  46. //# sourceMappingURL=circle.js.map