MATLAB: save geospatial polygons in a *.kml file

After generating the poligons vertices and defined their faces, I've plotted the polygons with the patch function:
pp = patch('Faces',faces,'Vertices',vertices);
and then I've defined the patches colors:
set(pp,'FaceColor','flat',...
'FaceVertexCData',cdata,...
'CDataMapping','direct',...
'EdgeAlpha',.4,'EdgeColor','b')
Getting the following Matlab plot:
Now, I would like to visualize these polygons with Google Earth, but I don't know how.
I've tried the function kmlwrite, but I could pass to it only the polygons' vertices's coordinates, generating a kml file with all points and no polygon, as shown below:
The question is: wow can I write geospatial polygons (and their colors) into a .kml file with kmlwrite function?
Thanks

 Respuesta aceptada

Alfredo
Alfredo el 5 de Abr. de 2013

0 votos

I've found the solution of my problem in the KML ToolBox:
< https://www.mathworks.com/matlabcentral/fileexchange/34694-kml-toolbox-v2-3 https://www.mathworks.com/matlabcentral/fileexchange/34694-kml-toolbox-v2-3>
in particular in the k.poly3 function.

1 comentario

T S
T S el 10 de Oct. de 2017
How did you enter the 'Faces' data into the k.poly3 function? It appears to only accept X,Y,Z coordinates along with a few visual modifiers.

Iniciar sesión para comentar.

Más respuestas (2)

Rob Comer
Rob Comer el 28 de En. de 2020

0 votos

With Mapping Toolbox and MATLAB R2016a or later, you can use the kmlwritepolygon function.

1 comentario

Polsak Tothong
Polsak Tothong el 14 de Oct. de 2021
How can we use kmlwritepolygon when input have multiple polygons. Matlab function seems to write one polygons at a time only

Iniciar sesión para comentar.

Rob Comer
Rob Comer el 14 de Oct. de 2021

0 votos

See the example Write Polygon Data to KML File on the kmlwrite reference page.

Productos

Preguntada:

el 5 de Mzo. de 2013

Respondida:

el 14 de Oct. de 2021

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by