hdalab/js/geojson_quickconv.js
author veltr
Mon, 30 Jan 2012 18:20:21 +0100
changeset 115 46c0f7a935d1
parent 110 6455b65fa3b7
child 118 fdf808d7d374
permissions -rw-r--r--
Prototype HDAlab, quelques changements

gomNs.countryLabels = {
    "AFG" :"Afghanistan",
    "AGO" :"Angola",
    "ALB" :"Albanie",
    "ARG" :"Argentine",
    "ARM" :"Arménie",
    "ATA" :"Antarctique",
    "AUS" :"Australie",
    "AUT" :"Autriche",
    "AZE" :"Azerbaïdjan",
    "BDI" :"Burundi",
    "BEL" :"Belgique",
    "BEN" :"Bénin",
    "BGR" :"Bulgarie",
    "BIH" :"Bosnie-Herzégovine",
    "BOL" :"Bolivie",
    "BRA" :"Brésil",
    "BRN" :"Brunei",
    "CAF" :"République centrafricaine",
    "CAN" :"Canada",
    "CHE" :"Suisse",
    "CHL" :"Chili",
    "CHN" :"Chine",
    "CIV" :"Côte d'Ivoire",
    "CMR" :"Cameroun",
    "COD" :"République démocratique du Congo",
    "CZE" :"République tchèque",
    "DEU" :"Allemagne",
    "DNK" :"Danemark",
    "DZA" :"Algérie",
    "EGY" :"Égypte",
    "ESP" :"Espagne",
    "EST" :"Estonie",
    "ETH" :"Éthiopie",
    "FIN" :"Finlande",
    "FRA" :"France",
    "GAB" :"Gabon",
    "GBR" :"Royaume-Uni",
    "GHA" :"Ghana",
    "GRC" :"Grèce",
    "HTI" :"Haïti",
    "HUN" :"Hongrie",
    "IDN" :"Indonésie",
    "IND" :"Inde",
    "IRL" :"Irlande",
    "IRN" :"Iran",
    "ISL" :"Islande",
    "ISR" :"Israël",
    "ITA" :"Italie",
    "JAM" :"Jamaïque",
    "JPN" :"Japon",
    "KAZ" :"Kazakhstan",
    "KGZ" :"Kirghizistan",
    "KHM" :"Cambodge",
    "LBN" :"Liban",
    "LTU" :"Lituanie",
    "LVA" :"Lettonie",
    "MAR" :"Maroc",
    "MDA" :"Moldavie",
    "MEX" :"Mexique",
    "MLI" :"Mali",
    "MMR" :"Birmanie",
    "MNG" :"Mongolie",
    "MOZ" :"Mozambique",
    "NCL" :"Nouvelle-Calédonie",
    "NER" :"Niger",
    "NGA" :"Nigeria",
    "NLD" :"Pays-Bas",
    "NOR" :"Norvège",
    "NPL" :"Népal",
    "NZL" :"Nouvelle-Zélande",
    "PAK" :"Pakistan",
    "PHL" :"Philippines",
    "PNG" :"Papouasie-Nouvelle-Guinée",
    "POL" :"Pologne",
    "PRT" :"Portugal",
    "PSE" :"Palestine",
    "ROU" :"Roumanie",
    "RUS" :"Russie",
    "SDN" :"Soudan",
    "SEN" :"Sénégal",
    "SLV" :"Salvador",
    "SVK" :"Slovaquie",
    "SVN" :"Slovénie",
    "SWE" :"Suède",
    "SYR" :"Syrie",
    "TCD" :"Tchad",
    "THA" :"Thaïlande",
    "TJK" :"Tadjikistan",
    "TTO" :"Trinité-et-Tobago",
    "TUN" :"Tunisie",
    "TUR" :"Turquie",
    "UGA" :"Ouganda",
    "UKR" :"Ukraine",
    "USA" :"États-Unis",
    "UZB" :"Ouzbékistan",
    "VNM" :"Viêt Nam",
    "ZAF" :"Afrique du Sud",
}

function polygon_to_gmap(polycoords, label) {
    var _opts =  {
        strokeColor: "#000000",
        strokeWeight: .5,
        fillColor: "#7070a0",
        fillOpacity: .8,
    }
    _opts.paths = polycoords.map(function(path) {
        return path.map(function(coord) {
            return new google.maps.LatLng(coord[1], coord[0]);
        });
    });
    var _polygon = new google.maps.Polygon(_opts);
    _polygon.setMap(gomNs.map);
    if (label) {
        google.maps.event.addListener(_polygon, 'click', function(a,b) {
            tagInfo(label);
        })
    }
    return _polygon;
}

function showCountries(geoJson) {
    gomNs.countries = {};
    _(geoJson.features).each(function(feature) {
        var _el = { "label" : gomNs.countryLabels[feature.id] };
        if (feature.id == 'ATA') {
            _el.gPolygons = [];
        } else {
            switch(feature.geometry.type) {
                case('Polygon'):
                    _el.gPolygons = [ polygon_to_gmap(feature.geometry.coordinates, _el.label) ];
                break;
                case('MultiPolygon'):
                    _el.gPolygons = feature.geometry.coordinates.map(function(polygon) {
                        return polygon_to_gmap(polygon, _el.label);
                    })
                break;
            }
        }
        gomNs.countries[feature.id] = _el;
    });
}