Я пытаюсь повернуть многоугольник, используя библиотеку pytohn simplekml вокруг его центральной точки, используя значения широты и долготы - PullRequest
0 голосов
/ 24 июня 2019

Я пытаюсь повернуть серию полигонов, используя значения lat и long в библиотеке python's simplekml.У меня есть информация о курсе (от 0 до 360, 0 - прямо на север, 90 - прямо на восток ...).Но я понятия не имею, как повернуть многоугольник

. Я пробовал много переводов, чтобы сместить каждое значение long и lat, чтобы приспособиться к повороту, но я не могу сделать это правильно.

    pol.outerboundaryis = [(latlong[index][1], latlong[index][0] + half_planter_width/ft_to_dd),
                           (latlong[index + 1][1], latlong[index + 1][0] + half_planter_width/ft_to_dd),
                           (latlong[index + 1][1], latlong[index + 1][0] - half_planter_width/ft_to_dd),
                           (latlong[index][1], latlong[index][0] - half_planter_width/ft_to_dd),
                           (latlong[index][1], latlong[index][0] + half_planter_width/ft_to_dd)]

Каждый многоугольник должен иметь смещение к каждой длинной координате широты при повороте машины.Но этот код не делает этого.

    rotation = 45
    rot_lat = rotation/180
    rot_lon = rotation/360

    pol.outerboundaryis = [(latlong[index][1] + rot_lon, latlong[index][0] + half_planter_width/ft_to_dd + rot_lat),
                           (latlong[index + 1][1] + rot_lon, latlong[index + 1][0] + half_planter_width/ft_to_dd + rot_lat),
                           (latlong[index + 1][1] + rot_lon, latlong[index + 1][0] - half_planter_width/ft_to_dd + rot_lat),
                           (latlong[index][1] + rot_lon, latlong[index][0] - half_planter_width/ft_to_dd + rot_lat),
                           (latlong[index][1] + rot_lon, latlong[index][0] + half_planter_width/ft_to_dd + rot_lat)]
...