Реализовал построение графиков функций вида y=... на canvas.
Не могу решить одну проблему, выявление асимптоты функции y=atan(1/x).
В точке ноль выдаёт числовое значение, т.е. в javascript код Math.atan(1/0) выдаёт значение 1.5707963267948966, при том что Math.tan(1/0) выдаёт NaN, который можно обработать.
Как возможно обойти эту особенность javascript?
Подходящим для меня решением является ответ Ильи Шатохина. Я его отметил как решение.
Мне нужно было обработать точку разрыва. Возможно я определяю асимптоту не корректно с математической точки зрения, но как сделать в js иначе, я не знаю. Все функции обрабатываются корректно, кроме atan, может ещё некоторых.
Скажи, а зачем?) Человек получил арктангенс бесконечности равным 90°. Это — правильный результат. Какая тут может быть особенность, кроме странного желания ТС?)
mlsedov: Точки разрыва чего? Если графика арктангенса, то это нужно делать по аргументу, а не по значению.
Мне вот интересно, а с арксинусом вы как поступаете?)
вводимые функции приводятся к выполняемому коду с помощью функции eval, который при этом находится в with(Math){ }. Чтобы получить аргумент, видимо придётся парсить введённую строку. С арксинусом специально ничего не делаю, во всяком случае Math.asin(1/0) выдаёт NaN. С тригонометрией не очень лажу, фундаментального понимания нет.