import { Matrix4 } from "three";
import { Board } from "../../DatabaseServices/Entity/Board";
import { Polyline } from "../../DatabaseServices/Entity/Polyline";
import { TemplateRecord } from "../../DatabaseServices/Template/TemplateRecord";
import { Command } from "../../Editor/CommandMachine";
import { Rec2BrStore } from "./Rec2BrStore";
export declare class Polyline2Board implements Command {
    store: Rec2BrStore;
    SpaceOCS: Matrix4;
    SpaceOCSInv: Matrix4;
    exec(): Promise<void>;
    boardThick: number;
    boardDepth: number;
    fontDis: number;
    knifeRadius: number;
    grooveLength: number;
    grooveDepth: number;
    grooveWidth: number;
    backLeftExtend: number;
    backRightExtend: number;
    backTopExtend: number;
    backDownExtend: number;
    backBoardThick: number;
    moveBackLen: number;
    moveBackWidth: number;
    backBoardMoveDis: number;
    backIsTemplate: boolean;
    backTemplate: TemplateRecord;
    isUseBoardNameToAttr: boolean;
    isMultiBackCab: boolean;
    maxThickness: number;
    backBrName: string;
    behindIsRelative: boolean;
    footThickness: number;
    stripThickness: number;
    useSktTemplate: boolean;
    leftSktTemplate: TemplateRecord;
    rightSktTemplate: TemplateRecord;
    topSktTemplate: TemplateRecord;
    InitData(store: Rec2BrStore): void;
    Doit(pls: Polyline[]): Promise<void>;
    /**
     *
     * @param pls
     * @param [isBack=false] 背板+背板的子孙们(背板和背板包裹的板)  否则为 层板立板(孤立无援) 收口条
     * @param [color]
     * @returns 板件列表
     */
    DrawBoard(pls: Polyline[], isBack?: boolean, color?: number): Board[];
    IsPolyLineContain(pl1: Polyline, pl2: Polyline): boolean;
    private IsBackBoard;
    private IsFaceBoard;
    /**
     * 解析多段线是不是被旋转了
     * 得到它的盒子和尺寸
     * 如果被旋转了 则有TempData 记录了矩形的信息(或者没有)
     * @param pl
     */
    private ParsePolyline;
    /**
     *  修改异形板高级封边
     */
    private ModifySpecialShapeBoardHighSeals;
    /**
     *  获取异形板延伸后轮廓 采用封边轮廓算法(背板)
     */
    private GetSpecialBoardContour;
}
//# sourceMappingURL=Polyline2Board.d.ts.map