建立示例
1:建立項目
建立一個網站,選擇mapxtreme 6.7.1 web application
在app_code中,我們建立一個類,起名叫:layermanager.cs
2:把上節函數放到類layermanager中
把上一節的函數代碼全copy過來,還有using的名稱空間
3:打開mapform.cs,在page_load代碼裡,添加如下代碼
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五)
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) string tablename = "tablename", layername = "layername";//随便定義兩個名字
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) layermanager.createlayer(tablename, layername);//建立圖層
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) layermanager.addpoint(layername, getdpoint(60,60), 35, color.red);//建立一個紅色五角星的點
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) layermanager.addline(layername, getdpoint(160, 160), getdpoint(300, 160), 59, color.red);//建立一條紅色單箭頭的線
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) layermanager.showvalue(tablename, "value");//顯示标注
說明:
裡面有一個getdpoint(int x,int y)函數,主要是傳入用戶端的坐标,傳回地圖的經緯度
getdpoint 函數如下
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五)
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) private dpoint getdpoint(int x,int y)
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) {
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) dpoint dp = new dpoint();
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) system.drawing.point point = new system.drawing.point(x, y);//用戶端坐标(相對地圖)
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) map map = mapinfo.engine.session.current.mapfactory[0];
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) map.displaytransform.fromdisplay(point, out dp);//轉成相應的經緯度坐标
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) return dp;
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) }
4:完整的頁面代碼如下
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五)
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) public partial class _default : system.web.ui.page
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) {
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) private void page_load(object sender, system.eventargs e)
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五)
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) // if the statemanager doesn't exist in the session put it else get it.
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) if (statemanager.getstatemanagerfromsession() == null)
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) statemanager.putstatemanagerinsession(new appstatemanager());
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五)
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) // now restore state
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) statemanager.getstatemanagerfromsession().paramsdictionary[statemanager.activemapaliaskey] = mapcontrol1.mapalias;
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) statemanager.getstatemanagerfromsession().restorestate();
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五)
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) string tablename = "tablename", layername = "layername";//随便定義兩個名字
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五)
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五)
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五)
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五)
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五)
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) private dpoint getdpoint(int x,int y)
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五)
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五)
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五)
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五)
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五)
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五)
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五)
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) // at the time of unloading the page, save the state
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) private void page_unload(object sender, system.eventargs e)
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五)
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) statemanager.getstatemanagerfromsession().savestate();
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五)
MapXtreme 2005 學習心得 在地圖上建立點/線并顯示标注(五) }
5:運作結果
ok,儲存,浏覽,即可在頁面上看到在相應的地方上,建立了一個五角星和一個紅色單向箭頭線