Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在程序生成的城市中关联three.js网格对象中的数据_Javascript_Three.js_Procedural Generation - Fatal编程技术网

Javascript 在程序生成的城市中关联three.js网格对象中的数据

Javascript 在程序生成的城市中关联three.js网格对象中的数据,javascript,three.js,procedural-generation,Javascript,Three.js,Procedural Generation,我正在尝试使用three.js创建一个程序生成的城市,它主要由建筑物组成。一个要求是,当用鼠标点击建筑物时,应显示有关该建筑物的信息,例如名称、位置等,例如,作为悬停在该建筑物旁边的文本框 我试图查看表示建筑的three.js mesh对象是否有任何可以存储此信息的数据属性。没有 你知道如何实现这一功能吗?TIA。仍然是JavaScript,因此您可以向网格添加自定义对象: var building = new THREE.Mesh( [...] ); building.info = { nam

我正在尝试使用three.js创建一个程序生成的城市,它主要由建筑物组成。一个要求是,当用鼠标点击建筑物时,应显示有关该建筑物的信息,例如名称、位置等,例如,作为悬停在该建筑物旁边的文本框

我试图查看表示建筑的three.js mesh对象是否有任何可以存储此信息的数据属性。没有


你知道如何实现这一功能吗?TIA。

仍然是JavaScript,因此您可以向网格添加自定义对象:

var building = new THREE.Mesh( [...] );
building.info = { name: "myHouse", lat: 48.12, lng: 8.54, [...] };

console.log( building.info.name ); //myHouse
Object3D类有一个属性userData,您可以在其中安全地添加自定义数据

由于网格类是从Object3D派生的,因此它也具有该属性

像这样使用它:

mesh.userData.name = "TheName";

three.js r.71

谢谢。我会试试的。谢谢你的回答。这就是我要找的。