Вход
Наше всё
Теги
codebook
无线电组件
Поиск
Опросы
Закон
Четверг
28 ноября
О смысле всего сущего
0xFF
Средства и методы разработки
Мобильная и беспроводная связь
Блошиный рынок
Объявления
Микроконтроллеры
PLD, FPGA, DSP
AVR
PIC
ARM, RISC-V
Технологии
Кибернетика, автоматика, протоколы
Схемы, платы, компоненты
Микроконтроллеры
281139
fk0
, легенда
(31.10.2011 17:52, просмотров: 2152)
Очень мешает скалярное произведение векторов в расчёте угла между двумя векторами (угол = atan2(length(векторное-произведение), скалярное-произведение)). Ибо получается 32-битным, когда всё остальное 16-битное. Как бы обойтись без 32-битности?
[ZX]
Ответить
А рациональная тригонометрия не поможет?
-
Д.ARMоед
(31.10.2011 18:21
,
ссылка
)
Там точно арктангенс? Я всегда считала, что здесь нужен арккосинус.
-
Ксения
(31.10.2011 18:18
)
Вообще достаточно косинуса (но нужно деление 32/16)... Но если угол нужен, то проще сразу арктангенс, или если нет аппаратного деления. Понял, нужен какой-то механизм сдвига, для выравнивания аргументов по левому биту на 16-й позиции. Не знаю
fk0
(27 знак., 31.10.2011 18:28
)
Вообще если косинус константа, то можно всё свести к умножениям и вычитаниям. Ни корней, ни арктангенсов.
-
fk0
(31.10.2011 18:33
)