#
luxiaotao1123
2022-06-30 18bd54d17c3d09e48b14fcb0cc0fc74758a920b2
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,16 +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(outlinePass)
        outlinePass.selectedObjects = selectedObjects;//给选中的线条和物体加发光特效
        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;
    }
}