@visactor/vrender-core
Version:
## Description
51 lines (50 loc) • 2.14 kB
TypeScript
import { type IAABBBounds } from '@visactor/vutils';
import type { ICircle, ICircleGraphicAttribute } from '../interface/graphic/circle';
import { Graphic } from './graphic';
import { CustomPath2D } from '../common/custom-path2d';
export declare class Circle extends Graphic<ICircleGraphicAttribute> implements ICircle {
type: 'circle';
static NOWORK_ANIMATE_ATTR: {
strokeSeg: number;
boundsPadding: number;
pickMode: number;
boundsMode: number;
customPickShape: number;
pickable: number;
childrenPickable: number;
visible: number;
zIndex: number;
layout: number;
keepDirIn3d: number;
globalZIndex: number;
outerBorder: number;
innerBorder: number;
lineDash: number;
lineCap: number;
lineJoin: number;
miterLimit: number;
strokeBoundsBuffer: number;
scaleCenter: number;
anchor: number;
anchor3d: number;
postMatrix: number;
backgroundMode: number;
background: number;
texture: number;
cursor: number;
html: number;
};
constructor(params?: ICircleGraphicAttribute);
isValid(): boolean;
private _isValid;
getGraphicTheme(): Required<ICircleGraphicAttribute>;
protected updateAABBBounds(attribute: ICircleGraphicAttribute, circleTheme: Required<ICircleGraphicAttribute>, aabbBounds: IAABBBounds, full?: boolean): import("@visactor/vutils").IBounds;
protected updateCircleAABBBoundsImprecise(attribute: ICircleGraphicAttribute, circleTheme: Required<ICircleGraphicAttribute>, aabbBounds: IAABBBounds): IAABBBounds;
protected updateCircleAABBBoundsAccurate(attribute: ICircleGraphicAttribute, circleTheme: Required<ICircleGraphicAttribute>, aabbBounds: IAABBBounds): IAABBBounds;
protected needUpdateTags(keys: string[]): boolean;
protected needUpdateTag(key: string): boolean;
toCustomPath(): CustomPath2D;
clone(): Circle;
getNoWorkAnimateAttr(): Record<string, number>;
}
export declare function createCircle(attributes: ICircleGraphicAttribute): ICircle;