prueba

Crear capas en Google Maps. Foro de Programación de Google Earth y Maps 🗺️ k08 🗺️

Foro de Programación de Google Earth y Maps Foro de Programación de Google Earth y Maps: Foro de Programación con las APIs de Google: Google Earth, Google Maps, KML, Aplicaciones Moviles
Autor Mensaje

Imagen: Robierzo
Usuario Habitual

Usuario Habitual
Registrado: 25-02-2013
Mensajes: 22
Ubicación: La Coruña
Visitar sitio web del autor
Votos: 0 👍
Enlaces Asunto: Re: Crear capas
Publicado:
Responder citando
Hola polifemo. jejeje. Qué grande es esto de internet y qué pequeño. Efectivamente soy el mismo robierzo que el de cartesia. Verás, la aplicación que quiero hacer es en Lisp. No importa que seas un profano en eso, lo importante es darle el formato correcto al KML para que funcione. El archivo que he colgado lo he hecho yo a mano. Este es el primer paso para tener un ejemplo claro que funcione, y utilizarlo de espejo para crearlo a través de Lisp. Actualmente Autocad no tiene ninguna herramienta para generar los KML. De ahí que yo quiera hacer una. He buscado varios ejemplos por el foro y sin tener ni idea de los KML he ido confeccionando uno hasta hacer el fichero del ejemplo que he colgado. Funciona bien, pero tiene el problema que me mete cada elemento en una capa. Yo quiero evitar eso. Quiero hacer que si hay 50 elementos en autocad, que pertenecen a 3 capas, que el KML aparezca con 50 elementos repartidos en esas 3 capas. Y que no me aparezcan 50 capas. Si no es un rollo para desactivar en Google Earth los elementos que no me interesa. No sé si me he explicado bien. Yo soy completamente profano en esto de los kml, y lo que he hecho no quiere decir que sea lo mejor. Igual hay que cambiar cosas. Y ya puestos, me gustaría saber cómo nombra los colores el Google Earth. Yo ha he identificado los 7 primeros de Autocad. Pero no consigo ver una relación directa para nombrar la paleta completa de 250 colores:
Rojo,1,ff0000ff
Amarillo,2,ff00ffff
Verde,3,ff00ff00
Cian,4,ffffff00
Azul,5,ffff0000
Magenta,6,ffff00ff
Blanco,7,ff000000
Bueno, pues nada, encantado. Espero que vayamos demenuzando el KML. Saludos.
Ir arriba Compartir:

Imagen: _polifemo
SuperExpert

SuperExpert
Registrado: 27-11-2009
Mensajes: 436

Votos: 0 👍
Enlaces Asunto: Re: Crear capas
Publicado:
Responder citando
Será un placer colaborar contigo robierzo.

Empiezo linkandote el manual de referencia del KML. Y piensa en los KML como en un archivo XML (eXtended Markup Languaje), del que derivó el GML(Geographic Markup Languaje) con las entidades necesarias para almacenar información Geográfica, y del que deriva el KML con las peculiaridades de google.

Entiendo por lo tanto que necesitas crear el archivo por tu cuenta. Y voy a suponer que Lisp no permite manipular los nodos de un XML.
Mi recomendación (que seguro que Lisp si que lo permite) es que edites un fichero como texto plano y escribas el código XML necesario.

Y te propongo la siguiente estructura:
Code::
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
<Document>
   <Style id="Nombre que decidas"> Supongo que esto será lo mas parecido a definir las capas. En verdad defines estilos de visualización que despues asignas a cada Placemark.
      <IconStyle>¿Para entidades puntuales?, supongo</IconStyle>
      <LineStyle>Por cierto, interpreto que Google usa para los colores una especie de RGB en escala hexadecimal (por eso llegan hasta la ff)y admás con un cuarto parámetro (¿el tono?, ¿la saturación?, ¿luminosidad?). A ver si investigo un poco mas</LineStyle>
      <PolyStyle>...</PolyStyle>
      <BalloonStyle>...</BalloonStyle>
   </Style>
   <Placemark>
      <styleUrl>La que hayas definido para cada capa</styleUrl>
      <name>Nombre de la capa</name>
         <MultiGeometry>Por que en cada capa igual tienes multilíneas, polígonos, puntos... supongo que habrá aquí que comenzar un bucle que repita las siguientes instrucciones por cada entidad dentro de la capa de Autocad
            <LineString>
      <coordinates> Lat, Long, Z
            </LineString>
            <Polygon>
      <coordinates> Lat, Long, Z
            </Polygon>
   </Placemark>
</Document>
</kml>

¿Sería algo así lo que buscas?, aún no estoy seguro.

Este es un boceto inicial, se pueden añadir tantas florituras como el tiempo y las ganas nos dejen. Si te parece comenzamos con esto y vamos viendo que problemas vamos encontrando.

Si que te comento que, con vistas a futuro para tu rutina. Tratemos de usar solo elementos compatibles con el estándar GML, de este modo el archivo resultante (aunque lo guardemos como KML) será compatible con cualquier otro visor cartográfico que cumpla los estándares.
Ir arriba Compartir:

Imagen: _polifemo
SuperExpert

SuperExpert
Registrado: 27-11-2009
Mensajes: 436

Votos: 0 👍
Enlaces Asunto: Re: Crear capas
Publicado:
Responder citando
Solucionado el tema del color.

Se expresa cada color en escala hexadecimal, las dos primeras cifras son la opacidad, la 3ª y 4ª el azul, luego verde y luego rojo.

La opacidad puede venir genial para las áreas.
Ir arriba Compartir:

Imagen: Robierzo
Usuario Habitual

Usuario Habitual
Registrado: 25-02-2013
Mensajes: 22
Ubicación: La Coruña
Visitar sitio web del autor
Votos: 0 👍
Enlaces Asunto: Re: Crear capas
Publicado:
Responder citando
Uuhhhmmm. Tiene buena pinta. Te comento que tampoco quiero meterme muy a fondo con el lenguaje KML-XML. Es algo sencillo. Creo que el quiz de la cuestión para las capas está en el Multigeometry. Investigo y ya te digo algo. Para lo del color no entiendo muy bien, pero también investigo a ver si me aclaro. Por lo demás, no te vayas a creer que necesito grandes cosas en KML. Es algo sencillito para poder enviar de Autocad a Google, pero sin muchas florituras.Que yo no estoy pa muchos trotes. jeje. El Lisp no es un programa de grandes recursos, pero aquí se trata de componer un texto, porque el KML es una plantilla de texto, para hacer lo que pretendo. Y eso sí que lo hace Lisp sin problemas. Hoy probaré algo y te comento los resultados. Muchas gracias por todo, polifemo. Saludos.

_________________
La topografia al alcance de tu mano:
Ir arriba Compartir:
Mostrar mensajes de anteriores:   
 Responder al tema   Versión Imprimible
Todas las horas son GMT + 1 Hora




RSS: Foro de Programación de Google Earth y Maps RSS
Cambiar a:  


Puede publicar nuevos temas en este foro
No puede responder a temas en este foro
No puede editar sus mensajes en este foro
No puede borrar sus mensajes en este foro
No puede votar en encuestas en este foro
No Puedes adjuntar archivos en este foro
Tu puedes descargar archivos en este foro



Mostrar/Ocultar Últimas Fotos del Foro