|
function ObjectSelect(_scene, _camera, outlinePass, object) {
|
var raycaster = new THREE.Raycaster();
|
var mouse = new THREE.Vector2();
|
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;
|
y = event.changedTouches[0].pageY;
|
} else {
|
x = event.clientX;
|
y = event.clientY;
|
}
|
mouse.x = (x/ window.innerWidth) * 2 - 1;
|
mouse.y = -(y/ window.innerHeight) * 2 + 1;
|
raycaster.setFromCamera(mouse, _camera);
|
let intersects = raycaster.intersectObjects([_scene], true);
|
|
if (intersects.length === 0) {
|
$("#label").attr("style", "display:none;");
|
return;
|
}
|
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;
|
}
|
|
}
|