var map; var point; var zoom; var text;
var emap; var rmap; var ewmap//恵比寿オフィス地図、六本木オフィス地図
var ePoint = gp(35.64854, 139.714178);	//恵比寿オフィス座標
var eCenter = gp(35.64854, 139.714178);
var rPoint = gp(35.658229, 139.730338);//六本木オフィス座標
var ewPoint = gp(35.648373, 139.707276);//恵比寿西分室
var cp = [[35.64737, 139.709023, 330],[35.646213, 139.7075, 210],[35.644861, 139.708739, 135],[35.644268, 139.708409, 210],[35.644215, 139.708502, 135]];
var httpObj;
var viewPoint;
var myPano; var panoClient; var panoData; //StreetViewObject
var myPOV; //方角と目線
var mYaw = new Array(); //移動する方角の配列
var my = new Array(); //移動するy座標の配列
var mx = new Array(); //移動するx座標の配列
var mPoint = new Array();
var dataSize; //xmlデータのサイズ
var n; //何回目か
var j;
var timer;

function gp(y, x){
	return new GLatLng(y, x);	
}


//xmlデータを読み込む
function loadXml(httpObj){
	var xmlData = httpObj.responseXML;
	var pointData = xmlData.getElementsByTagName("data");
	dataSize = pointData.length; 
	for (var i=0; i<pointData.length; i++) {
		mx[i] = pointData[i].getElementsByTagName("x")[0].firstChild.nodeValue;
		my[i] = pointData[i].getElementsByTagName("y")[0].firstChild.nodeValue;
		mYaw[i] = pointData[i].getElementsByTagName("yaw")[0].firstChild.nodeValue;
		mPoint[i] = gp(my[i], mx[i]);
	}
}

function addMap(map, point, center, zoom, text){
	map.setCenter(center, zoom);
	map.addControl(new GScaleControl());		
	map.addControl(new GSmallMapControl());		//縮尺・移動コントロールを追加
	map.addControl(new GMapTypeControl());		//航空写真と地図の切り替えボタンを追加
	//map.enableContinuousZoom();		//マウスホイールでのズーム機能を追加
	//map.enableScrollWheelZoom();
	var marker = new GMarker(point);
	map.addOverlay(marker);
	GEvent.addListener(map, "click", function(marker){
		marker.openInfoWindowHtml(text);
	});
}

function load() {
	if (GBrowserIsCompatible()) {
		loadEbisu();
		loadRoppongi();
	}
}

function loadEbisu(){
	if (GBrowserIsCompatible()) {
		//恵比寿オフィス地図を作成
		emap = new GMap2(document.getElementById("emap"));
		addMap(emap, ePoint, eCenter, 16, "開発／運営／サポート");

		//恵比寿オフィスガイド用XMLデータを読み込み
		/*
		httpObj = GXmlHttp.create();
		httpObj.open("get", "./doc/routes.xml");
		httpObj.onreadystatechange = function() {
			if ((httpObj.readyState == 4) && (httpObj.status == 200)) {
				loadXml(httpObj);
				emap.addOverlay(new GPolyline(mPoint, "#FF0000",5,0.7));//恵比寿の地図に道順を追加
			}
		}
		httpObj.send(null);*/
	}
}

function loadRoppongi(){
	//六本木オフィス地図を作成
	rmap = new GMap2(document.getElementById("rmap"));
	addMap(rmap, rPoint, rPoint, 16, "本社／経理");
}


function loadEbisunishi(){
	//恵比寿西分室地図を作成
	ewmap = new GMap2(document.getElementById("ewmap"));
	addMap(ewmap, ewPoint, ewPoint, 16, "分室");
}
/*以下StreetView用
function addView(){
	j=0;
	setCenterMarker(emap);
	n = 0;
	stPoint = gp(my[n],mx[n]);
	//視点の方角と角度をセット
	myPOV = {yaw:mYaw[n], pitch:0};
	n = n+1;
	//座標を獲得
	svOptions = {latlng:stPoint ,pov:myPOV};
	//オブジェクトの作成
	myPano = new GStreetviewPanorama(document.getElementById("view"), svOptions);
	
	setTimeout(gotoYuras0,2000);
	GEvent.addListener(myPano, "initialized", moveMap);
	GEvent.addListener(myPano, "initialized", gotoYuras);
}

function gotoYuras0(){
	myPOV = {yaw:cp[j][2], pitch:0};
	myPano.panTo(myPOV);
	myPano.followLink(330);
}

function gotoYuras(location){
	switch(j){
		case 0:　//駅から駒沢通りへ
		case 1:  //駒沢通りから恵比寿南交差点まで
		case 2:  //恵比寿南交差点からカルピスまで
		case 3:  //カルピスから路地を曲がる
		//alert("j =" +j + ": lng = " + location.latlng.lng());
		if(location.latlng.lat() == cp[j][0] && location.latlng.lng() == cp[j][1]){
			j++;
			myPOV = {yaw:cp[j][2], pitch:0};
			myPano.panTo(myPOV);
			GEvent.addListener(myPano, "yawchanged", setTimeout(move(cp[j][2])),2000);
		}else{
			myPOV = {yaw:cp[j][2], pitch:0};
			myPano.panTo(myPOV);
			setTimeout(move(cp[j][2]),2000);
		}
		break;
		
		case 4:  //路地の突き当たりを左折するとすぐにオフィスです。
		if(location.latlng.lat() == cp[j][0] && location.latlng.lng() == cp[j][1]){
			myPOV = {yaw:45, pitch:0};
			myPano.panTo(myPOV);
		}else{
			myPOV = {yaw:cp[j][2], pitch:0};
			myPano.panTo(myPOV);
			setTimeout(move(cp[j][2]),2000);
		}
		break;		
	}
}

function move(yaw){
	myPano.followLink(yaw);
}
function moveMap(location){
	emap.panTo(location.latlng);
}

function setCenterMarker(map){
	var markObj = document.createElement("div");
	var mapW = parseInt(map.getContainer().style.width);
	var mapH = parseInt(map.getContainer().style.height);
	var markW = 31; // センターマークの横幅（ピクセル数）
	var markH = 31; // センターマークの縦幅（ピクセル数）
	var x = (mapW - markW) / 2; // センターマークの中心位置（X座標）
	var y = (mapH - markH) / 2; // センターマークの中心位置（Y座標）
	markObj.style.position = "absolute";
	markObj.style.top = y+"px";
	markObj.style.left = x+"px";
	markObj.style.backgroundImage = "url(centerMark.gif)";
	markObj.style.width = markW+"px";
	markObj.style.height = markH+"px";
	markObj.style.opacity = 0.5;
	emap.getContainer().appendChild(markObj);	
}
*/


