第一點(diǎn) 物體的rotation的旋轉(zhuǎn)屬性是相對(duì)與該物體的本身坐標(biāo)系而言的蠢箩,物體的rotation就是Euler歐拉角拱层,但是會(huì)存在萬(wàn)向節(jié)死鎖的問題虹菲。
第二點(diǎn) three.js中提供了相關(guān)的方法rotateOnAxis(axis,angle),該方法需要注意的是angle是相對(duì)于物體之前狀態(tài)的旋轉(zhuǎn)角度憋肖,也就是增加角度寿酌;另外一點(diǎn)需要注意的是axis參數(shù)向量是相對(duì)物體本身坐標(biāo)系的胰苏,且為單位向量,通過調(diào)用.normalize()得到單位向量;rotateOnAxis方法其實(shí)也就是調(diào)用Quaternion對(duì)象的setFromAxisAngle方法
第三點(diǎn) 構(gòu)建旋轉(zhuǎn)矩陣醇疼,方法有:1硕并、makeRotationAxis(axis,angle)方法生成繞任意軸轉(zhuǎn)angle弧度的旋轉(zhuǎn)矩陣 2法焰、new THREE.Matrix4().makeBasis(axisX, axisY, axisZ).setPosition(point);構(gòu)建矩陣 之后將物體的quaternion應(yīng)用setFromRotationMatrix