1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- import { __extends } from "tslib";
- import Path from 'zrender/lib/graphic/Path.js';
- var PointerShape = function () {
- function PointerShape() {
- this.angle = 0;
- this.width = 10;
- this.r = 10;
- this.x = 0;
- this.y = 0;
- }
- return PointerShape;
- }();
- var PointerPath = function (_super) {
- __extends(PointerPath, _super);
- function PointerPath(opts) {
- var _this = _super.call(this, opts) || this;
- _this.type = 'pointer';
- return _this;
- }
- PointerPath.prototype.getDefaultShape = function () {
- return new PointerShape();
- };
- PointerPath.prototype.buildPath = function (ctx, shape) {
- var mathCos = Math.cos;
- var mathSin = Math.sin;
- var r = shape.r;
- var width = shape.width;
- var angle = shape.angle;
- var x = shape.x - mathCos(angle) * width * (width >= r / 3 ? 1 : 2);
- var y = shape.y - mathSin(angle) * width * (width >= r / 3 ? 1 : 2);
- angle = shape.angle - Math.PI / 2;
- ctx.moveTo(x, y);
- ctx.lineTo(shape.x + mathCos(angle) * width, shape.y + mathSin(angle) * width);
- ctx.lineTo(shape.x + mathCos(shape.angle) * r, shape.y + mathSin(shape.angle) * r);
- ctx.lineTo(shape.x - mathCos(angle) * width, shape.y - mathSin(angle) * width);
- ctx.lineTo(x, y);
- };
- return PointerPath;
- }(Path);
- export default PointerPath;
|