У меня есть две точки (x 1 , y 1 ) и (x 2 , y 2 ), которые представляют местоположениедвух сущностей в моем пространстве.Я вычисляю евклидово расстояние между ними, используя теорему Пифагора, и все замечательно.Однако, если мое пространство становится конечным, я хочу определить новое кратчайшее расстояние между точками, которые «обвивают» швы карты.Например, если у меня есть точка A как (10, 10)
и точка B как (90,10)
, а моя карта имеет ширину 100 единиц, я хотел бы рассчитать расстояние между A и B как 20 (вне правого края картыи обратно в левый край) вместо 80, что является нормальным евклидовым расстоянием.
Я думаю, что моя проблема в том, что я использую систему координат, которая не совсем подходит для того, что я пытаюсьчтобы сделать, и это действительно моя плоская квадратная карта больше похожа на бесшовные пончик.Будем также благодарны за любые предложения о том, как реализовать систему такого рода и конвертировать туда-сюда из декартовых координат!