alexPec 6 November 19, 2022 Posted November 19, 2022 · Report post Всем доброго дня! Запускаю IP, и что-то у меня не сходятся ответы. Параметры: Translate Вход 10 бит (fix 10_8) - и X и Y Выход - 11 бит (Mag - fix11_9, phase - fix 11_8) Выход - Radians, Coarse rotation - выкл, No scale compensation. Даю на вход X=0x40, Y=0x40, на выходе получаю Mag = 0xd2, Phase = 0xc9. Тут вроде все нормально, 0xc9/256 = 0.785 рад = 45 градусов. Даю на вход X=0x20, Y=0x40, на выходе получаю Mag = 0xa4, Phase = 0xf5. 0xf5/256 = 0,957 рад. atan (0x40/0x20) = 1,107рад. Далее, для любого вектора, у которого угол больше 0,957 рад. кордик выдает угол 0xf5 = 0,957рад. Проверял только для квадранта X+ Y+, но и тут уже не сходится. Т.е. при повороте вектора фаза растет до 0,957 а дальше упирается в это значение. При этом длина вектора считается нормально. Пробовал поставить в настройках кордика Scalеd radians - то же самое, только результат промасштабирован от не от -pi до pi, а от -1 до 1. И значение, в которое упирается фаза, уже не 0,957, а примерно 0,3. Что делаю не так? Quote Share this post Link to post Share on other sites More sharing options...
alexPec 6 November 19, 2022 Posted November 19, 2022 · Report post Все, разобрался. Coarse rotate надо включить. Quote Share this post Link to post Share on other sites More sharing options...