{"version":3,"file":"TimelineHighlightRange.mjs","sources":["../../../../../packages/shared/widgets/TimelineHighlightRange.ts"],"sourcesContent":["/*\n * @Author: zouyaoji@https://github.com/zouyaoji\n * @Date: 2023-04-19 17:40:17\n * @Description: Do not edit\n * @LastEditors: zouyaoji 370681295@qq.com\n * @LastEditTime: 2023-04-19 17:45:33\n * @FilePath: \\vue-cesium@next\\packages\\shared\\widgets\\TimelineHighlightRange.ts\n */\nexport default class VcTimelineHighlightRange {\n  _color: any\n  _height: any\n  _base: any\n  _start: any\n  _stop: any\n  constructor(color, heightInPx, base) {\n    this._color = color\n    this._height = heightInPx\n    this._base = Cesium.defaultValue(base, 0)\n  }\n\n  getHeight() {\n    return this._height\n  }\n\n  getBase() {\n    return this._base\n  }\n\n  getStartTime() {\n    return this._start\n  }\n\n  getStopTime() {\n    return this._stop\n  }\n\n  setRange(start, stop) {\n    this._start = start\n    this._stop = stop\n  }\n\n  render(renderState) {\n    let range = ''\n    const { JulianDate } = Cesium\n    if (this._start && this._stop && this._color) {\n      const highlightStart = JulianDate.secondsDifference(this._start, renderState.epochJulian)\n      let highlightLeft = Math.round(renderState.timeBarWidth * renderState.getAlpha(highlightStart))\n      const highlightStop = JulianDate.secondsDifference(this._stop, renderState.epochJulian)\n      let highlightWidth = Math.round(renderState.timeBarWidth * renderState.getAlpha(highlightStop)) - highlightLeft\n      if (highlightLeft < 0) {\n        highlightWidth += highlightLeft\n        highlightLeft = 0\n      }\n      if (highlightLeft + highlightWidth > renderState.timeBarWidth) {\n        highlightWidth = renderState.timeBarWidth - highlightLeft\n      }\n      if (highlightWidth > 0) {\n        range = `<span class=\"cesium-timeline-highlight\" style=\"left: ${highlightLeft.toString()}px; width: ${highlightWidth.toString()}px; bottom: ${this._base.toString()}px; height: ${\n          this._height\n        }px; background-color: ${this._color};\"></span>`\n      }\n    }\n    return range\n  }\n}\n"],"names":[],"mappings":";AAQA,MAAqB,wBAAyB,CAAA;AAAA,EAM5C,WAAA,CAAY,KAAO,EAAA,UAAA,EAAY,IAAM,EAAA;AACnC,IAAA,IAAA,CAAK,MAAS,GAAA,KAAA,CAAA;AACd,IAAA,IAAA,CAAK,OAAU,GAAA,UAAA,CAAA;AACf,IAAA,IAAA,CAAK,KAAQ,GAAA,MAAA,CAAO,YAAa,CAAA,IAAA,EAAM,CAAC,CAAA,CAAA;AAAA,GAC1C;AAAA,EAEA,SAAY,GAAA;AACV,IAAA,OAAO,IAAK,CAAA,OAAA,CAAA;AAAA,GACd;AAAA,EAEA,OAAU,GAAA;AACR,IAAA,OAAO,IAAK,CAAA,KAAA,CAAA;AAAA,GACd;AAAA,EAEA,YAAe,GAAA;AACb,IAAA,OAAO,IAAK,CAAA,MAAA,CAAA;AAAA,GACd;AAAA,EAEA,WAAc,GAAA;AACZ,IAAA,OAAO,IAAK,CAAA,KAAA,CAAA;AAAA,GACd;AAAA,EAEA,QAAA,CAAS,OAAO,IAAM,EAAA;AACpB,IAAA,IAAA,CAAK,MAAS,GAAA,KAAA,CAAA;AACd,IAAA,IAAA,CAAK,KAAQ,GAAA,IAAA,CAAA;AAAA,GACf;AAAA,EAEA,OAAO,WAAa,EAAA;AAClB,IAAA,IAAI,KAAQ,GAAA,EAAA,CAAA;AACZ,IAAM,MAAA,EAAE,YAAe,GAAA,MAAA,CAAA;AACvB,IAAA,IAAI,IAAK,CAAA,MAAA,IAAU,IAAK,CAAA,KAAA,IAAS,KAAK,MAAQ,EAAA;AAC5C,MAAA,MAAM,iBAAiB,UAAW,CAAA,iBAAA,CAAkB,IAAK,CAAA,MAAA,EAAQ,YAAY,WAAW,CAAA,CAAA;AACxF,MAAI,IAAA,aAAA,GAAgB,KAAK,KAAM,CAAA,WAAA,CAAY,eAAe,WAAY,CAAA,QAAA,CAAS,cAAc,CAAC,CAAA,CAAA;AAC9F,MAAA,MAAM,gBAAgB,UAAW,CAAA,iBAAA,CAAkB,IAAK,CAAA,KAAA,EAAO,YAAY,WAAW,CAAA,CAAA;AACtF,MAAI,IAAA,cAAA,GAAiB,KAAK,KAAM,CAAA,WAAA,CAAY,eAAe,WAAY,CAAA,QAAA,CAAS,aAAa,CAAC,CAAI,GAAA,aAAA,CAAA;AAClG,MAAA,IAAI,gBAAgB,CAAG,EAAA;AACrB,QAAkB,cAAA,IAAA,aAAA,CAAA;AAClB,QAAgB,aAAA,GAAA,CAAA,CAAA;AAAA,OAClB;AACA,MAAI,IAAA,aAAA,GAAgB,cAAiB,GAAA,WAAA,CAAY,YAAc,EAAA;AAC7D,QAAA,cAAA,GAAiB,YAAY,YAAe,GAAA,aAAA,CAAA;AAAA,OAC9C;AACA,MAAA,IAAI,iBAAiB,CAAG,EAAA;AACtB,QAAA,KAAA,GAAQ,wDAAwD,aAAc,CAAA,QAAA,EAAU,CAAc,WAAA,EAAA,cAAA,CAAe,UAAU,CAAA,YAAA,EAAe,IAAK,CAAA,KAAA,CAAM,UAAU,CAAA,YAAA,EACjK,KAAK,OACP,CAAA,sBAAA,EAAyB,KAAK,MAAM,CAAA,UAAA,CAAA,CAAA;AAAA,OACtC;AAAA,KACF;AACA,IAAO,OAAA,KAAA,CAAA;AAAA,GACT;AACF;;;;"}