@visactor/vrender-core
Version:
## Description
73 lines (72 loc) • 2.69 kB
TypeScript
import type { IAABBBounds } from '@visactor/vutils';
import type { IArc, IArcGraphicAttribute } from '../interface/graphic/arc';
import { Graphic } from './graphic';
import { CustomPath2D } from '../common/custom-path2d';
import type { GraphicType } from '../interface';
export declare class Arc extends Graphic<IArcGraphicAttribute> implements IArc {
type: GraphicType;
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;
cap: number;
};
constructor(params: IArcGraphicAttribute);
isValid(): boolean;
private _isValid;
getParsedCornerRadius(): number | number[];
getParsedAngle(): {
startAngle: number;
endAngle: number;
sc: number;
ec: number;
} | {
startAngle: number;
endAngle: number;
sc?: undefined;
ec?: undefined;
};
getParsePadAngle(startAngle: number, endAngle: number): {
outerStartAngle: number;
outerEndAngle: number;
innerStartAngle: number;
innerEndAngle: number;
innerDeltaAngle: number;
outerDeltaAngle: number;
};
getGraphicTheme(): Required<IArcGraphicAttribute>;
protected updateAABBBounds(attribute: IArcGraphicAttribute, arcTheme: Required<IArcGraphicAttribute>, aabbBounds: IAABBBounds, full?: boolean): import("@visactor/vutils").IBounds;
protected updateArcAABBBoundsImprecise(attribute: IArcGraphicAttribute, arcTheme: Required<IArcGraphicAttribute>, aabbBounds: IAABBBounds): IAABBBounds;
protected updateArcAABBBoundsAccurate(attribute: IArcGraphicAttribute, arcTheme: Required<IArcGraphicAttribute>, aabbBounds: IAABBBounds): IAABBBounds;
protected needUpdateTags(keys: string[]): boolean;
protected needUpdateTag(key: string): boolean;
toCustomPath(): CustomPath2D;
clone(): Arc;
getNoWorkAnimateAttr(): Record<string, number>;
}
export declare function createArc(attributes: IArcGraphicAttribute): IArc;