core/Weather.js

/*
 * 天气主类
 * @Author: jianlei wang
 * @Date: 2024-02-21 15:53:00
 * @Last Modified by: jianlei wang
 * @Last Modified time: 2024-03-28 15:13:16
 */

import RainEffect from '../utils/weather/Rain'
import SnowEffect from '../utils/weather/Snow'
import FogEffect from '../utils/weather/Fog'
import LightningEffect from '../utils/weather/Lightning'

/**
 * 天气主类
 * @class
 */
class Weather {
  /**
   * 构造函数
   * @param {Object} viewer 地图场景对象
   * @see {@link RainEffect} - 雨天气效果类
   * @see {@link SnowEffect} - 雪天气效果类
   * @see {@link FogEffect} - 大雾天气效果类
   * @see {@link LightningEffect} - 雷电效果类
   */
  constructor(viewer) {
    this._viewer = viewer
    /**
     * 雨天气效果
     * @type {RainEffect}
     */
    this.Rain = new RainEffect(this._viewer)
    /**
     * 雪天气效果
     * @type {SnowEffect}
     */
    this.Snow = new SnowEffect(this._viewer)
    /**
     * 大雾天气效果
     * @type {FogEffect}
     */
    this.Fog = new FogEffect(this._viewer)
    /**
     * 雷电效果
     * @type {LightningEffect}
     */
    this.Lightning = new LightningEffect(this._viewer)
  }
}

export default Weather