@visactor/vrender-core
Version:
## Description
52 lines (51 loc) • 2.16 kB
TypeScript
import type { IAABBBounds } from '@visactor/vutils';
import { Graphic } from './graphic';
import type { IPolygon, IPolygonGraphicAttribute } from '../interface/graphic/polygon';
import { CustomPath2D } from '../common/custom-path2d';
import type { GraphicType } from '../interface';
export declare class Polygon extends Graphic<IPolygonGraphicAttribute> implements IPolygon {
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;
};
constructor(params: IPolygonGraphicAttribute);
isValid(): boolean;
protected _isValid(): boolean;
getGraphicTheme(): Required<IPolygonGraphicAttribute>;
protected updateAABBBounds(attribute: IPolygonGraphicAttribute, polygonTheme: Required<IPolygonGraphicAttribute>, aabbBounds: IAABBBounds): import("@visactor/vutils").IBounds;
protected updatePolygonAABBBoundsImprecise(attribute: IPolygonGraphicAttribute, polygonTheme: Required<IPolygonGraphicAttribute>, aabbBounds: IAABBBounds): IAABBBounds;
protected _interpolate(key: string, ratio: number, lastStepVal: any, nextStepVal: any, nextAttributes: any): void;
protected needUpdateTags(keys: string[]): boolean;
protected needUpdateTag(key: string): boolean;
toCustomPath(): CustomPath2D;
clone(): Polygon;
getNoWorkAnimateAttr(): Record<string, number>;
}
export declare function createPolygon(attributes: IPolygonGraphicAttribute): IPolygon;