gpt4 book ai didi

javascript - Three.js Vector.project() 给出的值是无穷大?

转载 作者:行者123 更新时间:2023-11-28 18:35:52 25 4
gpt4 key购买 nike

任何人都可以告诉我为什么我的位置值像 {x:0.50516157, y:-0.62950189, z:0} 一样变得像 {x:Infinity, y:-Infinity, z:-Infinity} 一样我正在尝试将我的位置向量投影到相机上。我发现了类似的查询 Converting World coordinates to Screen coordinates in Three.js using Projection对此,但解决方案并不能解决我的问题。如果有人能帮助我,那真的会很有帮助并且节省时间。

var screenvector = new THREE.Vector3();
var position = new THREE.Vector3();
position = convertLatLontoVec3(lat, lng).multiplyScalar(radius);
//convertLatLontoVec3(returns new THREE.Vector3(x, y, z);)
screenvector.copy(position);
//till here during debugging i can find the values of position.x, .y, .z
screenvector.project(camera); //But once this step is executed all the values are becoming infintiy. I don't understand why is it happening.

最佳答案

如果您投影“屏幕空间”矢量,则您很可能位于view/worldSpace中相机的原点(图中的 z==0)。无穷大在这里是有道理的。您可能想要取消投影

projecting from camera position

从 z==0 开始,相机后面的任何东西都是无穷大(我认为)。

关于javascript - Three.js Vector.project() 给出的值是无穷大?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37098144/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com