osmdebug.htm 13.5 KB
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Category" content="i3Geo Mapa interativo MMA geoprocessamento sig mobile">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-1">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>i3GEO - OpenLayers+OSM</title>
<script type="text/javascript" src="../classesjs/i3geonaocompacto.js"></script>
<script src="../pacotes/openlayers/OpenLayers2131.js.php"></script>
<link rel="stylesheet" type="text/css" href="../css/black.css">
<style>
.ol-zoom {
	padding-left: 4px;
	padding-right: 4px;
	top: 2em;
}

.ol-zoomslider {
	top: 6em;
}

.ol-attribution img {
	display: none;
}

.ol-attribution.ol-uncollapsible {
	height: 2.1em;
	right: 24px;
}
</style>
</head>
<body id="i3geo" style='margin-left: 7px; background: white;'>
	<!-- inclui o nome do usuario logado -->
	<div id="i3GEONomeLogin" style="position: absolute; left: 10px; top: 12px; font-size: 11px; z-index: 50000"></div>
	<table id='mst' summary="" style='display: none;' width=100% cellspacing='0'>
		<tr>
			<td id="contemMenu" style="background: black; height: 30px; text-align: right; border-width: 0pt 0pt 1px; border-color: rgb(240, 240, 240)">
				<!--menu suspenso-->
				<div id="menus" style="height: 0px;"></div>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; border-width: 0px;">
				<table width="100%" style="vertical-align: top; border-width: 0px">
					<tr>
						<td class=verdeclaro id=contemImg>
							<div id=corpoMapa style="position: relative; background-image: url('../imagens/i3geo1bw.jpg');"></div>
						</td>
					</tr>
				</table>
			</td>
		</tr>
		<tr>
			<td>
				<table style="width: 100%; height: 28px">
					<tr>
						<td class=fundoRodape style="width: 25%">
							<!-- aqui ser&aacute; inclu&iacute;da a escala num&eacute;rica -->
							<div id=escala style="margin: auto; text-align: right; left: 15px;"></div>
						</td>
						<td class=fundoRodape style="width: 5%"></td>
						<td class=fundoRodape style="width: 40%">
							<!-- aqui ser&aacute; inclu&iacute;do o gadget que mostra a coordenada geogr&aacute;fica da posi&ccedil;&atilde;o do mouse -->
							<div id=localizarxy style="margin: auto; text-align: left; font-size: 10px; display: inline-table"></div>
						</td>
						<td class=fundoRodape style="width: 20%">
							<!-- bot&atilde;o de compartilhamento em redes sociais-->
							<!--<div id=i3GEOcompartilhar style="width: 170px; margin: auto; text-align: left; padding-top: 1px"></div> -->
							<div id=tempoRedesenho style="z-index: 100; position: absolute; top: 0px; color: green; background-color: black; width: 50px; display: none"></div>
						</td>
						<!-- aqui ser&atilde;o inclu&iacute;das as bandeiras que permitem a troca de idioma -->
						<td class=fundoRodape style="width: 10%;">
							<div id=seletorIdiomas style="right: 15px;"></div>
						</td>
					</tr>
				</table>
			</td>
		</tr>
	</table>
	<table id="i3GEOlogoMarca" style='margin: 0px auto; box-shadow: 0 1px 13px gray; border-radius: 5px;'>
		<tr>
			<td>
				<div id=versaoi3geo></div>
				<h2 style="font-size: 10px; font-family: Verdana, Arial, Helvetica, sans-serif;">i3Geo - Software livre para cria&ccedil;&atilde;o de mapas interativos e geoprocessamento</h2>
				<h3 style="font-size: 10px; font-family: Verdana, Arial, Helvetica, sans-serif;">Baseado no Mapserver, &eacute; licenciado sob GPL e integra o Portal do Software P&uacute;blico Brasileiro</h3>
			</td>
		</tr>
		<tr>
			<td style="padding: 10px;">
				<img style="width: 560px; height: 81px" alt="" src='../imagens/logo_inicio.png'>
			</td>
		</tr>
		<tr>
			<td>
				<!--
			<script id="ohloh" type="text/javascript" src="http://www.ohloh.net/p/150688/widgets/project_users.js?style=red"></script>
			-->
			</td>
		</tr>
	</table>

	<div id="i3GEOguiaMovel" style="position: absolute; display: block; border: 0px solid white; text-align: left; z-index: 2000; background-color: none">
		<img id="i3GEOguiaMovelPuxador" onclick='i3GEO.guias.guiaMovel.abreFecha()' style='z-index: 2; border: solid 0px white; left: 0px; position: absolute; top: 0px' width='0px' src='../imagens/openbars.png'>
		<div id="i3GEOguiaMovelMolde" style="box-shadow: -2px 0 2px gray; position: absolute; display: none; border: 0px solid white; text-align: left; z-index: 1000; background-color: gray">
			<div id="i3GEOguiaMovelIcones" style='overflow: none; left: 0px; display: none; position: absolute; top: 0px; text-align: center; height: 0px; width: 0px; border: solid 0px white; background-color: white'></div>
			<div id="i3GEOguiaMovelConteudo" style='overflow: auto; display: none; position: absolute; border-color: gray; border-width: 0px 0 0px 0px; left: 0px; height: 0px; background-color: white'>
				<div id='guia1obj' style='display: none;'>
					<!-- Esta div acrescenta a op&ccedil;&atilde;o de busca r&aacute;pida, caso vc queira coloc&aacute;-la em um lugar espec&iacute;fico -->
					<div style='left: 5px; top: 10px; width: 150px;' id=buscaRapida></div>
					<!--	Esta div acrescenta a lista de propriedades do mapa -->
					<div id=listaPropriedades style='top: 15px;'></div>
					<!--	Esta div acrescenta a lista de de camadas do tipo 'baselayers' espec&iacute;ficas da interface Openlayers. Veja tamb&eacute;m a op&ccedil;&atilde;o i3GEO.Interface.openlayers.GADGETS.LayerSwitcher -->
					<div id=listaLayersBase style='top: 15px;'></div>
					<!--	Esta div acrescenta a lista de de camadas dispon&iacute;veis no mapa atual -->
					<div id=listaTemas style='top: 15px;'></div>
				</div>
				<div id='guia2obj' style='display: none;'>
					Aguarde...
					<img alt="" src="../imagens/branco.gif" width=248 />
				</div>
				<div id='guia4obj' style='display: none; text-align: left'>
					<div id='legenda' style='text-align: left'></div>
				</div>
				<div id='guia5obj' style='display: none; text-align: left'>
					<div id='banners' style='overflow: auto; text-align: left'>Aguarde...</div>
				</div>
			</div>
		</div>
	</div>


	<script>
		i3GEO.configura.locaplic = i3GEO.util.protocolo() + "://"
				+ window.location.host + "/i3geo";
		i3GEO.configura.autotamanho = false;
		i3GEO.Interface.ATUAL = "openlayers";
		i3GEO.Interface.IDCORPO = "contemImg";
		i3GEO.Interface.openlayers.TILES = true;
		i3GEO.gadgets.PARAMETROS.mostraMenuSuspenso.finaliza = 'if($i("omenudataInterface1")){i3GEOoMenuBar.getMenuItem("omenudataInterface1").cfg.setProperty("text", " ");}';

		i3GEO.cria();
		i3GEO.configura.mapaRefDisplay = "none";
		i3GEO.barraDeBotoes.TIPO = "olhodepeixe";
		//ajusta o deslocamento da barra de botoes
		i3GEO.barraDeBotoes.OFFSET = 11;
		//ajusta a posicao da barra de botoes no IE
		if(navm){
			i3GEO.barraDeBotoes.OFFSET = 5;
		}
		if(chro){
			i3GEO.barraDeBotoes.OFFSET = 15;
		}

		i3GEO.configura.oMenuData["submenus"]["janelas"] = [];
		i3GEO.ajuda.ATIVAJANELA = false;
		i3GEO.idioma.IDSELETOR = "seletorIdiomas";

		//i3GEO.arvoreDeTemas.TIPOBOTAO = "radio";
		i3GEO.arvoreDeTemas.OPCOESADICIONAIS.comentarios = true;
		i3GEO.arvoreDeCamadas.VERIFICAABRANGENCIATEMAS = true;
		i3GEO.arvoreDeCamadas.MOSTRALISTAKML = false;
		i3GEO.mapa.AUTORESIZE = true;
		i3GEO.guias.TIPO = "movel";
		i3GEO.guias.guiaMovel.config.topGuiaMovel = 36;
		i3GEO.janela.ativaAlerta();
		i3GEO.finaliza = function() {
			if ($i("i3GEOlogoMarca")) {
				$i("i3GEOlogoMarca").style.display = "none";
			}
			i3GEO.mapa.insereDobraPagina("googlemaps",
					"../imagens/dobragooglemaps.png");
		};
		i3GEO.arvoreDeTemas.OPCOESADICIONAIS.navegacaoDir = true;
		i3GEO.janela.TRANSICAOSUAVE = true;
		OpenLayers.ImgPath = "../pacotes/openlayers/img/";
		(function() {
			function getTileURL(bounds) {
		        console.info(bounds)   
				var res = this.map.getResolution();
		           //var m = i3GEO.util.projGeo2OSM(i3geoOL.maxExtent);
		           //bounds = i3GEO.util.projGeo2OSM(bounds)
		           //this.map.zoomIn()
		           var m = (this.maxExtent);
		            var x = Math.round((bounds.left - m.left) / ((res) * 256));
		            var y = Math.round((m.top - bounds.top) / ((res) * 256));
		            var z = this.map.getZoom();
		            var limit = Math.pow(2, z);
		            
		            //if (y < 0 || y >= limit) {
		            //    return OpenLayers.Util.getImagesLocation() + "404.png";
		            //} else {
		                x = ((x % limit) + limit) % limit;
		                return this.url + "x=" + x + "&y=" + y + "&z=" + (z);    //+ "&ss=" + x + "-" + y + "-" + z
		            //}
			}
			
			var attribOSMData = 'Map Data: &copy; <a href="http://www.openstreetmap.org/">OpenStreetMap</a> contributors';
			var attribMapQuestOSM = attribOSMData + ', Tiles Courtesy of <a href="http://www.mapquest.com/" target="_blank">MapQuest</a> <img src="http://developer.mapquest.com/content/osm/mq_logo.png">';
			var attribMapQuestAerial = 'Map Data: &copy; Portions Courtesy NASA/JPL-Caltech and U.S. Depart. of Agriculture, Farm Service Agency, Tiles Courtesy of <a href="http://www.mapquest.com/" target="_blank">MapQuest</a> <img src="http://developer.mapquest.com/content/osm/mq_logo.png">';
			var attribOpenCycleMap = 'Map Data: &copy; <a href="http://www.openstreetmap.org/">OpenStreetMap</a> contributors';
			var attribDEMData = '<a href="http://srtm.csi.cgiar.org/">SRTM</a>; ASTER GDEM is a product of <a href="http://www.meti.go.jp/english/press/data/20090626_03.html">METI</a> and <a href="https://lpdaac.usgs.gov/products/aster_policies">NASA</a>';
			var attribStamen = 'Map tiles by Stamen Design, under CC BY 3.0. Data by OpenStreetMap, under CC BY SA';
			var mapSurfer = 'Map data © OpenStreetMap contributors, Imagery GIScience Research Group @ Heidelberg University';
			
			var aquarela = new OpenLayers.Layer.OSM("Aquarela",
					"http://tile.stamen.com/watercolor/${z}/${x}/${y}.jpg", {
						isBaseLayer : true,
						visibility : false,
						attribution: attribStamen,
						tileOptions: {crossOriginKeyword: "anonymous"}
					});
			
			var toner = new OpenLayers.Layer.OSM("Toner",
				"http://tile.stamen.com/toner/${z}/${x}/${y}.jpg", {
					isBaseLayer : true,
					visibility : false,
					attribution: attribStamen,
					tileOptions: {crossOriginKeyword: "anonymous"}
				});
			
			var tonerlite = new OpenLayers.Layer.OSM("Toner lite",
				"http://tile.stamen.com/toner-lite/${z}/${x}/${y}.jpg", {
					isBaseLayer : true,
					visibility : false,
					attribution: attribStamen,
					tileOptions: {crossOriginKeyword: "anonymous"}
				});
			
			var osm = new OpenLayers.Layer.OSM("OSM",
					"http://tile.openstreetmap.org/${z}/${x}/${y}.png", {
						isBaseLayer : true,
						visibility : true,
						attribution: attribOSMData,
						tileOptions: {crossOriginKeyword: "anonymous"}
					});
			
			var arrayMapQuestAerial = ["http://oatile1.mqcdn.com/tiles/1.0.0/sat/${z}/${x}/${y}.jpg",
				"http://oatile2.mqcdn.com/tiles/1.0.0/sat/${z}/${x}/${y}.jpg",
				"http://oatile3.mqcdn.com/tiles/1.0.0/sat/${z}/${x}/${y}.jpg",
				"http://oatile4.mqcdn.com/tiles/1.0.0/sat/${z}/${x}/${y}.jpg"
			];

			var layMapQuestAerial = new OpenLayers.Layer.OSM("MapQuest Open Aerial", arrayMapQuestAerial,{
				displayOutsideMaxExtent: true,
				attribution: attribMapQuestAerial,
				isBaseLayer : true,
				visibility : false,
				tileOptions: {crossOriginKeyword: "anonymous"}
			});

			var layMSNOsmRoad = new OpenLayers.Layer.OSM("OSM Roads", ["http://korona.geog.uni-heidelberg.de/tiles/roads/x=${x}&y=${y}&z=${z}"], {
				displayOutsideMaxExtent: true,
				type : 'png',
				//getURL : getTileURL,
				isBaseLayer : true,
				visibility : false,
				attribution : mapSurfer,
				tileOptions: {crossOriginKeyword: "anonymous"}
			});
			
			var layMSNOsmRoadsGray =
				new OpenLayers.Layer.TMS("OSM Roads Grayscale", "http://korona.geog.uni-heidelberg.de/tiles/roadsg/", {
					type : 'png',
					getURL : getTileURL,
					displayOutsideMaxExtent : true,
					isBaseLayer : true,
					visibility : false,
					attribution : mapSurfer
				});
			
			var layMSNOsmBoundariesOverlay =
				new OpenLayers.Layer.TMS("OSM Admin Boundaries (experimental)", "http://korona.geog.uni-heidelberg.de/tiles/adminb/", {
					type : 'png',
					getURL : getTileURL,
					displayOutsideMaxExtent : true,
					isBaseLayer : true,
					visibility : false,
					attribution : mapSurfer
				});
			
			var layMSNOsmHybrid = new OpenLayers.Layer.OSM("OSM Semitransparent", "http://korona.geog.uni-heidelberg.de/tiles/hybrid/x=${x}&y=${y}&z=${z}", {
				displayOutsideMaxExtent: true,
				visibility : false,
				isBaseLayer : true,
				attribution : mapSurfer,
				tileOptions: {crossOriginKeyword: "anonymous"}
			});
			
			var layMSNAsterHillshade =
				new OpenLayers.Layer.TMS(
					"ASTER GDEM & SRTM Hillshade (experimental)",
					"http://korona.geog.uni-heidelberg.de/tiles/asterh/",
					{
						type : 'png',
						getURL : getTileURL,
						displayOutsideMaxExtent : true,
						isBaseLayer : true,
						visibility : false,
						attribution : mapSurfer
					});
			
			var layMSNAsterContours =
				new OpenLayers.Layer.TMS("ASTER GDEM Contour Lines (zoom 13-17)", "http://korona.geog.uni-heidelberg.de/tiles/asterc/", {
					type : 'png',
					getURL : getTileURL,
					displayOutsideMaxExtent : true,
					isBaseLayer : true,
					visibility : false,
					attribution : mapSurfer
				});

			i3GEO.Interface.openlayers.LAYERSADICIONAIS = [
				osm, aquarela, toner, tonerlite, layMapQuestAerial, layMSNOsmRoad,layMSNOsmRoadsGray,layMSNOsmBoundariesOverlay,layMSNOsmHybrid,layMSNAsterHillshade,layMSNAsterContours
			];
		})();
		i3GEO.Interface.openlayers.googleLike = true;
		i3GEO.inicia();
	</script>
</body>
</html>