// 新增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.系統使用者的分類 注 ...