﻿    //<![CDATA[

    var point_markerxx = new Array(100);

    var map = new GMap2(document.getElementById("map"));
    map.addControl(new GLargeMapControl());
    map.addControl(new GMapTypeControl());
    map.addControl(new GScaleControl());
    map.addControl(new GOverviewMapControl(new GSize(150,100))); // 地図概観ウインドウ（標準右下）

map.setCenter(new GLatLng(point_center_latitude, point_center_longitude), centerAndZoom_size);

    //線分のポイント座標配列を作成
    if(kakomidatatab.length>0){
       var kakomipoints = [];
       for(i=0; i<kakomidatatab.length; i++){
          kakomipoints.push(new GLatLng(kakomidatatab[i][1], kakomidatatab[i][0]));//
       }
    //ポリラインを描画
       map.addOverlay(new GPolyline(kakomipoints,'#0000ff',5,0.7));
    }




    var mark_00_100 = new Array(101);
    k = 0;
    for (i=0;i<10;i++){
      for (j=0;j<10;j++){
        mark_00_100[k] = new GIcon();
        mark_00_100[k].image = "mark"+i+".png";
        mark_00_100[k].shadow = "mark"+j+"_s.png";
        mark_00_100[k].iconSize = new GSize( 16 , 18 );
        mark_00_100[k].shadowSize = new GSize( 32 , 18 );
        mark_00_100[k].iconAnchor = new GPoint( 15 , 17 );
        mark_00_100[k].infoWindowAnchor = new GPoint( 15 , 17 );
        mark_00_100[k].printImage = "mark"+i+".gif";
        mark_00_100[k].printShadow = "mark"+j+"_s.gif";
        k = k + 1;
      };
    };
    mark_00_100[100] = new GIcon();
    mark_00_100[100].image = "mark10.png";
    mark_00_100[100].shadow = "mark10_0_s.png";
    mark_00_100[100].iconSize = new GSize( 32 , 18 );
    mark_00_100[100].shadowSize = new GSize( 48 , 18 );
    mark_00_100[100].iconAnchor = new GPoint( 24 , 17 );
    mark_00_100[100].infoWindowAnchor = new GPoint( 24 , 17 );
    mark_00_100[100].printImage = "mark10.gif";
    mark_00_100[100].printShadow = "mark10_0_s.gif";

// １００個の地点のＭａｒｋｅｒ作成
    var markeryy = new Array(100);
    for (i=0;i<100;i++){

      if(mapdata100[i][0]!=''){
        point_markerxx[i] = new GLatLng(mapdata100[i][2], mapdata100[i][1]);
        markeryy[i] = new GMarker(point_markerxx[i], mark_00_100[i+1]);
        GEvent.addListener(markeryy[i], "click", function(overlay, point){
/* ＧｏｏｇｌｅＭａｐｓＡＰＩｖ２では何故かfunction(overlay, point)のoverlayもpointもＮｏｔｈｉｎｇ！！？？
だめ          for(j=0;j<100;j++){
だめ            if (overlay==markeryy[j]){
だめ              markeryy[j].openInfoWindowHtml(mapdata100[j][3]);
だめ            };
だめ          };
*/
        });
        map.addOverlay(markeryy[i]);
      };

    };


GEvent.addListener(map, 'click', function(overlay, point){

/* 
;;;;Not Applied--->    map.openInfoWindowHtml(point, point.toString());
*/

/* ＧｏｏｇｌｅＭａｐｓＡＰＩｖ２では
何故かｍａｒｋｅｒのｃｌｉｃｋのfunction(overlay, point)のoverlayもpointもＮｏｔｈｉｎｇ！！？？
なので、ここのaddListener(map, 'click'内でｍａｒｋｅｒのクリック時の処理
*/

 //////////     map.closeInfoWindow();

      if (overlay){
 //////////         map.closeInfoWindow();
          for(j=0;j<100;j++){
            if (overlay==markeryy[j]){
              markeryy[j].openInfoWindowHtml(mapdata100[j][3].substring(0,6)+mapdata100[j][0]+"<br>"+mapdata100[j][3].substring(6,mapdata100[j][3].length));
            };
          };
          if (overlay==marker_cross){
//              crosspoint = map.getCenter();
              var crosspointstr = "";
              crosspointstr = crosspoint.toString();
              var crosspointstrwk = "";
              var crosspoint_keido_ido = new Array();
              crosspointstrwk = crosspointstr.substring(1, (crosspointstr.length - 2));
              crosspoint_keido_ido = crosspointstrwk.split(",");
            marker_cross.openInfoWindowHtml("地図の中心を示す十字マーク"+"<br>（経度，緯度）は、( "+crosspoint_keido_ido[1].substring(0,11)+", "+crosspoint_keido_ido[0].substring(0,11)+" )です。");
          };
return;
      }





      //マウス１回クリックしたポイント
      var pointstr = "";
      pointstr = point.toString();
      var pointstrwk = "";
      var keido_ido = new Array();
      pointstrwk = pointstr.substring(1, (pointstr.length - 2));
      keido_ido = pointstrwk.split(",");

      //十字クロスのポイント（地図の中心）

//          map.removeOverlay(marker_cross);
//          marker_cross = new GMarker(map.getCenter(), icon_cross);

//          map.addOverlay(marker_cross);

//          crosspoint = map.getCenter();
//          var crosspointstr = "";
//          crosspointstr = crosspoint.toString();
//          var crosspointstrwk = "";
//          var crosspoint_keido_ido = new Array();
//          crosspointstrwk = crosspointstr.substring(1, (crosspointstr.length - 2));
//          crosspoint_keido_ido = crosspointstrwk.split(",");
      

          //　ＰＯＩＮＴ間の距離を求める　（ＧｏｏｇｌｅＭａｐｓＡＰＩｖ２のdistanceFrom関数使用）
//          var pointv2 = new GLatLng(keido_ido[0].substring(0,11),keido_ido[1].substring(0,11));
//          var crosspointv2 = new GLatLng(crosspoint_keido_ido[0].substring(0,11),crosspoint_keido_ido[1].substring(0,11));
//          var distance = pointv2.distanceFrom(crosspointv2);
//          var distancek = (distance / 1000);
//          var distancekillo = "";    
//          distancekillo = ""+distancek;
//          if(distancek<10000){
//            distancekillo = distancekillo.substring(0,5);
//          } else {
//            distancekillo = distancekillo.substring(0,6);
//          }



          if (map.getZoom()<8){
            map.showMapBlowup(point, map.getZoom() + 7);
          } else {
             if ( click_flg==1 ){
//               map.openInfoWindowHtml(point, "クリックした地点の（経度，緯度）は、<br>( "+keido_ido[1].substring(0,11)+", "+keido_ido[0].substring(0,11)+" )です。<br><br>"+"地図の中心を示す十字からの<br>直線距離は、( "+distancekillo+" km)です。");
               map.openInfoWindowHtml(point, "クリックした地点の（経度，緯度）は、<br>( "+keido_ido[1].substring(0,11)+", "+keido_ido[0].substring(0,11)+" )です。");
             }   
          } 


          // 表示地図全体の左上隅と右下隅
//          minXYmaxXYpoint = map.getBounds();
//          var minXYmaxXYpointstr = "";
//          minXYmaxXYpointstr = minXYmaxXYpoint.toString();
//          var minXYmaxXYpoint_keido_ido = new Array();
//          minXYmaxXYpoint_keido_ido = minXYmaxXYpointstr.split(",");
//          var minXYmaxXYpointstr_keido1 = "";
//          var minXYmaxXYpointstr_ido1 = "";
//          var minXYmaxXYpointstr_keido2 = "";
//          var minXYmaxXYpointstr_ido2 = "";
//          minXYmaxXYpointstr_keido1 = minXYmaxXYpoint_keido_ido[1].substring(0, (minXYmaxXYpoint_keido_ido[1].length - 1));
//          minXYmaxXYpointstr_ido2 = minXYmaxXYpoint_keido_ido[0].substring(2, (minXYmaxXYpoint_keido_ido[0].length));
//          minXYmaxXYpointstr_keido2 = minXYmaxXYpoint_keido_ido[3].substring(0, (minXYmaxXYpoint_keido_ido[3].length - 2));
//          minXYmaxXYpointstr_ido1 = minXYmaxXYpoint_keido_ido[2].substring(2, (minXYmaxXYpoint_keido_ido[2].length));
//          parent.ichiran_table_html.form2.document.getElementById("minXYmaxXYpointinf").innerHTML = "ちなみに、表示地図全体の左上隅は( "+minXYmaxXYpointstr_keido1+", "+minXYmaxXYpointstr_ido1+" )、右下隅は( "+minXYmaxXYpointstr_keido2+", "+minXYmaxXYpointstr_ido2+" )です。";





});






    //十字アイコン作成  
/* 参考サイト－－＞http://jsgt.org/ajax/newmon/samples/chapter03/03-31/getlatlon3.htm */
    var icon_cross = new GIcon();
    icon_cross.image = "cross.png";
    icon_cross.iconSize = new GSize(100, 100);
    icon_cross.iconAnchor = new GLatLng(50, 50);
    icon_cross.infoWindowAnchor = new GLatLng(50, 50);
    icon_cross.printImage = "cross.gif";


    var marker_cross = new GMarker(map.getCenter(), icon_cross);
    GEvent.addListener(marker_cross, "click", function() { 
       marker_cross.openInfoWindowHtml("地図の中心を<br>示す十字マーク");
    });
    map.addOverlay(marker_cross);


// if ( click_flg==1 ){
    //地図移動で十字アイコン追随
//    GEvent.addListener(map, "move", function() {

//       map.closeInfoWindow(); 
//       map.removeOverlay(marker_cross);
//       marker_cross = new GMarker(map.getCenter(), icon_cross);

//       map.addOverlay(marker_cross);


      //十字クロスのポイント
      crosspoint = map.getCenter();
      var crosspointstr = "";
      crosspointstr = crosspoint.toString();
      var crosspointstrwk = "";
      var crosspoint_keido_ido = new Array();
      crosspointstrwk = crosspointstr.substring(1, (crosspointstr.length - 2));
      crosspoint_keido_ido = crosspointstrwk.split(",");

//    });


// }



    //]]>

