我想获取光标的世界位置,以帮助我创建360游览的热点,因为我创建了一个返回光标位置的组件。该组件工作正常,但是它返回了光标的相对位置,所以我应该怎么做才能获得光标的世界位置
答案 0 :(得分:0)
您可以使用以下THREE.js
方法之一:
// set a vector from the cursors matrix world
vec3.setFromMatrixPosition(cursorEl.object3D.matrixWorld);
// fill a vector using the getWorldPosition
cursorEl.object3D.getWorldPosition(vec3)
在this fiddle中签出。
具有这样的设置
<a-camera>
<a-cursor my-component></a-cursor>
</a-camera>
您可能会有这样的组件:
AFRAME.registerComponent("my-component", {
init: function() {
this.vec = new THREE.Vector3()
},
tick: function() {
this.vec.setFromMatrixPosition(this.el.object3D.matrixWorld);
// do something with this.vec
}
})