var define ={ i_Side:302, i_PoiSearch:303, i_JibunSearch:304, i_NJibunSearch:305, i_AreaBtn:400, i_AreaOk:0, i_AreaCancel:0, i_Tutorial:0, i_Aliasing_on:0, i_Aliasing_off:0, i_Notice:0, i_Toolbar:20, i_BtnTool:30, i_LevelBar:1, i_ZoomOut:2, i_ZoomIn:3, i_ToolClip:50, i_ThemeBase:0, i_ThemeNight:0, i_ThemeGray:0, i_GPS:6 }; var ctrlman, uiman, ctrlstate, util; //------------------------------------------------------------------------- function CreateButton(id, parent, imgPath, width, height, x, y){ var pObj = uiman.CreateUI_Button(uiman); pObj.SetParent(parent); pObj.SetUIID(id); pObj.SetAlpha(0); pObj.SetCanDrag(0); pObj.SetImageList(imgPath, width, height); pObj.SetBound(x, y, width, height); pObj.SetImageAutoChange(0); pObj.SetItemIndex(0); pObj.AddEventMode(util.GetConstToValue("TMEVENTTYPE_MOUSEENTER")); return pObj; } //------------------------------------------------------------------------- function CreateUIImage(id, parent, imgPath, width, height, x, y){ var pObj = uiman.CreateUI_Image(uiman); pObj.SetParent(parent); pObj.SetUIID(id); pObj.SetAlpha(0); pObj.SetCanDrag(0); pObj.SetImage(imgPath); pObj.SetBound(x, y, width, height); pObj.SetCanClick(true); pObj.AddEventMode(util.GetConstToValue("TMEVENTTYPE_MOUSEENTER")); return pObj; } //------------------------------------------------------------------------- var G_Search = function() { var robj = ""; var uiid = 300; var btnSide, btnJibun, btnNJibun, btnPOI; //------------------------------------------------------------------------- this.CreateSearchForm= function() { CreateForm(); }; //------------------------------------------------------------------------- function CreateForm() { ctrlman = m_Map.GetCtrlMan(); uiman = ctrlman.GetUIMan(); ctrlstate= ctrlman.GetControlState(); util = m_Map.GetUtility(); var imageman = ctrlman.GetImageMan(); imageman.SetDefaultPath(defaultImagePath); // panel var panel = uiman.CreateUI_Panel(uiman); panel.SetParent(uiman); panel.SetUIID(uiid); panel.SetBound(0, 30, 306, 584); // Background var bg = CreateUIImage(uiid++, panel, "bg_search_box.png", 269, 584, 0, 0); // btnSide btnSide = CreateUIImage(define.i_Side, panel, "btn_hide.png", 16, 53, 266, 270); btnSide.SetTag(1); // btnPOI var m_x=80; btnPOI = CreateButton(define.i_PoiSearch, panel, "tab_place_on.png", 80, 32, 10,9); btnJibun = CreateButton(define.i_JibunSearch, panel, "tab_add_old_on.png", 80, 32, 90, 9); btnNJibun = CreateButton(define.i_NJibunSearch, panel, "tab_add_new_on.png", 80, 32, 170, 9); btnJibun.SetItemIndex(1); btnNJibun.SetItemIndex(1); } //------------------------------------------------------------------------- this.ChangeMenu=function(a){ var obj = $("#sForm").contents(); if (a == 1){ btnPOI.SetItemIndex(0); btnJibun.SetItemIndex(1); btnNJibun.SetItemIndex(1); obj.find("#search_1").removeClass("hide"); obj.find("#search_2").addClass("hide"); obj.find("#search_3").addClass("hide"); } else if (a == 2){ btnPOI.SetItemIndex(1); btnJibun.SetItemIndex(0); btnNJibun.SetItemIndex(1); obj.find("#search_1").addClass("hide"); obj.find("#search_2").removeClass("hide"); obj.find("#search_3").addClass("hide"); } else { btnPOI.SetItemIndex(1); btnJibun.SetItemIndex(1); btnNJibun.SetItemIndex(0); obj.find("#search_1").addClass("hide"); obj.find("#search_2").addClass("hide"); obj.find("#search_3").removeClass("hide"); } var fn = $("#sForm")[0].contentWindow['search_init']; fn(); }; //------------------------------------------------------------------------- //------------------------------------------------------------------------- } //----------------------------------------------------------------------------- // code 0 : do, 1:gu //----------------------------------------------------------------------------- function GetAdminName(div, code, type){ var adminMan = m_Map.GetCtrlMan().GetAdminMan(); var m_list = adminMan.GetAdminInfoList(code, 1); $("#sForm").contents().find(div+ " li").remove(); var a_list = m_list.split(";"); if (type == 1){ $("#sForm").contents().find(".section_area_b ul"). append('
  • 시/군/구
  • '); } else { $("#sForm").contents().find(".section_area_c ul"). append('
  • 동/면/읍
  • '); } $.each(a_list, function(i){ var arr=a_list[i].split(":"); if (type == 1) { $("#sForm").contents().find(".section_area_b ul").append( '
  • ' +arr[0]+'
  • '); } else { $("#sForm").contents().find(".section_area_c ul").append( '
  • ' +arr[0]+'
  • '); } }); }; //----------------------------------------------------------------------------- //code 0 : do, 1:gu //----------------------------------------------------------------------------- function GetBAdminName(div, code, type){ var adminMan = m_Map.GetCtrlMan().GetBAdminMan(); var m_list = adminMan.GetAdminInfoList(code, 1); $("#sForm").contents().find(div+ " li").remove(); var a_list = m_list.split(";"); // 초기화 if (type == 1){ $("#sForm").contents().find(".section_area_b ul"). append('
  • 시/군/구
  • '); } else { $("#sForm").contents().find(".section_area_c ul"). append('
  • 동/면/읍
  • '); } $.each(a_list, function(i){ var arr=a_list[i].split(":"); if (type == 1) { $("#sForm").contents().find(".section_area_b ul").append( '
  • ' +arr[0]+'
  • '); } else { $("#sForm").contents().find(".section_area_c ul").append( '
  • ' +arr[0]+'
  • '); } }); }; //----------------------------------------------------------------------------- //search POI //----------------------------------------------------------------------------- function addPOI(gId, iId, Lon, Lat, Caption, Contents) { var ctrlman = m_Map.GetCtrlMan(); var poiman = ctrlman.GetPOIMan(); var util = m_Map.GetUtility(); var imageman = ctrlman.GetImageMan(); imageman.SetDefaultPath(defaultImagePath); var img = imageman.LoadImageList("POI", "poi.png",36, 26); var poiGroup = poiman.FindGroup(gId); if(!poiGroup){ poiGroup = poiman.NewGroup(gId); } var gstyle = poiman.FindStyle(100); if(!gstyle){ gstyle = poiman.NewStyle(100); gstyle.SetGDIFont("굴림", 0, 9); gstyle.SetFontColor(util.RGBColor(255, 255, 255)); gstyle.SetFontOutColor(util.RGBColor(255, 0, 0)); gstyle.SetBrush(util.RGBColor(255, 0, 0), 0); gstyle.SetPen(util.RGBColor(255, 0, 0), 1, 0); } poiGroup.SetStyle(gstyle); var item = poiGroup.NewItem(iId); item.SetLonLat(Lon, Lat); item.SetImage(img); item.SetShowImage(1); item.SetImageIndex(0); item.SetImageOffset(4); item.SetTextStyle(0x12); item.SetCaption(Caption + " "); item.SetContents(Contents); item.SetAlpha(0); //item.SetAnimation(200); } //----------------------------------------------------------------------------- function DeletePOI(gId) { var ctrlman = m_Map.GetCtrlMan(); var poiman = ctrlman.GetPOIMan(); if (poiman.FindGroup(gId)) { poiman.DeleteGroup(gId); } } //----------------------------------------------------------------------------- var b_iId=0; function findPOI(gId, iId) { var ctrlman = m_Map.GetCtrlMan(); var ctrlstate = ctrlman.GetControlState(); var poiman = ctrlman.GetPOIMan(); var poigroup = poiman.FindGroup(gId); var bItem = null; if (poigroup) { var item = poigroup.FindItem(iId); poiman.SetTopItem(item); //선택된 POI아이템이 제일 위에 보이게 함. item.SetImageIndex(1); var point = item.GetLonLat(); ctrlstate.SetLLCenter(point._X, point._Y); m_Map.SetFocus(); if(b_iId!=0 && b_iId != iId ) { bItem = poigroup.FindItem(b_iId); bItem.SetImageIndex(0); } } b_iId = iId; } //----------------------------------------------------------------------------- //----------------------------------------------------------------------------- var G_AreaNavi = function() { var robj = ""; var naviObj = ""; var stcArea = null; var uiid = 400; var uiid_a = 410; var adminCode = 0; //----------------------------------------------------------------------------- this.CreateAreaForm = function() { CreateNaviForm(); naviObj = CreateAreaForm(); }; //----------------------------------------------------------------------------- this.SetShowNavi=function(val) { var a =""; if(naviObj != "") { a = naviObj.GetVisible(); if (val != null){ naviObj.SetVisible(val); } else { if(a== 0) naviObj.SetVisible(1); else naviObj.SetVisible(0); } } return a; }; //----------------------------------------------------------------------------- this.SetAreaName=function(X, Y) { var name = ""; var lon,lat; if (X == null || Y == null) { var posLL = m_Map.GetCtrlMan().GetControlState().GetLLCenter(); lon = posLL._X; lat = posLL._Y; } var pos = m_Map.GetCtrlMan().GetControlState().DPToLL(X, Y); lon = pos._Lon; lat = pos._Lat; var adminMan = m_Map.GetCtrlMan().GetAdminMan(); var item = adminMan.GetAdminItem(lon, lat); if(item == null) return; name = item.GetAdminName(" > ", 3); if (stcArea != null) stcArea.SetCaption(name); adminCode = item.GetAdminCode(); if (this.adminCode != 0) { this.GetAdminName(".group_02", adminCode.substring(0, 2)); this.GetAdminName(".group_03", adminCode.substring(0, 5)); var fn = $("#sForm2")[0].contentWindow['SetData']; if (fn != null) { fn(adminCode.substring(0, 2)); fn(adminCode.substring(0, 5)); fn(adminCode); } } }; //----------------------------------------------------------------------------- function CreateNaviForm() { ctrlman = m_Map.GetCtrlMan(); uiman = ctrlman.GetUIMan(); ctrlstate= ctrlman.GetControlState(); util = m_Map.GetUtility(); var imageman = ctrlman.GetImageMan(); imageman.SetDefaultPath(defaultImagePath); var dpsize = ctrlstate.GetSizeDP(); //panel var panel = uiman.CreateUI_Panel(uiman); panel.SetParent(uiman); panel.SetUIID(uiid); panel.SetAnchor(util.GetConstToValue("TMUIOBJ_ANCHOR_RIGHT")); panel.SetBound(dpsize.GetCX()-290, 40, 280, 46); panel.SetPanelImage("nav_left.png", "nav_middle.png", "nav_right.png"); panel.SetCanClick(1); panel.SetCanDrag(1); // StaticText stcArea = uiman.CreateUI_StaticText(uiman); stcArea.SetParent(panel); stcArea.SetUIID(uiid++); stcArea.SetBound(0, 0, 270, 40); stcArea.SetUIObjFontColor(util.RGBColor(82, 139, 206)); stcArea.SetFont(9, 1, "NanumGothic"); stcArea.SetCanFocus(0); stcArea.SetCanClick(0); stcArea.SetCaption("서울특별시 > 강남구 > 삼성1동 "); panel.SetAnchor(util.GetConstToValue("TMUIOBJ_ANCHOR_RIGHT")); var btn = CreateButton(define.i_AreaBtn=uiid++, panel, "btn_drop.png", 16, 16, 250, 10); } //----------------------------------------------------------------------------- function CreateAreaForm() { var dpsize = ctrlstate.GetSizeDP(); //panel var panel = uiman.CreateUI_Panel(uiman); panel.SetParent(uiman); panel.SetUIID(uiid_a); panel.SetAnchor(util.GetConstToValue("TMUIOBJ_ANCHOR_RIGHT")); panel.SetBound(dpsize.GetCX()-445, 90, 430, 242); panel.SetCanClick(0); panel.SetCanDrag(1); panel.SetVisible(0); var bg = CreateUIImage(uiid_a++, panel, "bg_area_list.png", 430, 207, 0, 0); var btnOk = CreateButton(define.i_AreaOk = uiid_a++, panel, "btn_confirm.png", 68, 36, 150, 164); var btnCancel = CreateButton(define.i_AreaCancel=uiid_a++, panel, "btn_cencal.png", 68, 36, 223, 164); return panel; } //----------------------------------------------------------------------------- this.GetAdminName= function(ul, code){ var $frm = $("#sForm2"); var adminMan = m_Map.GetCtrlMan().GetAdminMan(); var m_list = adminMan.GetAdminInfoList(code, 1); // init $frm.contents().find(".group_03 li").remove(); $frm.contents().find(".group_03").append("
  • 동/면/읍
  • "); $frm.contents().find(ul+ " li").remove(); var a_list = m_list.split(";"); $.each(a_list, function(i){ var arr=a_list[i].split(":"); if (ul == ".group_02"){ $frm.contents().find(ul).append( "
  • "+arr[0]+"
  • "); } else if (ul == ".group_03"){ $frm.contents().find(ul).append( "
  • "+arr[0]+"
  • "); } }); }; //----------------------------------------------------------------------------- this.GotoAdmin=function(){ var $frm = $("#sForm2"); var a = $frm.contents().find(".group_01 .selected"); var b = $frm.contents().find(".group_02 .selected"); var c = $frm.contents().find(".group_03 .selected"); var code = a[0].id; if (b.length > 0) { code = b[0].id; } if (c.length > 0){ code = c[0].id; } else { alert("동/면/읍 을 선택해 주세요"); } var adminman = ctrlman.GetAdminMan(); var item = adminman.GetAdminItemBycode(code); if(item != null) { item.GotoCenter(0); var pos = item.GetCenterPos(0); var dpPos = ctrlman.GetControlState().LLToDP(pos._Lon, pos._Lat); this.SetAreaName(dpPos._X, dpPos._Y); } }; //----------------------------------------------------------------------------- }; var G_BottomMenu=function() { var obj = ""; var uiid = 500; var btnAliasing_on, btnAliasing_off; //----------------------------------------------------------------------------- this.CreateForm=function() { CreateMenu(); }; //----------------------------------------------------------------------------- function CreateMenu() { ctrlman = m_Map.GetCtrlMan(); uiman = ctrlman.GetUIMan(); ctrlstate= ctrlman.GetControlState(); util = m_Map.GetUtility(); var imageman = ctrlman.GetImageMan(); imageman.SetDefaultPath(defaultImagePath); var dpsize = ctrlstate.GetSizeDP(); //panel var panel = uiman.CreateUI_Panel(uiman); panel.SetParent(uiman); panel.SetUIID(uiid); panel.SetAnchor(util.GetConstToValue("TMUIOBJ_ANCHOR_RIGHT")); panel.SetBound(dpsize.GetCX()-331, 10, 316, 25); panel.SetCanClick(0); panel.SetCanDrag(1); var btnTutorial = CreateUIImage(define.i_Tutorial=uiid++, panel, "tutorial.png", 104, 21, 0, 0); btnAliasing_on = CreateUIImage(define.i_Aliasing_on=uiid++, panel, "AntiAliasing.png", 104, 21, 106, 0); var btnNotice = CreateUIImage(define.i_Notice=uiid++, panel, "legal_notice.png", 104, 21, 212, 0); btnAliasing_off = CreateUIImage(define.i_Aliasing_off=uiid++, panel, "AntiAliasing_off.png", 104, 21, 104, 0); btnAliasing_off.SetVisible(0); } //----------------------------------------------------------------------------- this.SetAliasingVisible = function() { if(btnAliasing_on.GetVisible()==0) { btnAliasing_on.SetVisible(1); btnAliasing_off.SetVisible(0); } else{ btnAliasing_on.SetVisible(0); btnAliasing_off.SetVisible(1); } }; }; var G_Toolbar = function() { var ctrlman, uiman, ctrlstate, util, imageman; var uiid = define.i_Toolbar;//200; var menu_btn_base_panel; var MyToolBar2 = null; var imgClipOnFlag = true; var sel_POI_Img= ""; var m_ImgClicpPanel = null; var menuOnFlag = false; var p_toolbar = null; var top_hide_btn = null; var a_theme = new Array(3); //---------------------------------------------------------------------------- this.CreateToolbarForm = function(){ createForm(); m_ImgClicpPanel = createImgClip(imgClipOnFlag); imageman = ctrlman.GetImageMan(); imageman.SetDefaultPath(defaultImagePath); imageman.LoadImageList("clip_01", "imgClip/img_01.png", 36, 32); imageman.LoadImageList("clip_02", "imgClip/img_02.png", 36, 32); imageman.LoadImageList("clip_03", "imgClip/img_03.png", 36, 32); imageman.LoadImageList("clip_04", "imgClip/img_04.png", 36, 32); imageman.LoadImageList("clip_05", "imgClip/img_05.png", 36, 32); imageman.LoadImageList("clip_06", "imgClip/img_06.png", 36, 32); imageman.LoadImageList("clip_07", "imgClip/img_07.png", 36, 32); imageman.LoadImageList("clip_08", "imgClip/img_08.png", 36, 32); imageman.LoadImageList("clip_09", "imgClip/img_09.png", 36, 32); imageman.LoadImageList("clip_10", "imgClip/img_10.png", 36, 32); imageman.LoadImageList("clip_11", "imgClip/img_11.png", 36, 32); imageman.LoadImageList("clip_12", "imgClip/img_12.png", 36, 32); imageman.LoadImageList("clip_13", "imgClip/img_13.png", 36, 32); imageman.LoadImageList("clip_14", "imgClip/img_14.png", 36, 32); imageman.LoadImageList("clip_15", "imgClip/img_15.png", 36, 32); }; //---------------------------------------------------------------------------- this.Add_imgPOI=function(poi_cap_txt,sel_POI_Img1) { var posLL = ctrlstate.GetLLCenter();//지도 중심좌표 //Step1. GetPOI Manager var poiman = ctrlman.GetPOIMan(); var image = null; if(sel_POI_Img1 == "" ) { alert("이미지를 선택해 주세요."); return; } else { image = imageman.FindImage(sel_POI_Img1); } //Step2. Make POI Style var group = poiman.FindGroup(100); if(!group)group = poiman.NewGroup(100); var style = poiman.FindStyle(99); if(!style) { style = poiman.NewStyle(99); style.SetGDIFont("굴림", 0, 9); style.SetFontColor(util.RGBColor(255, 255, 255)); style.SetFontOutColor(util.RGBColor(100, 0, 255)); style.SetPen(util.RGBColor(0,0,0), 1, 0); } //Step3. Make POI Items var item = group.NewItem(-1); item.SetLonLat(posLL._X , posLL._Y); item.SetImageOffset(4); item.SetTextStyle(0x12); item.SetStyle(style); item.SetCaption(poi_cap_txt + " "); item.SetContents("Contents: \n"+poi_cap_txt); item.SetSyncAngle(1); item.SetAngle(0); item.SetAlpha(100); item.SetImage(image); ImgClipVisible(); }; //---------------------------------------------------------------------------- this.Clear_imgPOI=function() { var poiman = ctrlman.GetPOIMan(); var group = poiman.FindGroup(100); if(group) { poiman.DeleteGroup(100); } }; //---------------------------------------------------------------------------- this.SetVisible=function() { ImgClipVisible(); }; this.ToolbarBound=function() { var dpsize = ctrlstate.GetSizeDP(); var width_px = dpsize._CX/2 - 450; var width_py = dpsize._CY - 75; if (p_toolbar == null) return; if(!menuOnFlag) { p_toolbar.MoveTo(width_px, width_py+50, 0, 30, 5); top_hide_btn.SetImage("show_tool.png"); menuOnFlag = true; } else { p_toolbar.MoveTo(width_px, width_py+4, 0, 30, 5); top_hide_btn.SetImage("hide_tool.png"); menuOnFlag = false; } }; //---------------------------------------------------------------------------- this.SetTheme=function(val) { if (a_theme == null)return; imageman.SetDefaultPath(defaultImagePath); if(val == 1) { a_theme[0].SetImage("theme_day_on.png"); a_theme[1].SetImage("theme_night.png"); a_theme[2].SetImage("theme_grey.png"); }else if(val == 2) { a_theme[0].SetImage("theme_day.png"); a_theme[1].SetImage("theme_night_on.png"); a_theme[2].SetImage("theme_grey.png"); }else { a_theme[0].SetImage("theme_day.png"); a_theme[1].SetImage("theme_night.png"); a_theme[2].SetImage("theme_grey_on.png"); } }; //---------------------------------------------------------------------------- function ImgClipVisible() { if(m_ImgClicpPanel.GetVisible() == 0) { m_ImgClicpPanel.SetVisible(1); $("#imgclip_div").show(); } else { m_ImgClicpPanel.SetVisible(0); $("#imgclip_div").hide(); } } //---------------------------------------------------------------------------- function createForm(){ ctrlman = m_Map.GetCtrlMan(); uiman = ctrlman.GetUIMan(); ctrlstate = ctrlman.GetControlState(); util = m_Map.GetUtility(); var imageman = ctrlman.GetImageMan(); imageman.SetDefaultPath(defaultImagePath); var dpsize = ctrlstate.GetSizeDP(); var width_px = dpsize._CX/2 - 450; var width_py = dpsize._CY - 70; /*panel - 20*/ var toolbar_panel = p_toolbar = uiman.CreateUI_Panel(uiman); toolbar_panel.SetParent(uiman); toolbar_panel.SetUIID(uiid++); toolbar_panel.SetBound(width_px,width_py,899,75); toolbar_panel.SetAnchor(util.GetConstToValue("TMUIOBJ_ANCHOR_BOTTOM")|| util.GetConstToValue("TMUIOBJ_ANCHOR_LEFT")); /*top panel hide button - 21*/ top_hide_btn = CreateUIImage(uiid++, toolbar_panel, "hide_tool.png", 55, 16, 422, 3); top_hide_btn.SetTag(1); /*menu Panel bg*/ var menu_panel_bg = uiman.CreateUI_Image(uiman); menu_panel_bg.SetParent(toolbar_panel); menu_panel_bg.SetImage("bg_tool.png"); menu_panel_bg.SetBound(0,13,899,59); menu_panel_bg.SetAlpha(0); menu_panel_bg.SetAnchor(util.GetConstToValue("TMUIOBJ_ANCHOR_BOTTOM")|| util.GetConstToValue("TMUIOBJ_ANCHOR_LEFT")); /*toolbar 생성 -22*/ var timer; var menu_btn_y; var menu_btn_x = 0; var empty_panel; uiid = define.i_BtnTool=30;//30 MyToolBar2 = new Array(19); for(var i=0; i < MyToolBar2.length ; i++) { menu_btn_x = 32*i; MyToolBar2[i] = uiman.CreateUI_Button(uiman); MyToolBar2[i].SetParent(menu_panel_bg); MyToolBar2[i].SetUIID(uiid++); MyToolBar2[i].SetImageList("tool_btn_"+i+".png", 28,28); if(i<3) MyToolBar2[i].SetBound(menu_btn_x+35, 17, 28, 28); else if(i>=3 && i < 7 )MyToolBar2[i].SetBound(menu_btn_x+50, 17, 28, 28); else if(i>=7 && i<10) MyToolBar2[i].SetBound(menu_btn_x+59, 17, 28, 28); else if(i>=10 && i< 15) MyToolBar2[i].SetBound(menu_btn_x+70, 17, 28, 28); else if(i>=15 && i< MyToolBar2.length-1) MyToolBar2[i].SetBound(menu_btn_x+82, 17, 28, 28); else MyToolBar2[i].SetBound(menu_btn_x+81, 17, 50, 28); MyToolBar2[i].SetAlpha(0); MyToolBar2[i].SetCanClick(1); MyToolBar2[i].SetCanDrag(0); MyToolBar2[i].SetImageAutoChange(1); MyToolBar2[i].AddEventMode(util.getConstToValue("TMEVENTTYPE_MOUSEUP")); if (i == 0) MyToolBar2[i].SetHint("Refresh"); else if (i == 1) MyToolBar2[i].SetHint("이전화면"); else if (i == 2) MyToolBar2[i].SetHint("다음화면"); else if (i == 3) MyToolBar2[i].SetHint("회전"); else if (i == 4) MyToolBar2[i].SetHint("3차원보기"); else if (i == 5) MyToolBar2[i].SetHint("3D빌딩보기"); else if (i == 6) MyToolBar2[i].SetHint("텍스트표출"); else if (i == 7) MyToolBar2[i].SetHint("출력"); else if (i == 8) MyToolBar2[i].SetHint("저장"); else if (i == 9) MyToolBar2[i].SetHint("클립보드 저장"); else if (i == 10) MyToolBar2[i].SetHint("이미지 클립 추가"); else if (i == 11) MyToolBar2[i].SetHint("도형 그리기"); else if (i == 12) MyToolBar2[i].SetHint("선 그리기"); else if (i == 13) MyToolBar2[i].SetHint("객체 수정"); else if (i == 14) MyToolBar2[i].SetHint("선,도형, 이미지 클립 삭제"); else if (i == 15) MyToolBar2[i].SetHint("면적 측정"); else if (i == 16) MyToolBar2[i].SetHint("거리 측정"); else if (i == 17) MyToolBar2[i].SetHint("객체 삭제"); else if (i == 18) MyToolBar2[i].SetHint("테마 설정"); } uiid = 690; var btnTheme1 = a_theme[0] =CreateUIImage(define.i_ThemeBase=uiid++, menu_panel_bg, "theme_day_on.png", 28, 28, menu_btn_x+200, 17); btnTheme1.SetTag(1); var btnTheme2 = a_theme[1] =CreateUIImage(define.i_ThemeNight=uiid++, menu_panel_bg, "theme_night.png", 28, 28, menu_btn_x+230, 17); btnTheme2.SetTag(0); var btnTheme3 = a_theme[2] =CreateUIImage(define.i_ThemeGray=uiid++, menu_panel_bg, "theme_grey.png", 28, 28, menu_btn_x+260, 17); btnTheme3.SetTag(0); } //---------------------------------------------------------------------------- function toolbar_center_line(menu_line_x) { menu_btn_base_panel = uiman.CreateUI_Panel(uiman); menu_btn_base_panel.SetParent(menu_btn_base_panel); menu_btn_base_panel.SetBound(25,17,680,28); } //---------------------------------------------------------------------------- function createImgClip(imgClipOnFlag){ var ctrlman,uiman,ctrlstate,util,imageman,dpsize; var uiid = 49; ctrlman = m_Map.GetCtrlMan(); uiman = ctrlman.GetUIMan(); ctrlstate = ctrlman.GetControlState(); util = m_Map.GetUtility(); imageman = ctrlman.GetImageMan(); imageman.SetDefaultPath(defaultImagePath); dpsize = ctrlstate.GetSizeDP(); var width_px = dpsize._CX/2; var width_py = dpsize._CY - 320; var imgClipBg = uiman.CreateUI_Panel(uiman); imgClipBg.SetParent(uiman); imgClipBg.SetUIID(uiid++); imgClipBg.SetBound(width_px,width_py, 430, 233); imgClipBg.SetAnchor(util.GetConstToValue("TMUIOBJ_ANCHOR_BOTTOM") | util.GetConstToValue("TMUIOBJ_ANCHOR_CENTER")); imgClipBg.SetAlpha(0); imgClipBg.SetCanClick(1); imgClipBg.SetCanDrag(1); imgClipBg.SetVisible(0); var imgClipBgImg = uiman.CreateUI_Image(uiman); imgClipBgImg.SetParent(imgClipBg); imgClipBgImg.SetImage("imgClip/navbox_all.png"); imgClipBgImg.SetBound(0,0,430,233); var closeBtnX = imgClipBg.GetWidth(); var clipCloseBtn = uiman.CreateUI_Button(uiman); clipCloseBtn.SetParent(imgClipBg); clipCloseBtn.SetUIID(define.i_ToolClip = uiid++);//50 clipCloseBtn.SetBound(closeBtnX-30, 17, 14, 14 ); clipCloseBtn.SetImage("btn_close.png"); clipCloseBtn.SetCanClick(1); clipCloseBtn.SetAlpha(0); clipCloseBtn.AddEventMode(util.GetConstToValue("TMEVENTTYPE_MOUSEUP")); //이미지 클립 버튼 부분 div 위치변경 document.getElementById("imgclip_div").style.bottom = 100+"px"; document.getElementById("imgclip_div").style.left = Math.ceil(width_px+20)+"px"; return imgClipBg; } //---------------------------------------------------------------------------- }; //------------------------------------------------------------------------------- // RIGHT_MENU //----------------------------------------------------------------------------- var gLevelImg; var gLevelBarBg; var Right_Menu = function() { var imageman,dpsize; var uiid; var btnZoomOut=null,btnZoomIn=null,levelText=null,btnLevel=null; var levelBtn; //----------------------------------------------------------------------------- this.CreateRightMenu = function() { init(); createLevelBar(); var now_level = ctrlstate.GetLevel(); this.ChangeLevelBarImgPos(now_level); this.ChangeLevelText(now_level); createCompass(); }; //----------------------------------------------------------------------------- this.MapLevel_Master=function(level) { var SetEnable = 1; var SetDisable = 0; if(gLevelBarFlag != true) return; for(var i=0; i < btnLevel.length; i++) { if(level == i ) btnLevel[i].SetItemIndex(SetEnable); else btnLevel[i].SetItemIndex(SetDisable); } } //----------------------------------------------------------------------------- // 레벨바 투명버튼 //------------------------------------------------------------------------------ this.ClickLevelBtn = function(sel_level){ this.ChangeLevelBarImgPos(sel_level); this.ChangeLevelText(sel_level); ctrlstate.SetLevel(sel_level); }; //----------------------------------------------------------------------------------------- // ChangeLevelBarImgPos 레벨바 이비지 위치 변경 //---------------------------------------------------------------------------------- this.ChangeLevelBarImgPos=function(now_level) { if (now_level == null) { now_level = ctrlstate.getLevel(); } var CY = btnZoomOut.GetHeight() + 22; gLevelImg.SetBound(15, CY+(12-now_level)*9, 16, 16); } //----------------------------------------------------------------------------------------- // ChangeLevelBarImgPos 레벨바 이비지 위치 변경 //---------------------------------------------------------------------------------- this.ChangeLevelText=function(now_level) { if (now_level == null) { now_level = ctrlstate.getLevel(); } levelText.SetCaption(now_level); } //----------------------------------------------------------------------------- this.GetZoomOut=function(){ return btnZoomOut; }; //----------------------------------------------------------------------------- function init() { ctrlman = m_Map.GetCtrlMan(); uiman = ctrlman.GetUIMan(); ctrlstate = ctrlman.GetControlState(); util = m_Map.GetUtility(); imageman = ctrlman.GetImageMan(); imageman.SetDefaultPath(defaultImagePath); dpsize = ctrlstate.GetSizeDP(); btnLevel = new Array(13); gLevelBarBg=null; } //----------------------------------------------- function createCompass() { if(uiman.SetCompassImage("compass.png", 49, 49)) { var compass = uiman.GetCompass(); if(compass) { compass.SetWidth(49); compass.SetHeight(49); compass.SetCanDrag(1); compass.SetTop(100); compass.SetLeft(gLevelBarBg.GetLeft()-2); compass.SetNativeEventNotify(1); compass.SetAlpha(0); } } } //------------------------------------------------------ function createLevelBar() { uiid = 1; gLevelBarBg = CreateButton(define.i_LevelBar=uiid++, uiman, "bg_zoom.png", 46, 232, dpsize._CX-61, 150); gLevelBarBg.SetAlpha(0); gLevelBarBg.SetCanDrag(1); gLevelBarBg.SetCanClick(1); gLevelBarBg.SetAnchor(util.GetConstToValue("TMUIOBJ_ANCHOR_TOP") | util.GetConstToValue("TMUIOBJ_ANCHOR_RIGHT")); gLevelBarBg.AddEventMode(util.GetConstToValue("TMEVENTTYPE_MOUSELEAVE")| util.GetConstToValue("TMEVENTTYPE_MOUSEENTER")); //Zoomout Button btnZoomOut = CreateButton(define.i_ZoomOut=uiid++, gLevelBarBg, "btn_zoomout.png", 16, 16, 15, 15) btnZoomOut.SetDragTracker(1); btnZoomOut.SetCanClick(1); btnZoomOut.AddEventMode(util.GetConstToValue("TMEVENTTYPE_MOUSEUP")| util.GetConstToValue("TMEVENTTYPE_MOUSELEAVE")| util.GetConstToValue("TMEVENTTYPE_MOUSEENTER")); //레벨별 투명 버튼 levelBtn = new Array(13); var uiid_b=200; for(var i=0;i 10) { GPSMan.SetInterval(n_val - 10); } gps_info_txt[0].SetCaption(GPSMan.GetInterval()); } }; this.GPSNOW = function() { var ctrlman = m_Map.GetCtrlMan(); var carMan = ctrlman.GetCarMan(); carMan.SetSyncGPSMan(1); carMan.SetPosSyncMode(1); carMan.SetHeadingUpMode(1); carMan.SetBirdViewMode(1); }; this.GPSInfoTxt = function(XGPSMan, Flag, Data) { var info = XGPSMan.GetGPSInfo(); var pos,state; var coord = m_Map.GetCoordSys(); if (info) { pos = info.GetGPS_Pos(); if (pos) { gps_info_txt[0].SetCaption(XGPSMan.GetInterval()); // 주기 gps_info_txt[1].SetCaption(DatePtr(pos.GetTimeToStr())); // 날짜 gps_info_txt[4].SetCaption(TimePtr(pos.GetTimeToStr())); // 시간 gps_info_txt[5].SetCaption(pos.GetAltitude() + "m"); // 고도 gps_info_txt[3].SetCaption(fixNumberScale(pos.GetSpeed(), 3) + "㎞"); // 속도 gps_info_txt[6].SetCaption(Math.round(pos.GetAngle()) + "˚"); //각도 //stcAraMsg[6].SetCaption(coord.ToHMSStr(pos.GetMapPos()._Lon)); 법적공지에 의한 표시 불가 2009.11.19 kimjieun //stcAraMsg[7].SetCaption(coord.ToHMSStr(pos.GetMapPos()._Lat)); } GPSStatePOI(12, info); } }; function GPSStatePOI(cnt, info) { var ctrlman = m_Map.GetCtrlMan(); var poiman = ctrlman.GetPOIMan(); var gpsman = ctrlman.GetGPSMan(); var util = m_Map.GetUtility(); var poss = util.GetPoint(101, 90); var state; var snrState = 0; var OnGPSCnt = 0; for (var i=0; i < cnt; i++) { state = info.GetGPS_Satellite(i); if (state.GetUsedForFix() == 1) { var n_pos = gpsman.GetSatelliteDPPos(state, 74, poss); var snr = state.GetSnr(); if (snr > 0 && snr < 33) snrState = 1; else if (snr > 32 && snr < 66) snrState = 2; else if (snr > 65 && snr < 100) snrState = 3; satellite[i].SetVisible(1); satellite[i].SetBound( n_pos._X, n_pos._Y, 37, 17); if (satellite[i].GetTag() != snrState) { satellite[i].SetTag(snrState); if (snrState == 1) satellite[i].SetMGImage(img_gps_false); else if (snrState == 2) satellite[i].SetMGImage(img_gps_row); else if (snrState == 3) satellite[i].SetMGImage(img_gps_true); satellite[i].SetHint("위성ID :" +state.GetSatelliteID() + "\n" + "방위각 :" +state.GetAzimuth() + " °\n" + "높이 :" +state.GetElevation() + " °\n" + "신호강도 :" +state.GetSnr() + "dBHz"); } OnGPSCnt++; } else { satellite[i].SetVisible(0); } gps_info_txt[2].SetCaption(OnGPSCnt + " / " + cnt); } } function DatePtr(time) { var str; if(time.length > 10) { str = time.substring(0, 4) + " "; str += time.substring(4, 6) + " "; str += time.substring(6, 8) + " "; } return str; } function TimePtr(time) { var str; if(time.length > 10) { str = time.substring(8, 10) + ":"; str += time.substring(10, 12) + ":"; str += time.substring(12, 14); } return str; } function fixNumberScale(number, scale) { var pm = Math.pow(10, scale); return Math.round(number * pm) /pm; } };