Note
Autores:
Licencia:
Excepto donde quede reflejado de otra manera, la presente documentación se halla bajo licencia Creative Commons Reconocimiento Compartir Igual
TileMill es un herramienta que permite un acercamiento al diseño cartográfico a través de un lenguaje que es familiar a los desarrolladores web.
Sirve para que incluso un diseñador web pueda hacer mapas bonitos.
Vamos, no fastidies, estás hablando con un cartógrafo.
Bueno, no tienen porqué serlo ...
... pero venden más :)
Algunos ejemplos de mapas hechos con TileMill.
El primer paso siempre es añadir datos y el primer paso para añadirlos es tener claros sus metadatos, en especial:
Carto es el lenguaje que utiliza TileMill para aplicar estilos a las primitivas cartográficas.
Está basado en Cascadenik que es un pre-procesador de estilos para Mapnik.
Mapnik solo entiende XML pero poca gente entiende XML así que aparecieron pre-procesadores para hacer “la vida más fácil” a los usuarios de Mapnik.
TileMill usa Mapnik por debajo y Carto es el lenguaje con el que le comunica como deben quedar las cosas.
#puntos{
marker-width: 2;
marker-fill: #EE0000;
marker-line-color: #FFFABB;
}
Existen dos tipos de puntos Point y Marker entre los dos suman 24 propiedades.
#linea {
line-color: #c0d8ff;
line-cap: round;
line-join: round;
}
Existen 11 propiedades distintas para las ĺíneas.
#areas {
line-color: #FFFABB;
line-width: 0.5;
polygon-opacity: 1;
polygon-fill: #6B9;
}
Existen 5 propiedades distintas para las áreas.
Para el que se lo haya preguntado ... también se pueden usar clases (y condiciones)
.natural[TYPE='water'],
.water {
polygon-fill:#c0d8ff;
}
.natural[TYPE='forest'] {
polygon-fill:#cea;
}
El uso de @ te permite definir variables
@water:#c0d8ff;
@forest:#cea;
Y los selectores se pueden anidar
.highway[TYPE='motorway'] {
.line[zoom>=7] {
line-color:spin(darken(@motorway,36),-10);
line-cap:round;
line-join:round;
}
.fill[zoom>=10] {
line-color:@motorway;
line-cap:round;
line-join:round;
}
}
Por ejemplo para pintar puntos de interes
.amenity.place[zoom=15] {
[type='police']{
point-file: url(../res/comi-9px.png);
}
[type='fuel'] {
point-file: url(../res/petrol-9px.png);
}
[type='townhall'],
[type='university'] {
point-file: url(../res/poi-9px.png);
}
}
.highway[TYPE='motorway'] {
.line[zoom>=7] {
line-color:spin(darken(@motorway,36),-10);
line-cap:round;
line-join:round;
}
.fill[zoom>=10] {
line-color:@motorway;
line-cap:round;
line-join:round;
}
}
.highway[zoom=13] {
.line[TYPE='motorway'] { line-width: 2.0 + 2; }
.fill[TYPE='motorway'] { line-width: 2.0; }
}
¿No sabes lo que es una caja de carretera?
Pasar de MBTiles a una estructura de directorios para TMS usando mbutil
$ mb-util exportado.mbtiles directorio/
A partir de la versión 0.9 y aprovechando que node.js también lo permite.
Añaden funcionalidades como poder ver varios niveles de zoom a la vez.
A fecha de hoy hay 5 plugins Core y 2 plugins adicionales.
TileMill admite cierta interactividad que se puede configurar para cada mapa.