{"version":3,"file":"use-circle-scan.mjs","sources":["../../../../../../packages/components/post-processes/post-process-stage-scan/use-circle-scan.ts"],"sourcesContent":["/*\n * @Author: zouyaoji@https://github.com/zouyaoji\n * @Date: 2021-10-27 15:54:13\n * @LastEditTime: 2022-04-29 17:32:41\n * @LastEditors: zouyaoji\n * @Description:\n * @FilePath: \\vue-cesium@next\\packages\\components\\post-processes\\post-process-stage-scan\\use-circle-scan.ts\n */\nimport { VcViewerProvider } from 'casc-cesium-utils/types'\nimport shaderSource from 'casc-cesium-shared/shaders/CircleScan'\nexport default function ($services: VcViewerProvider) {\n  const webgl = options => {\n    const { viewer } = $services\n    const cartographicCenter = Cesium.Cartographic.fromCartesian(options.position, viewer.scene.globe.ellipsoid)\n    const _Cartesian3Center = Cesium.Cartographic.toCartesian(cartographicCenter, viewer.scene.globe.ellipsoid)\n    const _Cartesian4Center = new Cesium.Cartesian4(_Cartesian3Center.x, _Cartesian3Center.y, _Cartesian3Center.z, 1)\n    const _CartographicCenter1 = new Cesium.Cartographic(cartographicCenter.longitude, cartographicCenter.latitude, cartographicCenter.height + 500)\n    const _Cartesian3Center1 = Cesium.Cartographic.toCartesian(_CartographicCenter1, viewer.scene.globe.ellipsoid)\n    const _Cartesian4Center1 = new Cesium.Cartesian4(_Cartesian3Center1.x, _Cartesian3Center1.y, _Cartesian3Center1.z, 1)\n    const _time = new Date().getTime()\n    const _scratchCartesian4Center = new Cesium.Cartesian4()\n    const _scratchCartesian4Center1 = new Cesium.Cartesian4()\n    const _scratchCartesian3Normal = new Cesium.Cartesian3()\n    const uniforms = {\n      u_scanCenterEC: function () {\n        return Cesium.Matrix4.multiplyByVector(viewer.camera.viewMatrix, _Cartesian4Center, _scratchCartesian4Center)\n      },\n      u_scanPlaneNormalEC: function () {\n        const temp = Cesium.Matrix4.multiplyByVector(viewer.camera.viewMatrix, _Cartesian4Center, _scratchCartesian4Center)\n        const temp1 = Cesium.Matrix4.multiplyByVector(viewer.camera.viewMatrix, _Cartesian4Center1, _scratchCartesian4Center1)\n        _scratchCartesian3Normal.x = temp1.x - temp.x\n        _scratchCartesian3Normal.y = temp1.y - temp.y\n        _scratchCartesian3Normal.z = temp1.z - temp.z\n        Cesium.Cartesian3.normalize(_scratchCartesian3Normal, _scratchCartesian3Normal)\n        return _scratchCartesian3Normal\n      },\n      u_radius: function () {\n        return (options.radius * ((new Date().getTime() - _time) % options.interval)) / options.interval\n      },\n      u_scanColor: options.color\n    }\n    return {\n      shaderSource,\n      uniforms\n    }\n  }\n\n  return {\n    webgl\n  }\n}\n"],"names":[],"mappings":"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"}