Skip to content

Typhoon 台风类

属性

direction: [Direction, Direction, Direction, Direction] 风圈方向

  • typescript
    type Direction = '西北' | '东北' | '东南' | '西南';

forecastColor: Record<string, MapColor> 预测线颜色

  • key 预测点数据的国家名称

show: boolean 是否显示

list: Map<string, TyphoonList> 创建的台风列表

forecast: Set<string> 要显示的预测线国家名称

方法

add 添加台风

typescript
add(typhoonData: TyphoonData): void //台风数据类型放在最下方

update 更新台风 (为了实时台风设计,更新后会直接渲染)

typescript
update(data: TyphoonData): void

start 播放台风

  • enname 要播放的台风英文名称
  • duration 播放的时间间隔 毫秒 默认0
  • setp 播放到第几步 默认全部
typescript
start(enname: string, duration?: number, setp?: number): void

setp 直接跳转到指定步骤

  • enname 要播放的台风英文名称
  • setp 跳转到第几步
typescript
setp(enname: string, setp: number): void

focus 聚焦台风

  • duration 过渡时间 秒
  • enname 台风英文名称
typescript
focus(duration?: number, enname?: string): void

remove 移除台风

  • enname 台风英文名称
typescript
remove(enname: string): boolean

removeAll 移除所有台风

typescript
removeAll(): boolean

setShow 设置台风显示消失

  • enname 台风英文名称
  • val 显示或消失(设置false只对不播放,不跳转的台风有效)
typescript
setShow(enname: string, val: boolean): void

destroy 销毁台风对象

typescript
destroy(): boolea

台风数据类型

typescript
export interface Land {
  /** 标题 */
  landaddress: string;
  /** 登陆时间 可以被Date对象识别的时间格式 必须*/
  landtime: string;
  lng: string;
  lat: string;
  /** 详细信息 */
  info: string;
  /** 强度 */
  strong: string;
}

export interface Forecastpoint {
  /** 时间 */
  time: string;
  lng: string;
  lat: string;
  /** 台风类型  热带风暴*/
  strong: string;
  /** 风力级别  8*/
  power: string;
  /** 风速 米/秒 16*/
  speed: string;
  /** 中心气压 百帕 998*/
  pressure: string;
  /** 国家名称 */
  tm: string;
}

export interface Forecast {
  /** 国家名称 */
  tm: string;
  /** 预测点位 */
  forecastpoints: Forecastpoint[];
}

export interface Point {
  /** 时间 */
  time: string;
  lng: string;
  lat: string;
  /** 台风类型 热带风暴*/
  strong: string;
  /** 风力级别 8*/
  power: string;
  /** 风速 米/秒 18*/
  speed: string;
  /** 中心气压 百帕 998*/
  pressure: string;
  /** 移动速度 公里/小时 9*/
  movespeed: string;
  /** 移动方向 */
  movedirection: string;
  /** 七级半径 100|100|100|100*/
  radius7: string;
  /** 十级半径 */
  radius10: string;
  /** 十二级半径 */
  radius12: string;
  /** 各国预测点位 */
  forecast: Forecast[];
  ckposition?: any;
  jl?: any;
}

export interface TyphoonData {
  /** 台风id */
  tfid: string;
  /** 台风名称 */
  name: string;
  /** 英文名称 */
  enname: string;
  /** 是否正在发生的台风 0 1 */
  isactive: string;
  /** 台风开始时间 */
  starttime: string;
  /** 台风结束时间 */
  endtime: string;
  /** 台风级别 */
  warnlevel: string;
  /** 台风中心经度 */
  centerlng: string;
  /** 台风中心纬度 */
  centerlat: string;
  /** 台风登陆的点位信息 */
  land: Land[];
  /** 台风点位信息 */
  points: Point[];
}