Я использую .net micro framework 4.1. Нет никаких гониометрических функций, но мне нужно рассчитать расстояние между двумя точками на Eatrh. Может ли кто-нибудь помочь мне с этой проблемой? Я считаю, что лучшим решением является программирование функций вручную, но я не знаю, как это сделать.Программа sinus, cosinus, arc cos и arc sin вручную
ответ
Нет необходимости создавать собственную реализацию тригонометрических функций, поскольку они уже существуют в классе Math
, доступном в версиях .NET Micro Framework версии 2.0, 2.5, 3.0, 4.0, 4.1 и 4.2.
См., Например, Math.Sin метод.
, это правда, но в качестве аргумента требуется только int, и когда мне нужно вычислять долготу и широту Мне нужен двойной или плавающий. –
@ JanHolešínský Вы можете интерполировать между значениями, возвращаемыми из 'Math.Sin', разделив широту и долготу на целые и дробные части. Используйте целую часть (и целочисленную часть + 1), чтобы получить значения 'Math.Sin', а затем используйте дробную часть для интерполяции между ними. – Kyle
Да, это правда, но мне нужно как можно быстрее считать синус, косинус и arcus cosinus. Считаете ли вы, что интерполяция - хорошая идея? –
если у вас есть устройство GHI, которое вы можете использовать для NETMF 4.1 библиотеки GHIElectronics NETMF MathEx.
Хотя эта ссылка может ответить на вопрос, лучше включить здесь основные части ответа и предоставить ссылку для справки. Ответные ссылки могут стать недействительными, если связанная страница изменится. - [Из обзора] (/ review/low-quality-posts/18799212) –
Вы пробовали смотреть на математическое определение синусового COSINUS и tanges? Если правильно помнить, экспоненциальное определение для Sinus равно 1/2i * (e^(i + x) - e^- (i + x)) –