@inweb/markup
Version:
JavaScript 2D markups
85 lines (84 loc) • 2.87 kB
TypeScript
import { IEventEmitter } from "@inweb/eventemitter2";
import { ChangeActiveDraggerEvent, IViewpoint, PanEvent, ZoomAtEvent } from "@inweb/viewer-core";
import { IMarkup, MarkupMode } from "../IMarkup";
import { IWorldTransform } from "../IWorldTransform";
import { IMarkupObject } from "../IMarkupObject";
import { MarkupLineType } from "../IMarkupLine";
/**
* 2D markup core.
*/
export declare class KonvaMarkup implements IMarkup {
private _viewer;
private _worldTransformer;
private _container;
private _containerEvents;
private _markupIsActive;
private _markupMode;
private _markupColor;
private _konvaStage;
private _konvaLayer;
private _konvaTransformer;
private _textInputRef;
private _textInputPos;
private _textInputAngle;
private _imageInputRef;
private _imageInputPos;
private _markupContainer;
private _resizeObserver;
private _groupImages;
private _groupGeometry;
private _groupTexts;
lineWidth: number;
lineType: MarkupLineType;
fontSize: number;
initialize(container: HTMLElement, containerEvents?: string[], viewer?: IEventEmitter, worldTransformer?: IWorldTransform): void;
dispose(): void;
changeActiveDragger: (event: ChangeActiveDraggerEvent) => void;
resizeContainer: (entries: ResizeObserverEntry[]) => void;
pan: (event: PanEvent) => void;
zoomAt: (event: ZoomAtEvent) => void;
redirectToViewer: (event: any) => void;
syncOverlay(): void;
clearOverlay(): void;
getMarkupColor(): {
r: number;
g: number;
b: number;
};
setMarkupColor(r: number, g: number, b: number): void;
colorizeAllMarkup(r: number, g: number, b: number): void;
colorizeSelectedMarkups(r: number, g: number, b: number): void;
setViewpoint(viewpoint: IViewpoint): void;
getViewpoint(viewpoint: IViewpoint): IViewpoint;
enableEditMode(mode: MarkupMode | false): this;
createObject(type: string, params: any): IMarkupObject;
getObjects(): IMarkupObject[];
getSelectedObjects(): IMarkupObject[];
selectObjects(objects: IMarkupObject[]): void;
clearSelected(): void;
private addObject;
private konvaLayerFind;
private getRelativePointPosition;
private getRelativePointerPosition;
private initializeKonva;
private destroyKonva;
private getMarkupLines;
private getMarkupTexts;
private getMarkupRectangles;
private getMarkupEllipses;
private getMarkupArrows;
private getMarkupImages;
private getMarkupClouds;
private combineMarkupWithDrawing;
private addLine;
private createTextInput;
private removeTextInput;
private createImageInput;
private removeImageInput;
private addText;
private addRectangle;
private addEllipse;
private addArrow;
private addCloud;
private addImage;
}