Преобразование заданных величин в другую систему базовых единиц

Я пытаюсь использовать boost-unit для одного из моих проектов. В этом проекте несколько величин, таких как скорость, ускорение, угловая скорость, представлены базовыми единицами системы SI. (м / с, м / с ^ 2, рад / с ^ 2)

Пользователь использует графический интерфейс для отображения этих величин. Допустим, угловая скорость. Графический интерфейс должен позволять пользователю динамически менять базовые блоки, где у него есть опции:

Длина: м, см, мм

Время: с, мс, мин, ч

Угол: рад, град

Для того, чтобы использовать boost-unit для моего проекта мне нужна общая функция, преобразующая количество как 5*m*s^-2*rad в 5*1000/M_PI*180*mm*s^2*deg,

Но я полностью потерян, что может быть лучшим подходом для написания этой функции.

Я думаю, что это должно быть что-то вроде:

template<typename H1, typename H2, typename U, typename V>
quantity<V> convert(const quantity<U>& quantity);

куда H1 а также H2 имеют тип homogeneous_system, что можно построить make_system,

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector