gpt4 book ai didi

Javascript 对象属性未更新变量集

转载 作者:行者123 更新时间:2023-12-03 04:32:37 26 4
gpt4 key购买 nike

我正在使用 Three.js 四元数,但在保存四元数对象的属性时遇到问题。

GLmol.prototype.initializeScene = function() {
this.scene = new THREE.Scene();
this.scene.fog = new THREE.Fog(this.bgColor, 100, 200);

this.modelGroup = new THREE.Object3D();
this.rotationGroup = new THREE.Object3D();
this.rotationGroup.useQuaternion = true;

this.rotationGroup.quaternion = new THREE.Quaternion(0.7235552851867599, -0.004228243257681183 , 0.004646778667168487, 0.6902378421133389);
console.log(this.rotationGroup.quaternion)

this.rotationGroup.add(this.modelGroup);

this.scene.add(this.rotationGroup);
this.setupLights(this.scene);
};

我遇到的问题是,当我设置 this.rotationGroup.quaternion = new THREE.Quaternion() 时,它不会保存 Quaternion 对象。当我查看输出时,我得到

THREE.Quaternion (w:1 x:0 y:0 z:0)

您认为为什么会发生这种情况?

最佳答案

Object3D.quaternion 属性是不可变的,因此此代码无效:

rotationGroup.quaternion = new THREE.Quaternion( x, y, z, w );

请使用 .quaternion.copy( q ).quaternion.set( x, y, z, w )

另请参阅this answer .

三.js r.84

关于Javascript 对象属性未更新变量集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43429012/

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