@dp_unity/dpu-gis-viewer
Version:
DPU GIS Viewer version Beta
132 lines (130 loc) • 6.28 kB
TypeScript
import { TileModel } from "./class/tileModel";
import { InputIsolate, InputSetColor } from "./class/styleElement";
import { ToolbarOptions } from "./interfaces/toolBar.interface";
import { IDPUViewer } from "./interfaces/dpuViewer.interface";
import { IInputObjs3DTile } from "./interfaces/sceneManager.interface";
import { TaskColorByObj } from "./interfaces/styleElement.interface";
import { IViewSave } from "./services/utilsView";
import { ExtentionToolBar, IOptionExtension } from "./services/extensionToolbar";
import { IInputSetMap, IObjInputMap } from "./interfaces/map.interface";
export declare class DPUViewer implements IDPUViewer {
viewer: any;
private _containerId;
private _token;
private _treeTileModel?;
private _flyLocation?;
private _contextMenu?;
private _mapWeather?;
private _labelPoint?;
private _dataProperties?;
private _flyCamera?;
private _footerView?;
private _compass?;
private _sceneManager?;
private _inputObjectPrimtive?;
private _createToolBar?;
optionToolbar?: ToolbarOptions;
private _treeViews;
constructor(containerId: string, token: string, inputOptionToolbar?: ToolbarOptions);
/**
* Hàm khởi tạo view Cesium
*/
private _initCesiumViewer;
/**
* Hàm set Dark/Light theme cho viewer
* @param {boolean} dark true: dark theme, false: light theme
*/
setDarkTheme: (dark: boolean) => void;
/**
* Hàm hủy view
*/
destroyView: () => void;
setLocationHome: (longitude: number, latitude: number, height: number) => void;
/**
* Hàm xử lý hành động bay đến vị trí công trường
*/
flyToHomeLocation: () => Promise<void>;
/**
* Hàm bay đến vị trí mong muốn riêng
* @param {number} longitude kinh độ
* @param {number} latitude vĩ độ
* @param {number} height độ cao
* @param {number} duration thời gian bay
*/
flyToLocation: (longitude: number, latitude: number, height?: number, duration?: number) => void;
/**
* Tải không đồng bộ một 3D tile từ URL được chỉ định và tạo một `TileModel` tương ứng. *
* @param url - URL của 3D tile cần tải.
* @param name - (Tùy chọn) Tên của tile. Nếu không được cung cấp, một UUID sẽ được tạo.
* @param urlConnect - (Tùy chọn) URL để kết nối thêm dữ liệu đối tượng đầu vào.
* @param inputObjs - (Tùy chọn) Các đối tượng đầu vào bổ sung cho 3D tile.
*
* @returns Một promise trả về một `TileModel` nếu tile được tải thành công, hoặc `undefined` nếu tải thất bại.
*/
load3DTileUrl: (url: string, name?: string, urlConnect?: string, inputObjs?: IInputObjs3DTile) => Promise<TileModel | undefined>;
private queue;
private enqueue;
loadTree3DTileUrl: (url: string, obj?: any) => Promise<TileModel[]>;
private sortList;
private arrange;
getModelTreeUrl: (url: string, maximumScreen?: number) => Promise<TileModel[]>;
private _flattenFolderTree;
/**
* Hàm load file KMZ từ URL
* @param {string} url URL của file KMZ cần tải.
* @param {string} name Tên của file KMZ để hiển thị trong TreeView.
* @returns {Promise<TileModel>} Trả về đối tượng `TileModel` mới được tạo sau khi tải xong file KMZ.
*/
loadKMZ: (url: string, name: string, inputObjs?: IInputObjs3DTile) => Promise<TileModel | undefined>;
/**
* Hàm tải không đồng bộ một 3D tile theo ID và thêm vào TreeView.
*
* @param id - ID duy nhất của 3D tile cần tải.
* @param name - (Tùy chọn) Tên được gán cho tile đã tải. Nếu không cung cấp, sẽ tạo UUID.
* @param urlConnect - (Tùy chọn) URL kết nối để tải thêm dữ liệu.
* @param inputObjs - (Tùy chọn) Các tham số đầu vào bổ sung để tải 3D tile.
*
* @returns Một promise trả về một đối tượng `TileModel` đại diện cho 3D tile đã tải,
* hoặc `undefined` nếu không tải được.
*/
load3DTileById: (id: string, name?: string, urlConnect?: string, inputObjs?: IInputObjs3DTile) => Promise<TileModel | undefined>;
/**
* Hàm tải và hiển thị đường đi camera từ file KMZ
* @param {string} url URL của file KMZ chứa dữ liệu đường đi camera.
* @param {string} [name] Tên của camera hoặc dữ liệu đường đi (tùy chọn).
*/
loadPathCameraKMZ: (url: string, name?: string) => void;
/**
* Hàm tạo các label point từ URL
* @param {string} url URL của file chứa dữ liệu label point.
*/
loadLabelPointFromUrl: (url: string) => void;
/**
* Hàm Zoom đến Tile
* @param {any} tile Tile để zoom tới
*/
zoomToTile: (tile: any) => void;
setColor: (inputObjs: InputSetColor[]) => Promise<void>;
resetDefaultColor: () => void;
resetAllDefaultColor: () => Promise<void>;
resetAllColor: () => Promise<void>;
setColorByTask: (completeObj: TaskColorByObj, inProgressObj: TaskColorByObj, reColor?: [number, number, number, number] | string) => Promise<void>;
isolateObjs: (inputObjs: InputIsolate[]) => Promise<void>;
resetAllDefaultIsolate: () => void;
resetDefaultIsolate: () => Promise<void>;
resetAllIsolate: () => Promise<void>;
clearObjDataPrimitive: () => Promise<void>;
zoomToObjects: (inputObjs: any[]) => Promise<void>;
/**
* Hàm trả về danh sách File Name và danh sách GuidId của các đối tượng được chọn
*/
getObjectIdsBySelect: () => any[] | undefined;
saveViewCamera: () => IViewSave;
loadViewCamera(viewSave: IViewSave): void;
createExtentionToolBar: (callback: (data: any) => void, option: IOptionExtension) => ExtentionToolBar;
flyToVietNam: () => void;
getOptionMap: () => IObjInputMap;
setOptionMap: (objMap: IObjInputMap) => void;
setInputMap: (inputMap: IInputSetMap) => void;
issuePoint: (callback?: (data: any) => void) => import("./services/issuePoint/issuePoint").IssuePoint | undefined;
}