コンテンツにスキップ

Moon

月の基本情報を保持するクラス

月は太陽と同じ 1 つの光源として扱う。照度 Moon.illuminance を 空 (月 SkyView LUT)・地表・B3D・点群・水面・月ディスクの全部が読むので、 消費者ごとの比は物理のまま、絶対値だけをこの 1 値で決める。

照度の既定値は物理満月に夜の暗順応の利得を掛けた値で、描画ではカメラ位置の 太陽仰角に応じて昼は物理値まで下がる。

Constructors

new Moon()

new Moon(): Moon

constructor

Returns

Moon

Properties

DEFAULT_ANGULAR_DIAMETER_DEGREE

static readonly DEFAULT_ANGULAR_DIAMETER_DEGREE: 0.5181 = 0.5181

月の視直径の既定値 (Degrees)。平均視直径 31.09′ = 0.5181°。


DEFAULT_ILLUMINANCE

static readonly DEFAULT_ILLUMINANCE: number

月光の照度の既定値 (太陽照度 E_sun = 1 に対する比) = 物理満月 × 暗順応の利得 = 0.05。

夜 (太陽仰角 −9° 以下) にそのまま効き、昼 (0° 以上) へ向けて物理値 (約 2.5e-6) まで下がる。

Accessors

angular_diameter_degree

get angular_diameter_degree(): number

月の視直径 (Degrees)。

ディスクの見かけの大きさと立体角 (Moon.solid_angle) を決める。 照度は変わらないので、視直径を大きくするとディスクは大きく暗くなる。

See

Moon.setAngularDiameterDegree

Returns

number


illuminance

get illuminance(): number

月光の照度 E_moon (太陽照度 E_sun = 1 に対する比)。夜の値。

空・地表・B3D・点群・水面・月ディスクがすべてこの 1 つの値を読む。 描画はカメラ位置の太陽仰角で下げた値を使う。0 で月光を無効にする。

See

Moon.setIlluminance

Returns

number


solid_angle

get solid_angle(): number

視直径から導かれる立体角 Ω [sr]。

ディスクの放射輝度は L = E_moon / Ω で求まる (太陽と同じ式)。

See

Moon.setAngularDiameterDegree

Returns

number

Methods

getMoonDirection()

getMoonDirection(dst): Vector3

月ベクトルの情報のコピーを取得

Parameters

Parameter Type Description
dst Vector3 方向(GOCS 正規化されていること)

Returns

Vector3

月ベクトルのコピー(GOCS)


setAngularDiameterDegree()

setAngularDiameterDegree(value): void

月の視直径を設定する。

Parameters

Parameter Type Description
value number 視直径 (Degrees)。0 より大きい値

Returns

void

Default Value

{@link Moon.DEFAULT_ANGULAR_DIAMETER_DEGREE}

setIlluminance()

setIlluminance(value): void

月光の照度を設定する。

Parameters

Parameter Type Description
value number 照度 (太陽照度 E_sun = 1 に対する比。0 以上)

Returns

void

Default Value

{@link Moon.DEFAULT_ILLUMINANCE}

setMoonDirection()

setMoonDirection(direction): void

月ベクトルの情報を設定

Parameters

Parameter Type Description
direction Vector3 方向(GOCS 正規化されていること)

Returns

void


solidAngleOf()

static solidAngleOf(angular_diameter_degree): number

視直径 θ に対する立体角 Ω = 2π(1 − cos(θ/2)) [sr]。

Parameters

Parameter Type Description
angular_diameter_degree number 視直径 (Degrees)。0 より大きい値

Returns

number