向圖層中添加點

在添加點之前先要在地圖上創建一個臨時圖層,創建臨時圖層請參考《MapXtreme2005學習(1):創建臨時圖層》。本示例中通過指定圖層名,表名,點座標在圖層中添加一個點。代碼如下:
複製內容到剪貼板
代碼:
/// <summary>

/// 向圖層中添加點


/// 2008年8月6日

/// <param name="tempLayerTableName">表名</param>

/// <param name="tempLayerName">圖層名</param>

/// <param name="dPoint">點座標</param>

/// </summary>

public static void AddPointToLayer(string tempLayerTableName, string tempLayerName, DPoint dPoint)

{

MapInfo.Mapping.Map myMap = MapInfo.Engine.Session.Current.MapFactory[MapControl1.MapAlias];

//獲取圖層和表

FeatureLayer workLayer = (MapInfo.Mapping.FeatureLayer)myMap.Layers[tempLayerName];

MapInfo.Data.Table tblTemp = MapInfo.Engine.Session.Current.Catalog.GetTable(tempLayerTableName);

//創建點圖元及其樣式

FeatureGeometry pgPoint = new MapInfo.Geometry.Point(workLayer.CoordSys, dPoint);

MapInfo.Styles.SimpleVectorPointStyle spsPoint = new
MapInfo.Styles.SimpleVectorPointStyle(37, System.Drawing.Color.Red, 20);

MapInfo.Styles.CompositeStyle csPoint = new MapInfo.Styles.CompositeStyle(spsPoint);

MapInfo.Data.Feature ptPoint = new MapInfo.Data.Feature(tblTemp.TableInfo.Columns);

ptPoint.Geometry = pgPoint;

ptPoint.Style = csPoint;

//將點圖元加入圖層

workLayer.Table.InsertFeature(ptPoint);

}
發佈了45 篇原創文章 · 獲贊 0 · 訪問量 2522
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章