Запишите географический многоугольник в файл 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. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.