Преобразование пикселей в сферические координаты, их перемещение и последующее преобразование обратно в пиксели без примPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Преобразование пикселей в сферические координаты, их перемещение и последующее преобразование обратно в пиксели без прим

Сообщение Anonymous »

Я пытаюсь переместить фигуру по равнопрямоугольной проекции, преобразуя пиксели в сферические координаты, перемещая их, а затем преобразуя обратно. В моем случае я не могу просто изменить проекцию.
Это то, чего я пытаюсь достичь:
Изображение

Когда сфера в трехмерном пространстве выглядит так:
Изображение

Вот код для перемещение точек:

Код: Выделить всё

def __move_point(point, width, height, dx, dy): # dx and dy are in degrees
lat, long = __convert_to_lat_long(point[0], point[1], width, height)

new_lat = lat + dy
new_long = long - dx

new_lat = np.clip(new_lat, -90, 90) # np is numpy
if new_long < -180:
new_long += 360
elif new_long > 180:
new_long -= 360

return __convert_to_xy(new_lat, new_long, width, height)

def __convert_to_lat_long(x, y, width, height):
latitude = (0.5 - (y / height)) * 180
longitude = ((x / width) - 0.5) * 360
return (latitude, longitude)

def __convert_to_xy(lat, long, width, height):
x = (long / 360 + 0.5) * width
y = (0.5 - lat / 180) * height
return (int(x), int(y))
Однако это не вызывает никаких полярных искажений, а только перемещает форму вверх/вниз. Изображение перед:
Изображение

и после запуска кода:
Изображение

Существует много информации о том, как это сделать с декартовыми координатами, но я Я намеренно не использую декартовы координаты.
Что я делаю не так?

Подробнее здесь: https://stackoverflow.com/questions/787 ... erting-the
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»