SharpMap學習筆記1

2021-07-02 06:47:31 字數 2318 閱讀 6546

// 新增vectorlayer

sharpmap.layers.vectorlayer mylayer = new sharpmap.layers.vectorlayer("mylayer");

string mylayerfullpath = @"e:\new_shapefile.shp";

mylayer.datasource = new sharpmap.data.providers.shapefile(mylayerfullpath);

// 新增labellayer

labellayer mylblyr = new labellayer("mylabellayer");

mylblyr.datasource = mylayer.datasource;

mylblyr.labelcolumn = "labelfield";

// 設定vectorlayer圖層樣式

//vectorstyle style = new vectorstyle();

= brushes.blue;// 注:這裡的style相當於symbol,乙個featureclass中的所有要素都是這個符號(樣式)

= style; 

// 在製圖表達中,往往需要根據要素不同型別採用不同方式表達,例如乙個道路要素類,有高速公路、一級道路、二級道路等不同型別

// 需要採用不同樣式(style)表達,這時sharpmap.rendering.thematics中的物件就派上用場

// 1 使用customtheme--vectorlayer

sharpmap.rendering.thematics.customtheme mytheme = new sharpmap.rendering.thematics.customtheme(setcitystyle);

mylayer.theme = mytheme;

// 2 使用gradienttheme--vectorlayer

vectorstyle minstyle = new vectorstyle();

minstyle.fill = brushes.black;

vectorstyle maxstyle = new vectorstyle();

maxstyle.fill = brushes.red;

sharpmap.rendering.thematics.gradienttheme mytheme2 = new sharpmap.rendering.thematics.gradienttheme("id", 1, 4, minstyle, maxstyle);

// 3 使用colorblend(設定此屬性會覆蓋minstyle、maxstyle)--vectorlayer

mytheme2.fillcolorblend = sharpmap.rendering.thematics.colorblend.rainbow5;

mylayer.theme = mytheme2;

// 設定labellayer樣式

labelstyle lblmin = new labelstyle();

labelstyle lblmax = new labelstyle();

lblmin.forecolor = color.black;

lblmin.font = new font(fontfamily.genericsansserif,6);

lblmax.forecolor = color.blue;

lblmax.backcolor = new solidbrush(color.fromargb(128,255,255,255));

lblmin.backcolor = lblmax.backcolor;

lblmax.font = new font(fontfamily.genericsansserif,9);

mylblyr.theme = new sharpmap.rendering.thematics.gradienttheme("id",1,4,lblmin,lblmax);

// 新增圖層

mapbox1.map.layers.add(mylayer);

mapbox1.map.layers.add(mylblyr);

mapbox1.map.zoom = 1000; 

// 這裡的zoom應該是mapwidth,地圖的寬度(zoom)會根據其包含的圖層寬度自動調整

mapbox1.map.zoomtoextents();

mapbox1.activetool = sharpmap.forms.mapbox.tools.pan;

mapbox1.refresh();

#sharpmap

學習筆記1

struct test test int x void fun class test1 test1 int x void fun int main void test1 a 行1 a.fun 行2 test1 b 行3 b.fun 行4 test c 行5 c.fun 行6 test d 行7 d....

學習筆記1

1 字串原地逆序 使用臨時變數 void reverse string s 5 求平均值 避免溢位 int f int x,int y 6 楊氏矩陣 bool young int a m n int x return false 7 十進位制轉十六進製制 string decimaltohexade...

學習筆記1

第二單元 linux的基本操作 1.改變使用者的密碼 passwd命令 注 a.只有root使用者可以修改其他使用者的密碼。普通使用者只能修改自己的密碼,且密碼必須設定地較為複雜,否則修改不成功 b.若執行passwd命令時後面不加使用者名稱,表示的是修改當前使用者的密碼。2.系統使用者的分類 注 ...