import { Material, Matrix3, Matrix4, Object3D, Line as TLine, Vector3 } from "three";
import { ObjectSnapMode } from "../../Editor/ObjectSnapMode";
import { RenderType } from "../../GraphicsSystem/RenderType";
import { CADFiler } from "../CADFiler";
import { Arc } from "../Entity/Arc";
import { Line } from "../Entity/Line";
import { Dimension } from "./Dimension";
/**
 * 两条直线的角度标注
 */
export declare class LineAngularDimension extends Dimension {
    protected _L1StartPoint: Vector3;
    protected _L1EndPoint: Vector3;
    protected _L2StartPoint: Vector3;
    protected _L2EndPoint: Vector3;
    protected _DimPoint: Vector3;
    private _Arc;
    constructor(_L1StartPoint?: Vector3, //第一条直线的起点
    _L1EndPoint?: Vector3, //第一条直线的终点
    _L2StartPoint?: Vector3, //第二条直线的起点
    _L2EndPoint?: Vector3, _DimPoint?: Vector3);
    get FractionDigits(): number;
    set FractionDigits(length: number);
    protected GetPrimitiveString(): string;
    UpdateDimData(l1sp: Vector3, l1ep: Vector3, l2sp: Vector3, l2ep: Vector3, dimp: Vector3): void;
    get Text(): import("../Text/Text").Text;
    get L1StartPoint(): Vector3;
    get L2StartPoint(): Vector3;
    get L1EndPoint(): Vector3;
    get L2EndPoint(): Vector3;
    get DimPoint(): Vector3;
    get Arc(): Arc;
    GetGripPoints(): Array<Vector3>;
    MoveGripPoints(indexList: number[], vec: Vector3): void;
    GetStretchPoints(): Array<Vector3>;
    MoveStretchPoints(indexList: Array<number>, vec: Vector3): void;
    Clone(): this;
    Explode(): (import("../Text/Text").Text | Arc)[];
    GetObjectSnapPoints(snapMode: ObjectSnapMode, pickPoint: Vector3, lastPoint: Vector3, viewXform?: Matrix3): Vector3[];
    InitDrawObject(renderType?: RenderType): Object3D;
    Update2Line(l1: Line, l2: Line, intPt: Vector3, li1: TLine, li2: TLine): void;
    UpdateDrawObject(renderType: RenderType, obj: Object3D): void;
    UpdateDrawObjectMaterial(type: RenderType, obj: Object3D, material?: Material): void;
    protected ApplyMirrorMatrix(m: Matrix4): this;
    protected _ReadFile(file: CADFiler): void;
    WriteFile(file: CADFiler): void;
}
//# sourceMappingURL=2LineAngularDimension.d.ts.map