1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- import { AbstractShape } from '@antv/g-base';
- import { ShapeAttrs, ChangeType, BBox } from '@antv/g-base';
- import { IShape } from '../interfaces';
- import Defs from '../defs';
- import * as Shape from './index';
- import Group from '../group';
- declare class ShapeBase extends AbstractShape implements IShape {
- type: string;
- canFill: boolean;
- canStroke: boolean;
- getDefaultAttrs(): {
- lineWidth: number;
- lineAppendWidth: number;
- strokeOpacity: number;
- fillOpacity: number;
- matrix: any;
- opacity: number;
- };
- afterAttrsChange(targetAttrs: ShapeAttrs): void;
- getShapeBase(): typeof Shape;
- getGroupBase(): typeof Group;
- /**
- * 一些方法调用会引起画布变化
- * @param {ChangeType} changeType 改变的类型
- */
- onCanvasChange(changeType: ChangeType): void;
- calculateBBox(): BBox;
- isFill(): boolean;
- isStroke(): boolean;
- draw(context: any, targetAttrs: any): void;
- /**
- * @protected
- * 绘制图形的路径
- * @param {Defs} context 上下文
- * @param {ShapeAttrs} targetAttrs 渲染的目标属性
- */
- createPath(context: Defs, targetAttrs?: ShapeAttrs): void;
- strokeAndFill(context: any, targetAttrs?: any): void;
- _setColor(context: any, attr: any, value: any): void;
- shadow(context: any, targetAttrs?: any): void;
- transform(targetAttrs?: any): void;
- isInShape(refX: number, refY: number): boolean;
- isPointInPath(refX: number, refY: number): boolean;
- /**
- * 获取线拾取的宽度
- * @returns {number} 线的拾取宽度
- */
- getHitLineWidth(): any;
- }
- export default ShapeBase;
|