Я пытался на некоторое время вращать куб вокруг оси мира, но он не дает точных результатов. Ответ на мой последний вопрос Rotate object around world axis with tween.js помог мне получить поворот, но не так, как я был expecting.I я используюТочное вращение вокруг оси мира с помощью Tween
var cubeAngle = 0;
var start = {angle: cubeAngle};
var end = {angle: cubeAngle + 90};
var tween = new TWEEN.Tween(start)
.to(end, 300)
.easing(TWEEN.Easing.Exponential.InOut)
.onUpdate(function(){
cubeAngle=this.angle;
rotateAroundWorldAxis(cube[1], new THREE.Vector3(0,1,0),degreeToRadians(cubeAngle));
})
.start()
, чтобы повернуть его, но как-то он не получает право angles.What я обнаружил, что вместо добавления 90 к cubeAngle в полной мере 300 миллисекунд, это добавляет 90 к cubeAngle каждые миллисекунды длительностью 300 миллисекунд, и поэтому он вращается намного больше, чем мне нужно.
После некоторого удара и попытки я нашел совпадение небольшого значения, чтобы добавить к cubeAngle и время, чтобы повернуть его на 90 градусов, но каждый раз, когда я перезагружаю страницу и нажимаю для поворота (как я использую событие click), она вращается по-разному на несколько градусов.
У меня есть screenshots, чтобы показать это. Иногда разница небольшая, но иногда она слишком заметна, и поскольку мне нужно несколько оборотов, поэтому в конце она меняет много. Так, что вызывает это и как это сделать правильно способ получить точный результат?
Удивительно, Точно, что я хотел, чтобы снова помочь вам! –