Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Матрица 3D и поворот (http://www.flasher.ru/forum/showthread.php?t=213264)

Egstond 30.08.2016 22:46

Матрица 3D и поворот
 
Здравствуйте, возник вопрос.
Вот что есть, матрица и ей присвоен поворот по оси Y, допустим -20 градусов
Код AS3:

 
var mat:Matrix3D=new Matrix3D();
mat.appendRotation(-20,Vector3D.Y_AXIS);

Вопрос состоит в том, что допустим у нас есть матрица, к которой были применены некие повороты и нужно узнать итоговое число, на которое она была повернута.

То есть берем матрицу mat, что то с ней делаем и опа, получаем что ответ= -20. Так что с ней нужно сделать чтобы это узнать, кто нить может подсказать ?

Wolsh 30.08.2016 23:24

Код AS3:

                        var mat:Matrix3D=new Matrix3D();
                        mat.appendRotation(-20,Vector3D.Y_AXIS);
                        var v:Vector.<Vector3D> = mat.decompose();
                        trace(v[1].y * 180 / Math.PI); // -20.000001125733135


Egstond 30.08.2016 23:48

Огромное спасибо !!

Добавлено через 45 минут
Что то не так..
Вот у меня есть объект, я хочу его повернуть вокруг своей оси по Y.
Стартовый поворот по формуле =-45, вращаю потихоньку.... угол идет в минус.. -50...-60.. -70.. доходит до -90 и начинает расти.. -80....-70... -45.. (хотя оборот не полный достигаем уже изначального знаечния).. далее он растет до +90, и начинает снова уменьшаться и уже когда доходит до -45 - то вот только сейчас фигура совершила полный оборот вокруг оси.. Получается что имеем 2 одинаковых угла при разном положении фигуры.. как с этим бороться ?

caseyryan 31.08.2016 06:56

потому что углы во флеше измеряются от -180 до +180, вместо привычных 360 (и не только во флеше, кстати)

Egstond 31.08.2016 10:58

тут по ходу от 90 до -90 с циклом.. да, понятно что это замутки 3д.. а привычные от 0 до 360 можно получить ?как нить конвертировать..

Bletraut 01.09.2016 17:56

Цитата:

Сообщение от Egstond (Сообщение 1195917)
тут по ходу от 90 до -90 с циклом.. да, понятно что это замутки 3д.. а привычные от 0 до 360 можно получить ?как нить конвертировать..

Можно, к углу прибавить 180.


Часовой пояс GMT +4, время: 01:41.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.