【发布时间】:2021-10-07 00:03:34
【问题描述】:
我能够使用以下代码获取标记位置
this.marker.object3D.getWorldPosition(vector);
我想知道是否可以将此位置(x,y,z)转换为等效的屏幕位置(宽度,高度)。
你能给我一些解决这个问题的想法吗?
【问题讨论】:
标签: javascript three.js aframe ar.js
我能够使用以下代码获取标记位置
this.marker.object3D.getWorldPosition(vector);
我想知道是否可以将此位置(x,y,z)转换为等效的屏幕位置(宽度,高度)。
你能给我一些解决这个问题的想法吗?
【问题讨论】:
标签: javascript three.js aframe ar.js
您可以通过两个步骤来做到这一点:
width 和height 进行屏幕空间转换。const vector = new THREE.Vector3();
vector.project( camera );
vector.x = ( vector.x + 1) * width / 2;
vector.y = - ( vector.y - 1) * height / 2;
vector.z = 0;
【讨论】: