Определите расположение между 2 параллельными линиями, используя отсортированные массивы (в Python) - PullRequest
0 голосов
/ 27 апреля 2020

У меня есть набор параллельных линий. У меня тоже есть точка. Я хотел определить, между какими линиями находится точка.

enter image description here

С КРАСНЫМИ Х на изображении выше ответ, который я хотел получить, был 0,618 (5175.0)> X> .786 (5148) В действительности, ответ (ы) будет: 0,618 (5175,0) и 0,786 (5148)

Я смог сделать это с помощью NUMPY "searchsorted функциональность. Я создал массив «уровней» и затем выполнил команду ниже

       left_side = np.searchsorted(levels, find_value, side='left')

для верхнего значения

interval_value  = (levels[left_side + 1]

для нижнего значения:

interval_value  = (levels[left_side - 1]

Кажется, все в порядке.

Сейчас я пытаюсь сделать то же самое, за исключением того, что линии находятся под углом

enter image description here

В этом случае я ищу значения, где находятся красные крестики. В этом случае ось X - это время, а ось Y - это цена. Чем дольше время, тем выше цена. Так как у меня есть доступ к Углу (в градусах), я подумал об использовании какой-либо вещи с Грехом, Косом или Касательной

enter image description here

Что лучше способ подойти к этой проблеме? Можно ли еще использовать Numpy?

...