editor-render-v2
Version:
编辑器渲染器
93 lines (92 loc) • 1.92 kB
TypeScript
import Handler from './Handler';
import { fabric } from 'fabric';
type IFigure = fabric.Polygon | fabric.Circle | fabric.Triangle | fabric.Ellipse | fabric.Rect | fabric.Line;
interface IDefaultOption {
perPixelTargetFind: boolean;
strokeUniform: boolean;
originX: string;
originY: string;
}
/**
* 图形
*/
declare class FigureHandler {
/** @ignore */
handler: Handler;
/** @ignore */
defaultOption: IDefaultOption;
/** @ignore */
defaultCoefficient: number;
/** @ignore */
constructor(handler: Handler);
/**
* 创建图形
* @param type 创建的图形类型
*/
create(type: string): void;
/**
* 获取对应类型的图形
* @param type 类型
* @returns 图形
*/
getFigure(type: string): IFigure;
/**
* 创建对应的图形
* @param type 图形的类型
*/
createFigure(type: string): IFigure;
/**
* 创建箭头图形
*/
private createArrow;
/**
* 创建五角星图形
*/
private createPentagram;
/**
* 创建多边形
*/
private createPolygon;
/**
* 创建圆形
*/
private createCircle;
/**
* 创建三角形
*/
private createTriangle;
/**
* 创建椭圆
*/
private createEllipse;
/**
* 创建矩形
*/
private createRect;
/**
* 创建梯形
*/
private createTrapezoid;
private computeTrapezoidPoint;
/**
* 创建棱形
*/
private createRhombus;
/**
* 创建直线
*/
private createLine;
/**
* 初始化多边形
* @param point 绘制的多边形点
* @param option 绘制多边形的配置
* @returns
*/
private initPolygon;
/**
* 获取画布的最小尺寸
* @returns 最小尺寸
*/
private getWorkareaMinSize;
}
export default FigureHandler;