bcgis-type
Version:
The SDK is based on Cesium for secondary development of 2, 3D all-in-one WebGis application framework, the framework optimizes the use of Cesium and add some additional features, designed for developers to quickly build WebGis applications.
78 lines (77 loc) • 2.71 kB
TypeScript
interface ViewShedOptions {
cameraPosition: Cesium.Cartesian3;
/** 视图 */
viewer: Cesium.Viewer;
/** 观测位置 */
viewPosition: Cesium.Cartesian3;
/** 观测方位角 默认为`0`,范围`0~360` */
direction: number;
/** 俯仰角,范围`-90~90`,默认为`0` */
pitch: number;
/** 可视域水平夹角,默认为 `90`,范围`0~360` */
horizontalViewAngle?: number;
/** 可视域垂直夹角,默认为`60`,范围`0~180` */
verticalViewAngle?: number;
/** 可视区域颜色,默认为`green` */
visibleAreaColor?: Cesium.Color;
/** 不可见区域颜色,默认为`red` */
invisibleAreaColor?: Cesium.Color;
/** 可视距离,单位`米`,默认为`100` */
visualRange?: number;
}
export default class ViewShed {
private viewer;
private datasource;
private radar;
/** 观测位置 */
private viewPosition;
private cameraPosition;
/** 方向角 -180~180 */
private _direction;
/** 机方向与地平面的角度 */
private _pitch;
/** 可视域水平夹角,默认为 `90` */
private _horizontalViewAngle;
/** 可视域垂直夹角,默认为`60` */
private _verticalViewAngle;
/** 可视区域颜色,默认为`green` */
private _visibleAreaColor;
/** 不可见区域颜色,默认为`red` */
private _invisibleAreaColor;
/** 可视距离,单位`米` */
private _visualRange;
_defaultColorTexture: any;
lightCamera: any;
private shadowMap;
private postStage;
frustumQuaternion: any;
constructor(options: ViewShedOptions);
get visibleAreaColor(): Cesium.Color;
set visibleAreaColor(val: Cesium.Color);
get invisibleAreaColor(): Cesium.Color;
set invisibleAreaColor(val: Cesium.Color);
get horizontalViewAngle(): number;
set horizontalViewAngle(val: number);
get verticalViewAngle(): number;
set verticalViewAngle(val: number);
get direction(): number;
set direction(val: number);
get pitch(): number;
set pitch(val: number);
get visualRange(): number;
set visualRange(val: number);
setCameraView(): void;
createShadowMap(): void;
updateViewShed(): void;
getFrustumQuaternion(cpos: any, viewPosition: any): Cesium.Quaternion;
clearAll(): void;
removeProcessStageById(id: string): void;
findProcessStageById(id: string): Cesium.PostProcessStage | Cesium.PostProcessStageComposite;
createPostStage(): void;
update(frameState: any): void;
getSceneDepthTexture(viewer: any): any;
removeRadar(): void;
resetRadar(): void;
addRadar(): void;
}
export {};