vue-cesium
Version:
Vue 3.x components for CesiumJS.
1 lines • 3.85 kB
Source Map (JSON)
{"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;;;;"}