学習体験マップ上のポイント/ラインを作成して、マークを表示するためのMapXtreme 2005(5)

新しい例

 

1:新規プロジェクト

新しいWebサイト、選択のMapXtreme 6.7.1 Webアプリケーション作成

にApp_Code内を、私たちは、という名前の新しいクラスを作成します。LayerManager.csを

 

2:セクションは、クラスLayerManagerに関数に入れます

機能を完全にコピーのコードと同様に、名前空間を使用して

 

3:オープンMapForm.csは、Page_Loadのコードでは、次のコードを追加します

05233313_vhQE.gif 05233313_w2ZV.gif コード  tableNameの  = " tableNameの" 、layerName  = " layerName " ; // だけ定義する2人の名前        LayerManager.CreateLayer(tableNameの、layerName); // 層作成        LayerManager.AddPoint(layerName、GetDPoint(60 60 )、  35 、 Color.Red); // 五角形赤色ドット作成        LayerManager.AddLine(layerName、GetDPoint(160 、  160 )、GetDPoint(300 、  160 )、  59 、Color.Red); //は、単一の赤線の矢印を作成します
   



        LayerManager.ShowValue(tableNameの、  " " ); // 表示ラベル

説明:

地図に戻るGetDPoint(int型のx、int型Y)機能、主として着信クライアント座標、緯度と経度であります

 

GetDPointは機能に従います

05233313_vhQE.gif 05233313_w2ZV.gif コード
プライベート DPoint GetDPoint(int型の X、int型 Y)
05233313_w2ZV.gif05233313_vhQE.gif    
{         DPoint DP  = 新新 DPoint();         System.Drawing.Pointポイント  = 新しい新しい System.Drawing.Point(X、Y); // クライアント座標(相対マップ)        地図マップ  =  MapInfo.Engine.Session.Current.MapFactory [ 0 ];         map.DisplayTransform.FromDisplay(点、  OUT  DP); // 対応する緯度と経度のスイッチの位置座標を返す ; DPを    }
 
 


        

4:次のように全ページのコードがあります

05233313_vhQE.gif 05233313_w2ZV.gif コード
の公共部分クラス _Default:System.Web.UI.Page  { プライベートボイド をPage_Load(オブジェクト 送信者、System.EventArgs e)の{ //  のStateManagerは、セッション内に存在しない場合は、他のそれはそれを得る置きます。もし (StateManager.GetStateManagerFromSession()  == nullの            StateManager.PutStateManagerInSession(新しい AppStateManager()); //  今の状態の復元        StateManager.GetStateManagerFromSessionを()ParamsDictionary [StateManager.ActiveMapAliasKey]。  =の MapControl1.MapAlias。  
05233313_w2ZV.gif05233313_vhQE.gif

    
 
05233313_ycme.gif05233313_ROlt.gif    

        

         


        


        StateManager.GetStateManagerFromSession()RestoreState();.

        
 tableNameの  = " tableNameの" 、layerName  = " layerName " ; // わずか2名定義        LayerManager.CreateLayer(tableNameの、layerNameを); // 層作成        LayerManager.AddPoint(layerNameをGetDPoint(60 60 )、  35 、Color.Red); // 五角形赤色ドット作成        LayerManager.AddLine(layerName、GetDPoint(160 、  160 )、GetDPoint(300 、  160 )、  59  


、Color.Red); //は、単一の赤線の矢印を作成し        、LayerManager.ShowValue(tableNameのを  " " ); // マークを表示    }

プライベート DPoint GetDPoint(int型 X、int型 Y)を{         DPoint DP  = 新しい新しい DPoint()。        ポイントSystem.Drawing.Point  = 新しい新しい System.Drawing.Point(X、Y); // クライアント座標(相対マップ)        マップマップ  =  MapInfo.Engine.Session.Current.MapFactory [ 0 ];         map.DisplayTransform.FromDisplay(ポイント、  OUT  DP); //
    

05233313_ycme.gif05233313_ROlt.gif    

 
 

转成相应的经纬度坐标返し DPを。    }
        
//  ページのアンロード時には、ステートセーブプライベートボイド Page_UnLoad(オブジェクト 送信者、System.EventArgs e)を{         StateManager.GetStateManagerFromSession()ステートセーブ();     } }
    

     
05233313_ycme.gif05233313_ROlt.gif    



5:業績

OK、ビューを保存し、あなたが適切な場所にページ上で見ることができる、我々は五芒星と赤い矢印ウェイラインを作成しました

 

 

ます。https://my.oschina.net/secyaher/blog/274116で再現

おすすめ

転載: blog.csdn.net/weixin_33806300/article/details/91966797