indicator.js 1.1 KB

123456789101112131415161718192021222324252627282930
  1. import { __assign } from "tslib";
  2. import { registerShape } from '@antv/g2';
  3. // 自定义Shape 部分
  4. registerShape('point', 'gauge-indicator', {
  5. draw: function (cfg, container) {
  6. // 使用 customInfo 传递参数
  7. var _a = cfg.customInfo, indicator = _a.indicator, defaultColor = _a.defaultColor;
  8. var _b = indicator, pointer = _b.pointer, pin = _b.pin;
  9. var group = container.addGroup();
  10. // 获取极坐标系下画布中心点
  11. var center = this.parsePoint({ x: 0, y: 0 });
  12. // 绘制指针
  13. if (pointer) {
  14. // pointer
  15. group.addShape('line', {
  16. name: 'pointer',
  17. attrs: __assign({ x1: center.x, y1: center.y, x2: cfg.x, y2: cfg.y, stroke: defaultColor }, pointer.style),
  18. });
  19. }
  20. // pin
  21. if (pin) {
  22. group.addShape('circle', {
  23. name: 'pin',
  24. attrs: __assign({ x: center.x, y: center.y, stroke: defaultColor }, pin.style),
  25. });
  26. }
  27. return group;
  28. },
  29. });
  30. //# sourceMappingURL=indicator.js.map