Запишите географический многоугольник в файл KML
kmlwritepolygon( пишут географические данные о широте и долготе, которые задают вершины многоугольника к файлу, заданному filename,latitude,longitude)filename в формате Языка разметки замочной скважины (KML). kmlwritepolygon создает KML Placemark элемент для каждого многоугольника. По умолчанию, kmlwritepolygon устанавливает высотное значение, сопоставленное с вершинами к 0 и устанавливает высотную интерпретацию на 'clampToGround'.
kmlwritepolygon( пишут данные о многоугольнике в файл KML, включая filename,latitude,longitude,altitude)altitude значения для каждой вершины. altitude может быть скалярное значение, в этом случае kmlwritepolygon использование это как значение для каждой вершины. Если altitude вектор, необходимо задать значение для каждой вершины; то есть, altitude должна быть та же длина как latitude и longitude. По умолчанию, когда вы задаете высотные значения, kmlwritepolygon устанавливает высотную интерпретацию to'relativeToSeaLevel'.
kmlwritepolygon(___, задает пары "имя-значение", которые устанавливают дополнительные свойства функции KML. Названия параметра могут быть сокращены и не чувствительные к регистру.Name,Value)
Загрузите данные о широте и долготе, которые задают береговые линии континентов.
load coastlinesЗадайте имя файла выхода KML, который вы хотите создать.
filename = 'coastlines.kml';Запишите данные о береговой линии в файл как многоугольник.
kmlwritepolygon(filename,coastlat,coastlon)
Задайте координаты широты и долготы центра звонков. В данном примере координаты задают Эйфелеву башню.
lat0 = 48.858288; lon0 = 2.294548;
Задайте внутренний радиус и внешний радиус двух маленьких кругов. Примеры вызывают poly2ccw изменить направление порядка вершины второго круга к против часовой стрелки. Эта смена направления необходима, чтобы задать пробел между этими двумя кругами как кольцевой многоугольник.
outerRadius = .02; innerRadius = .01; [lat1,lon1] = scircle1(lat0,lon0,outerRadius); [lat2,lon2] = scircle1(lat0,lon0,innerRadius); [lon2,lat2] = poly2ccw(lon2,lat2); lat = [lat1; NaN; lat2]; lon = [lon1; NaN; lon2]; alt = 500;
Задайте имя файла выхода KML и запишите данные в файл.
filename = 'EiffelTower.kml'; kmlwritepolygon(filename,lat,lon,alt, ... 'EdgeColor','g','FaceColor','c','FaceAlpha',.5)
Задайте координаты широты и долготы, которые задают вершины многоугольника. В данном примере задайте значения долготы, которые охватывают 180 меридианов степени.
lat = [0 1 1 0 0]; lon = [179.5 179.5 -179.5 -179.5 179.5]; h = 5000; alt = ones(1,length(lat)) * h; filename = 'cross180.kml'; kmlwritepolygon(filename,lat,lon,alt,'EdgeColor','r','FaceColor','w')
По умолчанию многоугольник содержит шов в 180 метках степени. Чтобы удалить этот шов, установите PolygonCutMeridian к 0.
filename = 'noseam.kml'; kmlwritepolygon(filename,lat,lon,alt,'EdgeColor','r', ... 'FaceColor','w','PolygonCutMeridian',0);
Чтобы отобразить пандус безо шва, перенесите значения долготы к области значений [0 360], и набор CutPolygon к false. Используйте Extrude параметр, чтобы соединить многоугольник с основанием для лучшей видимости.
filename = 'ramp.kml'; lon360 = wrapTo360(lon); altramp = [0 0 h h 0]; kmlwritepolygon(filename,lat,lon360,altramp,'EdgeColor','r', ... 'FaceColor','w','CutPolygons',false,'Extrude',true);
filename — Имя выходного файлаИмя выходного файла в виде строкового скаляра или вектора символов. kmlwritepolygon создает файл в текущей папке, если вы не задаете полное имя или относительный путь. Если имя файла включает расширение, это должен быть .kml.
Типы данных: char | string
latitude — Широты вершин многоугольника[-90 90]Широты вершин многоугольника в виде вектора в области значений [-90 90].
Типы данных: single | double
longitude — Долгота вершин многоугольника[-180, 180]Долгота вершин многоугольника в виде вектора в области значений [-180, 180].
Типы данных: single | double
altitude — Высота вершин многоугольникаВысота вершин многоугольника в виде скаляра или вектора. Единица измерения является метрами.
Типы данных: single | double
Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
kmlwritepolygon(filename,lat,lon,alt,'EdgeColor','g','FaceColor','c','FaceAlpha',.5)'Name' — Метка, отображенная в средстве просмотра для многоугольника'Polygon 1' (значение по умолчанию) | строковый скаляр | вектор символовМетка, отображенная в средстве просмотра для многоугольника в виде разделенной запятой пары, состоящей из 'Name' и строковый скаляр или вектор символов. Если список вершин содержит несколько внешних звонков, kmlwritepolygon создает папку со значением Name и каждый внешний звонок пометил 'Part N' где N варьируется от 1 к количеству внешних звонков.
Типы данных: char | string
'Description' — Содержимое, которое будет отображено в воздушном шаре описания многоугольникаСодержимое, которое будет отображено в воздушном шаре описания многоугольника в виде разделенной запятой пары, состоящей из 'Description' и строковый скаляр или вектор символов. Содержимое появляется в воздушном шаре описания, когда вы кликаете или по имени функции в панели Гугл Ерс-Плэйсез или по многоугольнику в окне средства просмотра.
Элементами описания может быть или простой текст или разметка HTML. Когда это - простой текст, Google Earth применяет основное форматирование, заменяя новые строки на теги разрыва строк и заключая допустимые URL с тегами привязки, чтобы сделать их гиперссылками. Чтобы видеть примеры HTML-тэгов, которые распознает Google Earth, см. https://earth.google.com.
Типы данных: char | string
'FaceColor' — Цвет поверхности многоугольникаColorSpecЦвет многоугольника стоит в виде разделенной запятой пары, состоящей из 'FaceColor' и MATLAB® Color Specification (ColorSpec). Можно задать вектор символов, скалярный массив ячеек, содержащий вектор символов, или 1 3 вектор doubles со значениями в области значений [0 1]. Чтобы создать многоугольник, который не заполнен, задайте значение 'none'.
Типы данных: double | char | cell
'FaceAlpha' — Прозрачность поверхности многоугольника (значение по умолчанию) | числовой скаляр в области значений [0 1]Прозрачность многоугольника стоит в виде разделенной запятой пары, состоящей из 'FaceAlpha' и числовой скаляр в области значений [0 1]. Значение по умолчанию, 1, указывает, что поверхность полностью непрозрачна.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
'EdgeColor' — Цвет ребер многоугольникаЦвет ребра многоугольника в виде разделенной запятой пары, состоящей из 'EdgeColor' и спецификация цветов MATLAB (ColorSpec). Можно задать вектор символов, скалярный массив ячеек, содержащий вектор символов, или 1 3 вектор doubles со значениями между 0 и 1. Чтобы указать, что многоугольник не имеет никакой схемы, задайте значение 'none'.
Типы данных: double | char | cell
'EdgeAlpha' — Прозрачность ребер многоугольника[0 1]Прозрачность ребра многоугольника в виде разделенной запятой пары, состоящей из 'EdgeAlpha' и числовой скаляр в области значений [0 1]. Значение по умолчанию, 1, указывает, что ребро полностью непрозрачно.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
'LineWidth' — Ширина ребра многоугольника в пикселяхШирина ребра многоугольника в пикселях в виде разделенной запятой пары, состоящей из 'LineWidth' и положительный числовой скаляр.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
'Extrude' — Соедините многоугольник с землейfalse (значение по умолчанию) | trueСоедините многоугольник с землей в виде разделенной запятой пары, состоящей из 'Extrude' и логическое скалярное или числовое значение true(1 ) или false(0 ).
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical
'CutPolygons' — Сократите части многоугольникаtrue (значение по умолчанию) | falseСократите части многоугольника в виде разделенной запятой пары, состоящей из 'CutPolygons' и логическое скалярное или числовое значение true(1 ) или false(0 ). Если true, kmlwritepolygon многоугольники сокращений в меридиане заданы PolygonCutMeridian. kmlwritepolygon возвращает ошибку, если вы устанавливаете это на true, части многоугольника требуют сокращения, и высотные значения неоднородны.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical
'PolygonCutMeridian' — Меридиан, где части многоугольника сокращаются (значение по умолчанию) | числовой скалярМеридиан, где части многоугольника сокращаются в виде разделенной запятой пары, состоящей из 'PolygonCutMeridian' и скалярное числовое значение.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
'AltitudeMode' — Интерпретация высотных значений'clampToGround' | 'relativeToGround' | 'relativeToSeaLevel'Интерпретация высотных значений в виде разделенной запятой пары, состоящей из 'AltitudeMode' и любое из следующих значений:
Значение | Значение |
|---|---|
| Проигнорируйте высотные значения и установите функцию на земле. Это значение является интерпретацией по умолчанию, когда вы не задаете |
| Установите высотные значения относительно фактического наземного вертикального изменения конкретной функции. |
'relativeToSeaLevel' | Установите высотные значения относительно уровня моря, независимо от фактических значений вертикального изменения ландшафта ниже функции. Это значение является интерпретацией по умолчанию, когда вы задаете высотные значения. В терминологии KML эта интерпретация называется 'absolute'. |
Типы данных: char
'LookAt' — Положение виртуальной камеры (глаз) относительно просматриваемого объектаПоложение виртуальной камеры (глаз) относительно объекта, просматриваемого в виде разделенной запятой пары, состоящей из 'PLookAt' и вектор геоточки. LookAt параметр задает виртуальную камеру, которая просматривает многоугольник. Поля вектора геоточки задают представление, обрисованное в общих чертах в приведенной ниже таблице. LookAt может только вниз посмотреть на функцию. Чтобы наклонить виртуальную камеру, чтобы изучить выше горизонта небо, используйте Camera параметр.
Поле | Значение | Значение |
|---|---|---|
| Широта точки камера смотрит на в градусах | Скалярный double |
| Долгота точки камера смотрит на в градусах | Скалярный double |
| Высота точки камера смотрит на в (дополнительных) метрах | Скалярное числовое значение по умолчанию: 0 |
| Направление камеры (азимут), в градусах (дополнительный) | Скаляр, числовой [0 360] значение по умолчанию 0 |
| Угол между направлением позиции LookAt и нормальным на поверхность (дополнительной) Земли | Скаляр, числовой [0 90] значение по умолчанию: 0 |
| Расстояние в метрах от точки до позиции LookAt | Числовой скаляр |
| Задает, как высота интерпретирована для (дополнительной) точки LookAt | 'relativeToSeaLevel', 'clampToGround', (значение по умолчанию), 'relativeToGround' |
'Camera' — Положение и направление просмотра виртуальной камеры относительно поверхности ЗемлиПоложение и направление просмотра камеры относительно поверхности Земли в виде разделенной запятой пары, состоящей из 'Camera' и вектор геоточки. Вектор содержит следующие поля. Значение камеры обеспечивает полные шесть управления степеней свободы представлением, таким образом, можно позиционировать камеру на пробеле и затем вращать его вокруг X, Y и осей Z. Самое главное можно наклонить поле зрения камеры, чтобы изучить выше горизонта небо.
Поле | Значение | Значение |
|---|---|---|
| Широта точки глаза (виртуальная камера), заданный в градусах | Скалярный double |
| Долгота точки глаза (виртуальная камера), заданный в градусах | Скалярный double |
| Расстояние камеры от поверхности Земли, заданной в метрах | Скалярное числовое значение по умолчанию: 0 |
| Направление камеры (азимут) в градусах (Необязательно) | Скаляр, числовой [0 360] значение по умолчанию 0 |
| Вращение камеры вокруг оси X, заданной в градусах (Необязательно) | Скаляр, числовой [0 180] значение по умолчанию: 0 |
| Вращение камеры вокруг оси Z, заданной в градусах (Необязательно) | Скаляр, числовой, по умолчанию: 0 |
| Задает как | 'relativeToSeaLevel', 'clampToGround', (значение по умолчанию), 'relativeToGround' |
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.