import Position from "../position/Position";
import Viewer from "../viewer/Viewer";
export default class CutFill {
    _viewer: Viewer;
    _db: Cesium.CustomDataSource;
    totalFillVolume: number;
    totalCutVolume: number;
    constructor();
    get viewer(): Viewer;
    get db(): Cesium.CustomDataSource;
    /**
     * 计算多边形的重心点, 用于展示label标签
     * @param {*} positions
     */
    computeCentroidOfPolygon(positions: any): Cesium.Cartographic;
    /**
     * 计算方量
     * @param {*} positions 点串
     * @param {*} cutAndFillBaseHeight 填挖高度
     * @param {*} precision 精度，默认64
     */
    computeCutVolume(positions: Position[], cutAndFillHeight?: number, precision?: number): number | false;
    /**
     * 计算三角形的面积
     * @param {*} pos1
     * @param {*} pos2
     * @param {*} pos3
     */
    computeAreaOfTriangle(pos1: any, pos2: any, pos3: any): number;
    clear(): void;
    destroy(): void;
    /**
     *
     * @param viewer
     */
    install(viewer: Viewer): void;
    uninstall(viewer: any): void;
}
