Mercurial > hgrepos > hgweb.cgi > skipweb
view fujix/map.rb @ 2944:b1cb17ea7605
merge
author | ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp> |
---|---|
date | Tue, 08 Dec 2015 19:36:05 +0900 |
parents | 888de7444b35 |
children |
line wrap: on
line source
#!/usr/bin/env ruby #coding:utf-8 require 'cgi' c = CGI.new(:accept_charset => "UTF-8") #lon = c["lon"].to_f #lat = c["lat"].to_f if ARGV[1] != nil lon = ARGV[1].to_f lat = ARGV[0].to_f else lat = 38.91525 lon = 139.83450 end print("Content-type: text/html; charset=UTF-8\n\n") printf(<<_EOS_,lat,lon) <html> <head> <title>Simple OSM GPX Track</title> <script src="http://www.openlayers.org/api/OpenLayers.js"></script> <script src="http://www.openstreetmap.org/openlayers/OpenStreetMap.js"></script> <script type="text/javascript"> lat = %f lon = %f var zoom=15 var map; function init() { map = new OpenLayers.Map ("map", { controls:[ new OpenLayers.Control.Navigation(), new OpenLayers.Control.PanZoomBar(), new OpenLayers.Control.Attribution() ], maxExtent: new OpenLayers.Bounds(-20037508.34,-20037508.34,20037508.34,20037508.34), maxResolution: 156543.0399, numZoomLevels: 6, units: \'m\', projection: new OpenLayers.Projection("EPSG:900913"), displayProjection: new OpenLayers.Projection("EPSG:4326") } ); layerMapnik = new OpenLayers.Layer.OSM.Mapnik("Mapnik"); map.addLayer(layerMapnik); layerMarkers = new OpenLayers.Layer.Markers("Markers"); map.addLayer(layerMarkers); var lonLat = new OpenLayers.LonLat(lon, lat).transform(new OpenLayers.Projection("EPSG:4326"), map.getProjectionObject()); map.setCenter(lonLat, zoom); var size = new OpenLayers.Size(21, 25); var offset = new OpenLayers.Pixel(-(size.w/2), -size.h); var icon = new OpenLayers.Icon(\'http://www.openstreetmap.org/openlayers/img/marker.png\',size,offset); layerMarkers.addMarker(new OpenLayers.Marker(lonLat,icon)); } </script> <meta http-equiv="refresh" content="20;redirect.html"> </head> <body onload="init();"> _EOS_ print"<div style=\"width:90\%\; height:90\%\" id=\"map\"></div> </body> </html> "