跳转至

API 参考

本页列出场景生命周期相关的公开方法。使用建议和完整示例见核心概念;安装和后端检查见安装与环境配置

Scene

Scene.simulate(...)

Scene.simulate(sensor_or_process, **kwargs)

执行传感器模拟或过程计算。场景尚未构建时,会在第一次模拟前自动构建。返回类型由传感器或过程决定。

Scene.build()

Scene.build()

提前验证场景、加载几何、上传资源并构建原生加速结构。对未变化的已构建场景重复调用时复用已有原生场景。

Scene.rebuild()

Scene.rebuild()

强制重新读取或上传几何并重建加速结构。适用于同一路径的几何文件被外部程序替换等无法由 Scene 自动观察的变化。

Scene.update_instances()

Scene.update_instances()

提交通过 InstanceHandle 完成的位置、旋转或缩放更新,并重整顶层加速结构。调用前必须先执行 Scene.build();移动 TurbidBoundary 实例时应使用 Scene.rebuild()

光照与大气

Illumination

less.Illumination(source=..., atmosphere=...)

组合大气层顶入射源和大气模型。source 通常为 less.Sunatmosphere 可使用 less.PrescribedAtmosphereless.SimpleSpectralAtmosphereless.HosekWilkieAtmosphereless.Atmosphereless.SixSAtmosphere 或表示真空的 less.NoAtmosphere

NoAtmosphere

less.NoAtmosphere()

真空边界:TOA 太阳直射不衰减,天空散射为零。

Sun

less.Sun(
    zenith=30,
    azimuth=150,
    spectrum=None,
    wavelengths=None,
    irradiance=None,
)

定义太阳方向和大气层顶束法向光谱辐照度。未提供光谱时使用 LESS 内置太阳 光谱;显式 irradiance 的单位为 W m⁻² nm⁻¹。标量适用于所有波段; 光谱数组建议同时提供 wavelengths,否则数组长度必须与求解波段数一致。

PrescribedAtmosphere

less.PrescribedAtmosphere(
    wavelengths=None,
    direct_beam_transmittance=0.7,
    diffuse_horizontal_transmittance=0.15,
)

direct_beam_transmittance 为地表束法向直射辐照度与 TOA 束法向辐照度之比。 diffuse_horizontal_transmittance 为地表水平散射辐照度与 TOA 太阳光在水平面 投影辐照度之比;它不是地表散射占比。若太阳天顶角为 θ

E_direct_normal_surface = E_toa_normal × direct_beam_transmittance
E_diffuse_horizontal_surface = E_toa_normal × cos(θ)
                               × diffuse_horizontal_transmittance

两个无量纲系数可为标量;光谱数组应配套提供参考 wavelengths,并且逐波段 之和不能大于 1。

其他大气模型

  • less.SimpleSpectralAtmosphere(turbidity=...):快速简化光谱大气和各向同性天空。
  • less.HosekWilkieAtmosphere(turbidity=...):可见光 Hosek–Wilkie 方向天空。
  • less.Atmosphere.standard(...):LESS 内置分层大气及地表—传感器传播。
  • less.Illumination(source=less.Sun(zenith=30.0, azimuth=180.0), atmosphere=less.SixSAtmosphere()):使用可选 6S 模型计算地表直射和散射光。

完整示例见大气模型与地气传输

相关页面