GithubHelp home page GithubHelp logo

javiertoledo / spain-map Goto Github PK

View Code? Open in Web Editor NEW
31.0 4.0 9.0 397 KB

Mapa vectorial de España interactivo creado a partir de un mapa SVG y la librería RaphaëlJs.

License: MIT License

Ruby 0.11% CoffeeScript 99.89%

spain-map's Introduction

Mapa interactivo de España

Mapa vectorial de España interactivo creado a partir de un mapa SVG y la librería RaphaëlJs.

Demo

Demo

Uso

El mapa está preparado para integrarlo en cualquier página web ya que está contenido en un único fichero JavaScript minificado: spain-map.min.js

El mapa depende de la librería RaphaëlJs

  1. Carga raphaeljs y el script spain-map.js
<script type="text/javascript" src="some/path/raphael-min.js"></script>
<script type="text/javascript" src="some/path/spain-map.min.js"></script>
  1. Crea una instancia de mapa. El mapa acepta los siguientes parámetros de configuración:
<script type="text/javascript">
    new SpainMap({
      id: 'map', //(Requerido) Elemento HTML en el que se renderizará el mapa
      width: 700, //(Requerido) Ancho del mapa
      height: 400, //(Requerido) Alto del mapa
      fillColor: "#eeeeee", // color de relleno del mapa
      strokeColor: "#bbbbbb", // color de las líneas de frontera
      strokeWidth: 0.7, // ancho de las líneas de frontera
      selectedColor: "#99eeee", // color de relleno de la provincia al pasar el ratón por encima
      animationDuration: 200, // Duración de la animación de salida
      onClick: function(province, mouseevent) {
        // Método que se ejecutará al hacer click sobre una provincia
      },
      onMouseOver: function(province, mouseevent) {
        // Método que se ejecutará al pasar el ratón sobre una provincia
      },
      onMouseOut: function(province, mouseevent) {
        // Método que se ejecutará al salir de una provincia
      }
    });
</script>

...

<div id="map"></div>

Fuentes

Generación de Paths a partir del fichero SVG

He creado un pequeño script ruby que procesa el mapa SVG para generar los paths de entrada de Raphaël. Es posible que funcione también con otros mapas que no estén agrupados, así que podría ser una buena base para desarrollar mapas de otras regiones.

El script se encuentra en /utils/jsonify.rb y su uso sería el siguiente presuponiendo que exista un fichero con nombre input.svg en el mismo directorio:

cd utils
ruby jsonize.rb > spain-map.coffee

Existen también servicios web que realizan conversiones a partir de SVGs más complejos como: Ready Set Raphael SVG2RaphaelJs

spain-map's People

Contributors

javiertoledo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

spain-map's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.