From 059270c12f452fcc3344b826f35295fd7c20906e Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期二, 21 三月 2023 08:31:37 +0800 Subject: [PATCH] # --- static/js/object/ObjectSelect.js | 54 ++++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 48 insertions(+), 6 deletions(-) diff --git a/static/js/object/ObjectSelect.js b/static/js/object/ObjectSelect.js index 08069ea..28738d8 100644 --- a/static/js/object/ObjectSelect.js +++ b/static/js/object/ObjectSelect.js @@ -1,11 +1,17 @@ -function ObjectSelect(_scene, _camera,outlinePass) { + +function ObjectSelect(_scene, _camera, outlinePass, object) { var raycaster = new THREE.Raycaster(); var mouse = new THREE.Vector2(); - var selectedObjects = []; + let selectedObjects = []; window.addEventListener( 'click', onMouseClick); + window.addEventListener('dblclick', onMouseDbClick); function onMouseClick(event) { + $("#label").attr("style", "display:none;"); + } + + function onMouseDbClick(event) { let x, y; if (event.changedTouches) { x = event.changedTouches[0].pageX; @@ -17,14 +23,50 @@ mouse.x = (x/ window.innerWidth) * 2 - 1; mouse.y = -(y/ window.innerHeight) * 2 + 1; raycaster.setFromCamera(mouse, _camera); - var intersects = raycaster.intersectObjects([_scene], true); - + let intersects = raycaster.intersectObjects([_scene], true); if (intersects.length === 0) { + $("#label").attr("style", "display:none;"); return; } - let selectObject = intersects[0].object; - console.log(selectObject) + console.log(intersects[0].object) + let objName = intersects[0].object.name; + if (objName) { + let dest = objName.split("-")[0]; + if (dest) { + // 搴撳瓨 + if (dest.length === 7) { + $("#label").attr("style", "display:block;"); + $("#label").css({left: x, top: y - 40}); + + let dataShow = new DataShow('locNo', dest); + + selectedObjects.pop(); + selectedObjects.push(intersects[0].object); + $("#label").html(dataShow.showHint()); + // 杩愯涓� + } else if (dest.length === 4) { + $("#label").attr("style", "display:block;"); + $("#label").css({left: x, top: y - 40}); + + let dataShow = new DataShow('wrkNo', dest); + + selectedObjects.pop(); + selectedObjects.push(intersects[0].object); + $("#label").html(dataShow.showHint()); + } else { + $("#label").attr("style", "display:none;"); + } + } else { + $("#label").attr("style", "display:none;"); + } + } else { + $("#label").attr("style", "display:none;"); + } + + // selectedObjects = []; + // selectedObjects.push(intersects[0].object); + // outlinePass.selectedObjects = selectedObjects; } } -- Gitblit v1.9.1