import { Matrix } from "./GeoMath"; import Viewer from "./Viewer"; import RenderStage from "./RenderStage"; /** * 大気層を表現するクラス * */ declare class Atmosphere { private _viewer; private _glenv; private _mesh; private _visibility; private _star_mask; private _parameters; /** * 初期化 * Viewerのコンストラクタで呼び出されます。 * * @param viewer 所属するViewer */ init(viewer: Viewer): void; /** * 破棄 */ destroy(): void; /** * 可視性フラグを取得 * @readonly */ get visibility(): { sky: boolean; ground: boolean; }; /** * 昼間の恒星表示マスクを取得 * @readonly */ get starMask(): boolean; /** * 大気層可視性フラグを設定 * * @param flag 可視性フラグ */ setSkyVisibility(flag: boolean): void; /** * 地表大気表現可視性フラグを設定 * * @param flag 可視性フラグ */ setGroundVisibility(flag: boolean): void; /** * 昼間の恒星表示マスクを設定 * @param flag フラグ */ setStarMask(flag: boolean): void; /** * 大気パラメータを取得 * @return 大気パラメータ * @readonly */ get parameters(): Atmosphere.Parameters; /** * レイリー係数を設定 * * @param value レイリー係数 */ setRayleigh(value: number): void; /** * ミー係数を設定 * * @param value ミー係数 */ setMie(value: number): void; /** * 大気スケール係数を設定 * * @param value 大気スケール係数 */ setScaleDepth(value: number): void; /** * 大気太陽係数を設定 * * @param value 大気太陽係数 */ setSunRate(value: number): void; /** * 大気露光係数を設定 * * @param value 大気露光係数 */ setExposure(value: number): void; /** * 地表レイリー係数を設定 * * @param value 地表レイリー係数 */ setGroundRayleigh(value: number): void; /** * 地表ミー係数を設定 * * @param value 地表ミー係数 */ setGroundMie(value: number): void; /** * 地表大気スケール係数を設定 * * @param value 地表大気スケール係数 */ setGroundScaleDepth(value: number): void; /** * 地表大気露光係数を設定 * * @param value 地表大気露光係数 */ setGroundSunRate(value: number): void; /** * 地表大気露光係数を設定 * * @param value 地表大気露光係数 */ setGroundExposure(value: number): void; /** * マテリアルを確認してCacheにセット */ private _checkMaterials; /** * マテリアルを削除 */ private _deleteMaterials; /** * 大気層を描画する。 * * @param render_stage レンダリングステージ * @param gocs_to_clip gocs_to_clip * @param view_to_gocs view_to_gocs */ draw(render_stage: RenderStage, gocs_to_clip: Matrix, view_to_gocs: Matrix): void; /** * 大気層Maskを描画する。 * * @param render_stage レンダリングステージ * @param gocs_to_clip gocs_to_clip * @param view_to_gocs view_to_gocs */ drawMask(render_stage: RenderStage, gocs_to_clip: Matrix, view_to_gocs: Matrix): void; private _draw; /** * カメラ高度から、Ground用シェーダを選択する。 * * @param view_to_gocs view_to_gocs */ selectGroundShader(view_to_gocs: Matrix): any; } declare namespace Atmosphere { interface Parameters { kr: number; km: number; scale_depth: number; esun: number; exposure: number; g_kr: number; g_km: number; g_scale_depth: number; g_esun: number; g_exposure: number; } } export default Atmosphere; //# sourceMappingURL=Atmosphere.d.ts.map