@visactor/vrender-core
Version:
```typescript import { xxx } from '@visactor/vrender-core'; ```
44 lines (43 loc) • 2.7 kB
TypeScript
import type { IContext2d, MaybePromise, IGraphic, IGroup, IDrawContext, IRenderService, IGraphicRender, IGraphicRenderDrawParams, IContributionProvider, IDrawItemInterceptorContribution, IDrawContribution, IGlobal } from '../../../interface';
import { type IBounds, type IMatrix } from '@visactor/vutils';
import type { ILayerService } from '../../../interface/core';
import type { IRendererRegistry } from '../../../registry';
interface IDrawContributionDeps {
rendererRegistry?: IRendererRegistry;
drawItemInterceptorContributions?: IContributionProvider<IDrawItemInterceptorContribution>;
global?: IGlobal;
layerService?: ILayerService;
}
export declare class DefaultDrawContribution implements IDrawContribution {
protected contributions: IGraphicRender[];
protected drawItemInterceptorContributions: IContributionProvider<IDrawItemInterceptorContribution>;
currentRenderMap: Map<number, IGraphicRender>;
defaultRenderMap: Map<number, IGraphicRender>;
styleRenderMap: Map<string, Map<number, IGraphicRender>>;
dirtyBounds: IBounds;
backupDirtyBounds: IBounds;
useDirtyBounds: boolean;
currentRenderService: IRenderService;
InterceptorContributions: IDrawItemInterceptorContribution[];
global: IGlobal;
layerService: ILayerService;
scrollMatrix?: IMatrix;
protected readonly rendererRegistry?: IRendererRegistry;
constructor(contributions?: IGraphicRender[], drawItemInterceptorContributions?: IContributionProvider<IDrawItemInterceptorContribution>, deps?: IDrawContributionDeps);
reInit(): void;
init(): void;
prepareForDraw(renderService: IRenderService, drawContext: IDrawContext): void;
draw(renderService: IRenderService, drawContext: IDrawContext): MaybePromise<void>;
doRegister(): void;
protected _findNextGraphic(group: IGroup): IGraphic | null;
renderGroup(group: IGroup, drawContext: IDrawContext, parentMatrix: IMatrix, skipSort?: boolean): void;
_renderInGroup: (skipSort: boolean, group: IGroup, drawContext: IDrawContext, nextM: IMatrix) => void;
protected _increaseRender(group: IGroup, drawContext: IDrawContext): void;
getRenderContribution(graphic: IGraphic): IGraphicRender | null;
renderItem(graphic: IGraphic, drawContext: IDrawContext, params?: IGraphicRenderDrawParams): void;
protected selectRenderByType(type?: string): IGraphicRender | null;
protected selectRenderByNumberType(type: number, graphic: IGraphic): IGraphicRender | null;
protected clearScreen(renderService: IRenderService, context: IContext2d, drawContext: IDrawContext): void;
afterDraw(renderService: IRenderService, drawParams: IDrawContext): void;
}
export {};