Отобразите многоугольник на земном шаре путем преобразования многоугольника в сетку данных.
Создайте демонстрационный многоугольник, который содержит отверстие и опирается на поверхность земного шара. Для этого сгенерируйте вершины его внешних и внутренних контуров с помощью outlinegeoquad
функция. Задайте географические пределы в качестве первых двух аргументов и вершины, располагающей с интервалами в градусах в качестве следующих двух аргументов. Инвертируйте порядок внутренних граничных вершин с помощью flip
функция, таким образом, они находятся в против часовой стрелки порядок.
Объедините вершины в один список путем разделения контуров NaN
значения.
Векторы lat
и lon
представляйте контуры многоугольника, которые содержат отверстие. Отобразите контуры на земном шаре как заполненный многоугольник путем преобразования многоугольника в сетку данных.
Для этого создайте географический объект ссылки ячеек для земного шара и сетки из единиц. Замените элементы сетки с данными о многоугольнике с помощью vec2mtx
функция. Новая сетка содержит 0s, чтобы указать на внутреннюю область многоугольника, 1 с, чтобы указать на контуры, и 2 с, чтобы указать на внешнюю область многоугольника.
Создайте земной шар с помощью axesm
функция. Отобразите сетку данных как изображение с помощью geoshow
функция. Настройте палитру, таким образом, внутренняя область многоугольника является фиолетовой, и внешняя область является белой. Измените угол обзора камеры с помощью view
функция, таким образом, многоугольник отображен на близкой стороне земного шара.
Внешний вид многоугольников на земном шаре зависит от угла обзора камеры и прозрачности земного шара. Например, сделайте земной шар немного прозрачным использованием alpha
функция.
Когда вы просматриваете многоугольник с близкой стороны земного шара, внешние граничные вершины появляются в по часовой стрелке порядок. Когда вы просматриваете многоугольник с противоположной стороны земного шара, внешние граничные вершины появляются в против часовой стрелки порядок. Когда вы вращаете земной шар, таким образом, многоугольник появляется и на близкой стороне и на противоположной стороне, затем многоугольник, кажется, пересекает себя.