vue-cesium
Version:
Vue 3.x components for CesiumJS.
1 lines • 15.1 kB
Source Map (JSON)
{"version":3,"file":"use-drawing-action.mjs","sources":["../../../../../packages/composables/use-drawing/use-drawing-action.ts"],"sourcesContent":["/*\n * @Author: zouyaoji@https://github.com/zouyaoji\n * @Date: 2021-10-15 09:47:36\n * @LastEditTime: 2022-07-25 17:36:49\n * @LastEditors: zouyaoji\n * @Description:\n * @FilePath: \\vue-cesium@next\\packages\\composables\\use-drawing\\use-drawing-action.ts\n */\n// import { enableMouseEvent } from '@vue-cesium/utils/cesium-props'\nimport type { VcReadyObject, VcComponentInternalInstance, VcComponentPublicInstance, VcDrawingProvider, VcPickEvent } from '@vue-cesium/utils/types'\nimport { ref, computed } from 'vue'\nimport { useLocale } from '../use-locale'\nimport { DrawStatus } from '@vue-cesium/shared'\nimport useTimeout from '@vue-cesium/composables/private/use-timeout'\nimport { kebabCase } from '@vue-cesium/utils/util'\nimport { VcDrawTipOpts } from '@vue-cesium/utils/drawing-types'\n\nexport default function (props, ctx, instance: VcComponentInternalInstance, cmpName: string, $services: VcDrawingProvider) {\n instance.cesiumClass = cmpName\n instance.cesiumEvents = []\n const { t } = useLocale()\n const { emit } = ctx\n const tips = kebabCase(cmpName).split('-')\n if (cmpName === 'VcMeasurementDistance' && props.showComponentLines) {\n tips[2] = 'component-distance'\n }\n if (cmpName === 'VcDrawingRegular' || cmpName === 'VcMeasurementRegular') {\n if (props.edge === 4) {\n tips[2] = 'rectangle'\n }\n if (props.edge === 360) {\n tips[2] = 'circle'\n }\n }\n let drawingType = tips[2]\n\n tips[3] && (drawingType = `${tips[2]}-${tips[3]}`)\n\n const drawTip = ref('')\n const drawTipOpts = computed<VcDrawTipOpts>(() => {\n return {\n drawingTipStart: props.drawtip.drawingTipStart || t(`${tips[0]}.${tips[1]}.${tips[2]}.drawingTipStart`),\n drawingTipEnd: props.drawtip.drawingTipEnd || t(`${tips[0]}.${tips[1]}.${tips[2]}.drawingTipEnd`),\n drawingTipEditing: props.drawtip.drawingTipEditing || t(`${tips[0]}.${tips[1]}.${tips[2]}.drawingTipEditing`)\n }\n })\n\n const drawStatus = ref(DrawStatus.BeforeDraw)\n const canShowDrawTip = ref(false)\n const drawTipPosition = ref<Array<number> | Cesium.Cartesian3>([0, 0, 0])\n const showEditor = ref(false)\n const editorPosition = ref<Array<number> | Cesium.Cartesian3>([0, 0, 0])\n const mouseoverPoint = ref<any>(null)\n const editingPoint = ref<any>(null)\n const primitiveCollectionRef = ref<VcComponentPublicInstance>(null!)\n const editorType = ref('')\n\n const { registerTimeout, removeTimeout } = useTimeout()\n\n // methods\n instance.createCesiumObject = async () => {\n return primitiveCollectionRef\n }\n\n const onMouseoverPoints = (e: VcPickEvent) => {\n const { drawingHandlerActive, viewer } = $services\n if (props.editable && drawStatus.value !== DrawStatus.Drawing && drawingHandlerActive) {\n e.pickedFeature.primitive.pixelSize = props.pointOpts?.pixelSize * 1.5\n removeTimeout()\n registerTimeout(() => {\n mouseoverPoint.value = e.pickedFeature.primitive\n editorPosition.value = e.pickedFeature.primitive.position\n showEditor.value = true\n canShowDrawTip.value = false\n drawTipPosition.value = [0, 0, 0]\n }, props.editorOpts?.delay)\n }\n\n emit(\n 'mouseEvt',\n {\n type: e.type,\n name: drawingType,\n target: e\n },\n viewer\n )\n }\n\n const onMouseoutPoints = (e: VcPickEvent) => {\n const { viewer, selectedDrawingActionInstance } = $services\n if (props.editable) {\n e.pickedFeature.primitive.pixelSize = props.pointOpts?.pixelSize * 1.0\n removeTimeout()\n registerTimeout(() => {\n editorPosition.value = [0, 0, 0]\n mouseoverPoint.value = undefined\n showEditor.value = false\n }, props.editorOpts?.hideDelay)\n selectedDrawingActionInstance && (canShowDrawTip.value = true)\n }\n\n emit(\n 'mouseEvt',\n {\n type: e.type,\n name: drawingType,\n target: e\n },\n viewer\n )\n }\n\n const onMouseenterEditor = evt => {\n removeTimeout()\n }\n\n const onMouseleaveEditor = evt => {\n removeTimeout()\n registerTimeout(() => {\n editorPosition.value = [0, 0, 0]\n mouseoverPoint.value.pixelSize = props.pointOpts?.pixelSize * 1.0\n mouseoverPoint.value = undefined\n showEditor.value = false\n }, props.editorOpts?.hideDelay)\n }\n\n const onPrimitiveCollectionReady = (readyObj: VcReadyObject) => {\n ;(readyObj.cesiumObject as any)._vcId = cmpName\n }\n\n const onVcCollectionPointReady = function (e: VcReadyObject) {\n const { cesiumObject: pointPrimitiveCollection } = e as any\n const originalUpdate = pointPrimitiveCollection.update\n\n pointPrimitiveCollection.update = function (frameState) {\n const originalLength = frameState.commandList.length\n originalUpdate.call(this, frameState)\n const endLength = frameState.commandList.length\n for (let i = originalLength; i < endLength; ++i) {\n frameState.commandList[i].pass = Cesium['Pass'].TRANSLUCENT\n frameState.commandList[i].renderState = Cesium['RenderState'].fromCache({\n depthTest: {\n enabled: false\n },\n depthMask: false\n })\n }\n }\n }\n\n const onVcCollectionLabelReady = (e: VcReadyObject) => {\n if (props.disableDepthTest) return\n const labelCollection = e.cesiumObject as any\n const originalUpdate = labelCollection.update\n\n labelCollection.update = function (frameState) {\n const originalLength = frameState.commandList.length\n originalUpdate.call(this, frameState)\n const endLength = frameState.commandList.length\n for (let i = originalLength; i < endLength; ++i) {\n frameState.commandList[i].pass = Cesium['Pass'].OVERLAY\n frameState.commandList[i].renderState = Cesium['RenderState'].fromCache({\n depthTest: {\n enabled: false\n },\n depthMask: false,\n blending: Cesium.BlendingState.ALPHA_BLEND\n })\n }\n }\n }\n\n const onVcPrimitiveReady = (e: VcReadyObject) => {\n if (props.disableDepthTest) return\n\n const primitive = e.cesiumObject as any\n const originalPrimitiveUpdate = primitive.update\n\n primitive.update = function (frameState) {\n const originalLength = frameState.commandList.length\n originalPrimitiveUpdate.call(this, frameState)\n const endLength = frameState.commandList.length\n for (let i = originalLength; i < endLength; ++i) {\n if (frameState.commandList[i].pass !== Cesium['Pass'].TRANSLUCENT) {\n continue\n }\n frameState.commandList[i].pass = Cesium['Pass'].OPAQUE\n frameState.commandList[i].renderState = Cesium['RenderState'].fromCache({\n depthTest: {\n enabled: false\n },\n depthMask: false,\n blending: Cesium.BlendingState.ALPHA_BLEND\n })\n }\n }\n }\n\n return {\n drawingType,\n drawTip,\n drawTipOpts,\n drawStatus,\n canShowDrawTip,\n drawTipPosition,\n showEditor,\n editorPosition,\n mouseoverPoint,\n editingPoint,\n primitiveCollectionRef,\n editorType,\n onMouseoverPoints,\n onMouseoutPoints,\n onMouseenterEditor,\n onMouseleaveEditor,\n onPrimitiveCollectionReady,\n onVcCollectionPointReady,\n onVcPrimitiveReady,\n onVcCollectionLabelReady\n }\n}\n"],"names":["_a"],"mappings":"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"}