2
我拿this爲例拖動&放下物體,它的作品完美。但是現在我想將一些元素分組拖動到一起,拖動它們到&。我用一些Spheres替換了示例中的多維數據集,並將它們組合在一個Object3D()中。如何使用three.js拖放Object3D元素?
var data = [[0,10],[50,20],[100,7],[150,18],[200,15],[250,3],[300,10],[350,25]];
var group = new THREE.Object3D();
for(var i = 0; i< data.length; i++){
var mesh = new THREE.Mesh(new THREE.SphereGeometry(data[i][1],20,20), sphereMaterial);
mesh.position.y = data[i][0];
mesh.updateMatrix();
group.add(mesh);
}
objects.push(group);
scene.add(group);
但我不能選擇該組中我的場景中物體的:(我做錯了嗎?是不是有可能選擇一組嗎?或者必須怎樣樣子呢?
當我做.intersectObjects(對象,真正的),你可以拖動單spehres。但我不想那樣!我想一次性移動整個球體組。 – PanChan
您需要選取所選感興趣對象的父級並將其拖動。 – gaitat
這是一個簡單但有用的提示! 我添加了一個「父」到「INTERSECTED = intersects [0] .object.parent;」也到了SELECTED,它的工作原理! :D 但是現在每個幾何圖形都必須位於一個被拖動的組中。這不好,但我現在可以忍受。 – PanChan