Запишите географические данные в файл KML
Следующие синтаксисы, в то время как все еще поддержано, не рекомендуются. Используйте kmlwritepoint
вместо этого.
kmlwrite(filename,lat,lon)
kmlwrite(filename,lat,lon,alt)
kmlwrite(filename,S)
kmlwrite(filename,address)
kmlwrite(___,Name,Value)
kmlwrite(
пишут географическая точка, строка или данные о полигоне, хранимые в filename
,S
)S
к файлу, заданному filename
в формате Языка разметки замочной скважины (KML). S
является вектором геоточки, вектором геоформы или геоstruct. kmlwrite
создает KML Placemark в файле и заполняет теги в placemark с данными в S
.
kmlwrite(
записи filename
,address
)address
к файлу заданы filename
в формате KML. address
является скаляром строки или вектором символов, содержащим адресные сведения свободной формы, которые могут включать улицу, город, состояние, страну и/или индекс. Чтобы задать несколько адресов, используйте массив ячеек из символьных векторов или представьте скаляры в виде строки. kmlwrite
создает KML Placemark в файле, устанавливая значение тега адреса. Адрес является альтернативным способом задать точку, вместо того, чтобы использовать широту и долготу.
kmlwrite(___,
задает пары "имя-значение", которые устанавливают дополнительные свойства функции KML. Названия параметра могут быть сокращены и нечувствительные к регистру.Name,Value
)
Возвратите данные о точке в векторе геоточки.
placenames = gpxread('boston_placenames');
Задайте имя файла KML, который вы хотите создать.
filename = 'Boston_Placenames.kml';
Задайте цвета, которые вы хотите использовать с данными о точке.
colors = jet(length(placenames));
Запишите данные о точке в файл, с помощью дополнительных параметров, чтобы задать имена для точек и задать цвета, используемые для значков.
kmlwrite(filename, placenames, 'Name', placenames.Name,'Color',colors );
Считайте функции строки в вектор геоформы.
tracks = gpxread('sample_tracks', 'Index', 1:2);
Задайте имя файла KML, который вы хотите создать.
filename = 'tracks.kml';
Запишите данные о строке в файл, с помощью нескольких дополнительных параметров, чтобы задать цвет и ширину строк, и их имена и описания.
colors = {'red', 'green'}; description = tracks.Metadata.Name; name = {'track1', 'track2'}; kmlwrite(filename, tracks, 'Color', colors, 'LineWidth', 2, ... 'Description', description, 'Name', name);
Считайте географические данные (районы крупнейших европейских городов) из файла форм, включая имена городов. Это возвращает структуру.
latlim = [ 30; 75]; lonlim = [-25; 45]; cities = shaperead('worldcities.shp','UseGeoCoords', true, ... 'BoundingBox', [lonlim, latlim]);
Преобразуйте структуру в вектор геоточки.
cities = geopoint(cities);
Задайте имя файла KML, который вы хотите создать.
filename = 'European_Cities.kml';
Запишите географические данные в файл KML. Используйте дополнительный параметр Имени, чтобы включать имена городов в placemarks. Удалите таблицу Description по умолчанию.
kmlwrite(filename, cities, 'Name', cities.Name, 'Description',{});
Создайте массив ячеек неструктурированных адресов (имена нескольких австралийских городов).
address = {'Perth, Australia', ... 'Melbourne, Australia', ... 'Sydney, Australia'};
Задайте имя файла KML, который вы хотите создать.
filename = 'Australian_Cities.kml';
Запишите неструктурированные адресные сведения в файл KML, с помощью дополнительного параметра Name
, чтобы включать имена городов в placemarks.
kmlwrite(filename, address, 'Name', address);
Считайте данные о полигоне из файла, возвращенного в структуре.
S = shaperead('usastatelo','UseGeoCoords',true);
Преобразуйте структуру в вектор геоформы.
S = geoshape(S);
Запишите данные о полигоне в файл KML, с помощью дополнительных параметров, чтобы задать цвета поверхностей полигона и ребер.
filename = 'usastatelo.kml'; colors = polcmap(length(S)); kmlwrite(filename,S,'Name',S.Name,'FaceColor',colors,'EdgeColor','k')
fileName
Имя выходного файлаИмя выходного файла, заданного как скаляр строки или вектор символов. kmlwrite
записывает файл в текущей папке, если вы не задаете полное имя или относительный путь. Если имя файла включает расширение, это должен быть .kml
.
Типы данных: char | string
S
Географические особенности, чтобы записать в файлГеографические особенности, чтобы записать в файл, заданный как вектор геоточки, вектор геоформы или геоstruct. Поля атрибута S
появляются как таблица в теге Описания Placemark для каждого элемента S
. Поля атрибута появляются в таблице в том же порядке, как они происходят в S
.
Если S
является вектором геоформы, поле Geometry
идентифицирует тип данных: 'point'
, 'line'
или 'polygon'
.
Если S
является геоstruct с полями X
и Y
, kmlwrite
возвращает ошибку.
Если S
содержит допустимые высотные данные, kmlwrite
пишет значения полей в файл как высоты KML и устанавливает высотную интерпретацию на 'relativeToSeaLevel'
. Если S
не содержит высотные данные, kmlwrite
устанавливает высотное поле в файле к 0
и устанавливает высотную интерпретацию на 'clampToGround'
. Высотные данные могут быть в поле, названном или Elevation
, Altitude
или Height
. Если S
содержит поля с больше чем одним из этих имен, kmlwrite
выдает предупреждение и игнорирует высотные поля.
address
— Местоположение KML placemarkМестоположение KML placemark, заданный как скаляр строки, вектор символов или массив ячеек из символьных векторов, содержащий адресные сведения свободной формы, такие как улица, город, состояние и индекс. Если address
является массивом ячеек, каждая ячейка представляет уникальное местоположение.
Типы данных: char
| string
| cell
Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми.
Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение.
Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
'Name','Point Reyes'
Имя
Метка объекта отображена в средстве просмотра'Address N'
, 'Point N'
, 'Line N'
или 'Polygon N'
, где N
является индексом функции. (значение по умолчанию) | представляет скаляр в виде строки | вектор символов | массив ячеек из символьных векторовМаркируйте для объекта отображенный в средстве просмотра, заданном как скаляр строки, вектор символов или массив ячеек из символьных векторов. Если вы задаете скаляр строки или вектор символов, kmlwrite
применяет имя ко всем объектам. Если вектор строки или массив ячеек из символьных векторов, необходимо задать имя для каждой функции. Таким образом, массив ячеек должен быть той же длиной как S
или address
. Следующее описывает поведение по умолчанию для различных функций.
Функция | Имя по умолчанию |
---|---|
Адрес | 'Address N' , где N является индексом функции. |
Точка | 'Point N' , где N является индексом функции. |
Многоточечный | 'Multipoint N' , где N является индексом функции. kmlwrite помещает точки в именованную папку, и каждую точку называют 'Point M' , где M является индексом точки. |
Строка | 'Line N' , где N является индексом функции. Если данные о строке содержат значения NaN , kmlwrite помещает линейные сегменты в папку под названием 'Segment M' , где M является номером линейного сегмента. |
Полигон | 'Polygon N' , где N является индексом функции. Если список вершин полигона содержит несколько внешних звонков, kmlwrite помещает, каждый звенит в папке, маркировал 'Part M' , где M является номером для той функции. |
Типы данных: char
| string
| cell
Описание
Содержимое, которое будет отображено в placemark воздушном шаре описанияСодержимое, которое будет отображено в placemark воздушном шаре описания, заданном как скаляр строки или вектор символов, массив ячеек из символьных векторов или спецификация атрибута. kmlwrite
использует эти данные, чтобы установить значения тегов описания функции. Описание появляется в воздушном шаре описания, сопоставленном с функцией в Google Earth.
Если вы задаете скаляр строки или вектор символов, kmlwrite
применяет описание ко всем объектам.
Если вы задаете вектор строки или массив ячеек из символьных векторов, должна быть одна метка для каждой функции; то есть, это должна быть та же длина asS
или address
.
Элементы описания могут быть или простым текстом или теговый с HTML, повышают. Когда в простом тексте, google Earth применяет основной HTML, форматирующий автоматически. Например, Google Earth заменяет новые строки на теги разрыва строк и заключает допустимые URL в теги привязки, чтобы сделать их гиперссылками. Видеть примеры HTML-тэгов, которые распознаны Google Earth, представлением https://earth.google.com.
Если вы обеспечиваете спецификацию атрибута, поля атрибута отображения S
как таблица в теге описания placemark для каждого элемента S
, в порядке, в котором поля появляются в спецификации. Чтобы создать спецификацию атрибута, вызовите makeattribspec
и затем измените вывод, чтобы удалить атрибуты или изменить поле Format
для одного или нескольких атрибутов. latitude
и координаты longitude
S
не считаются атрибутами. Если включено в спецификацию атрибута, kmlwrite
игнорирует их.
Типы данных: char
| string
| cell
Значок
Имя файла пользовательского значкаИмя файла пользовательского значка, заданного как скаляр строки, вектор символов или массив ячеек из символьных векторов.
Если скаляр строки или вектор символов, kmlwrite
применяет значение ко всем значкам.
Если вектор строки или массив ячеек из символьных векторов, задайте значок для каждой функции; то есть, массив ячеек должен быть той же длиной как S
или address
.
Если скаляр строки или вектор символов являются Интернетом URL, URL должен включать тип протокола.
Если имя файла значка не находится в текущей папке, или в папке на пути MATLAB, задайте полный или относительный путь.
Типы данных: char
| string
| cell
'IconScale'
— Масштабный коэффициент для значкаМасштабный коэффициент для значка, заданного в виде положительного числа или вектора.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
'Color'
— Цвет значков, строк, или поверхностей и ребер полигоновЦвет значков, строк, или поверхностей и ребер полигонов, заданных как Спецификация цветов MATLAB (ColorSpec
), который может быть вектором символов, массивом ячеек или массивом double
со значениями в области значений [0 1]
.
Если скаляр строки или вектор символов, kmlwrite
применяет цвет ко всем функциям
Если вектор строки или массив ячеек из символьных векторов, задайте цвет для каждой функции. Таким образом, массив ячеек должен быть той же длиной как S
или address
.
Если массив double
, задайте M-by-3 массив, где M является той же длиной как S
или address
.
Если S
является геоформой полигона, можно задать 'none'
, который указывает, что полигон не заполнен и не имеет никакого ребра. Кроме того, для полигонов Color
задает цвет поверхностей полигона, если FaceColor
не задан и ребра полигона, если EdgeColor
не задан.
Типы данных: double
| char
| cell
\alpha
Прозрачность значков, строк, или поверхностей и ребер полигонов1
(полностью непрозрачное) (значение по умолчанию) | числовой скаляр или вектор в области значений [0 1]
Прозрачность значков, строк, или поверхностей и ребер полигонов, заданных в виде числа или вектора в области значений [0 1]
. Если скаляр, kmlwrite применяет значение ко всем функциям. Если вектор, задайте значение для каждой функции; то есть, вектор должен быть той же длиной как S
или address
. Если S
является геоформой полигона, kmlwrite
применяет значение ко всем поверхностям полигона, если FaceAlpha
не задан и ребра полигона, если EdgeAlpha
не задан.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
'LineWidth'
Ширина строк и ребер полигона в пикселяхШирина строк и ребер полигона в пикселях, заданных в виде положительного числа или вектора.
Если скаляр, kmlwrite
применяет значение ко всем ребрам полигона.
Если вектор, задайте значение для каждой функции. Таким образом, вектор должен иметь ту же длину как S
.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
'FaceColor'
Цвет поверхностей полигона'none'
Цвет ребер полигона, заданных как Спецификация цветов MATLAB (ColorSpec
). Спецификация цветов может быть вектором символов, массивом ячеек или векторами символов или массивом double
со значениями в range[0 1]
. Если вектор символов, kmlwrite
применяет значение ко всем поверхностям. Если массив ячеек из символьных векторов, задайте значение для каждой поверхности. Таким образом, массив ячеек должен быть той же длиной как S
или address
. Если значение является числовым массивом, это - размер M-by-3, где M является длиной S
или address
. Если S
является геоформой полигона, можно задать значение 'none'
, чтобы указать, что полигон не имеет никакой схемы.
'FaceAlpha'
Прозрачность поверхностей полигона1
(полностью непрозрачное) (значение по умолчанию) | числовой скаляр или вектор в области значений [0 1]
Прозрачность поверхностей полигона, заданных в виде числа или вектора в области значений [0 1]
.
Если скаляр, kmlwrite
применяет значение ко всем поверхностям полигона.
Если вектор, задайте значение для каждой поверхности полигона; то есть, вектор должен быть той же длиной как S
или address
.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
'EdgeColor'
Цвет ребер полигона'none'
Цвет ребер полигона, заданных как Спецификация цветов MATLAB (ColorSpec
). Спецификация цветов может быть вектором символов, массивом ячеек из символьных векторов или массивом double
со значениями в области значений [0 1]
.
Если скаляр, kmlwrite
применяет значение ко всем ребрам полигона.
Если вектор, задайте значение для каждого ребра полигона; то есть, вектор должен быть той же длиной как S
.
Если вы задаете массив double
, размером должен быть M-by-3, где M является длиной S
.
Значение 'none'
указывает, что полигоны не имеют никаких ребер.
EdgeAlpha
Прозрачность ребер полигона1
(полностью непрозрачное) (значение по умолчанию) | числовой скаляр или вектор в области значений [0 1]
Прозрачность ребер полигона, заданных в виде числа или вектора.
Если скаляр, kmlwrite
применяет значение ко всем ребрам полигона.
Если вектор, y задает значение для каждого ребра полигона; то есть, вектор должен быть той же длиной как S
. Если вы не задаете EdgeAlpha
, kmlwrite
использует значение Alpha
, если задано. Если вы не задаете ни одно значение, kmlwrite
использует значение по умолчанию (полностью непрозрачный) 1
.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
'Extrude'
— Соедините полигоны с землейfalse
(значение по умолчанию) | true
| логический или числовой скаляр | логический или числовой векторСоедините полигон с землей, заданной в виде логического или числа, true
(1
) или false
(0
) или вектор. Если скаляр, значения применяются ко всем полигонам. Если вектор, задайте значение для каждого полигона; то есть, вектор должен быть той же длиной как S
или address
.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | логический
'CutPolygons'
— Сократите части полигонаtrue
(значение по умолчанию) | false
Сократите части полигона, заданные в виде логического или числа true
(1
) или false
(0
). Если true
, kmlwrite
сокращает части полигона в значении PolygonCutMeridian
. Если true
и части полигона требуют сокращения, kmlwrite
возвращает ошибку, если высотные значения неоднородны.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| logical
'PolygonCutMeridian'
— Меридиан, где части полигона сокращаются180
(значение по умолчанию) | числовой скалярМеридиан, где части полигона сокращаются, задал как числовой скаляр.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
'AltitudeMode'
— Интерпретация высотных значений'clampToGround'
| 'relativeToGround'
| 'relativeToSeaLevel'
Интерпретация высотных значений, заданных как одно из следующих значений:
Значение | Описание |
---|---|
'clampToGround' | Проигнорируйте высотные значения и установите функцию на земле. Это - интерпретация по умолчанию, когда вы не задаете высотные значения. |
'relativeToGround' | Установите высотные значения относительно фактического наземного повышения конкретной функции |
'relativeToSeaLevel' | Установите высотные значения относительно уровня моря, независимо от фактических значений повышения ландшафта ниже функции. (Названный 'absolute' в спецификации KML.) Это - интерпретация по умолчанию, когда вы задаете высотные значения. |
Типы данных: char | string
'LookAt'
— Положение виртуальной камеры (глаз) относительно просматриваемого объектаПоложение виртуальной камеры (глаз) относительно объекта, просматриваемого, заданного как вектор геоточки. Поля вектора геоточки, описанного ниже, задают представление. LookAt
ограничивается рассмотрением вниз функции. Чтобы наклонить виртуальную камеру, чтобы изучить выше горизонта небо, используйте параметр Camera
.
PropertyName | Описание | Тип данных |
---|---|---|
Latitude | Широта объекта камера смотрит на в градусах | Скаляр дважды, от-90 до 90 |
Longitude | Долгота объекта камера смотрит на в градусах | Скаляр дважды, от −180 до 180 |
Altitude | Высота объекта камера смотрит на от поверхности Земли в метрах | Числовой скаляр |
Heading | Направление камеры (азимут), в градусах (дополнительный) | Скалярный числовой [0 360] , 0 по умолчанию (истинный Север) |
Tilt | Угол между направлением положения LookAt и нормальным на поверхность Земли, в градусах (дополнительной) | Скалярный числовой [0 90] , 0 по умолчанию (непосредственно выше) |
Range | Расстояние в метрах от объекта, заданного latitude , longitude и altitude к местоположению камеры. | Скалярный числовой, 0 по умолчанию |
AltitudeMode | Интерпретация высотного (дополнительного) значения камеры | 'relativeToSeaLevel' , 'clampToGround' , 'relativeToGround' (по умолчанию) |
'Camera'
— Положение виртуальной камеры относительно поверхности Земли Положение виртуальной камеры (глаз) относительно поверхности Земли, заданной как вектор геоточки. Поля вектора геоточки, описанного ниже, задают представление. Camera
обеспечивает полные шесть управления степенями свободы представлением, таким образом, можно расположить камеру в пробел и затем вращать его вокруг x-, y- и осей z-. Можно наклонить поле зрения камеры так, чтобы вы изучили выше горизонта небо.
PropertyName | Описание | Тип данных |
---|---|---|
Latitude | Широта виртуальной камеры (глаз), в градусах | Скаляр дважды, в области значений [-90 90] |
Longitude | Долгота виртуальной камеры, в градусах | Скаляр дважды, в области значений [-180 180] . |
Altitude | Расстояние виртуальной камеры от поверхности Земли, в метрах | Числовой скаляр |
Heading | Направление (азимут), в градусах (дополнительный) | Скалярный числовой [0 360] , 0 по умолчанию (истинный Север) |
Tilt | Вращение камеры вокруг Оси X, в градусах (дополнительной) | Скалярный числовой [0 180] , 0 по умолчанию (непосредственно выше) |
Roll | Вращение камеры в градусах вокруг (дополнительной) оси Z | Числовой скаляр, в области значений [-180 180] , 0 по умолчанию |
AltitudeMode | Задает, как высота камеры интерпретирована (дополнительная) | 'relativeToSeaLevel' , 'clampToGround' , 'relativeToGround' (значение по умолчанию) |
Можно просмотреть файлы KML с браузером Google Earth™, который должен быть установлен на компьютере.
Для Windows используйте функцию winopen
:
winopen(filename)
Для Linux, если имя файла является частичным путем, используют следующие команды:
cmd = 'googleearth ';
fullfilename = fullfile(pwd, filename);
system([cmd fullfilename])
Для Mac, если имя файла является частичным путем, используют следующие команды:
cmd = 'open -a Google\ Earth '
fullfilename = fullfile(pwd, filename);
system([cmd fullfilename])
Вы можете также файлы представления KML с браузером Google Maps™. Файл должен быть расположен на веб-сервере, который доступен из Интернета. Частный сервер интранет не будет достаточен, потому что сервер Google должен смочь получить доступ к URL, который вы обеспечиваете. Следующее является шаблоном для использования Google Maps. Замените your-web-server-path
на действительное значение.
GMAPS_URL = 'http://maps.google.com/maps?q='; KML_URL = 'http://your-web-server-path'; web([GMAPS_URL KML_URL])
kmlwriteline
| kmlwritepoint
| kmlwritepolygon
| makeattribspec
| shapewrite
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.