MapXtremE 中改變feature顏色

2021-04-21 14:59:15 字數 2937 閱讀 4316

1.c# code:

mapinfo.data.table table =mapinfo.engine.session.current.catalog.opentable(@"c:/programfiles/mapinfo/mapxtreme2004/maps/north america/usa.tab";

this.mapcontrol1.map.load(new maptableloader(table));

mapinfo.data.searchinfo si = mapinfo.data.searchinfofactory.searchall ();

mapinfo.data.iresultsetfeaturecollection irfc = mapinfo.engine.session.current.catalog.search(table.alias,si);

mapinfo.data.feature ftr = irfc[0];

mapinfo.styles.******interior sis = new mapinfo.styles.******interior(9,system.drawing.color.purple );

mapinfo.styles.linewidth lw = new mapinfo.styles.linewidth(3,mapinfo.styles.linewidthunit.point );

mapinfo.styles.******linestyle sl = new mapinfo.styles.******linestyle (lw,3);

mapinfo.styles.areastyle ar = new mapinfo.styles.areastyle (sl,sis);

mapinfo.styles.compositestyle cs = new mapinfo.styles.compositestyle(ar);

ftr.style = cs;

mapinfo.data.miconnection connection = new mapinfo.data.miconnection();

connection.open();

mapinfo.data.micommand command = connection.createcommand();

command.commandtext = "update " + ftr.table.alias + " set obj = @obj,mi_style=@style where mi_key = @mikey";

command.parameters.add("@obj", ftr.geometry );

command.parameters.add("@mikey", ftr.key);

command.parameters.add("@style",cs);

command.executenonquery();

command.dispose();

connection.close();

connection.dispose();

2.vb.net code:

dim table as mapinfo.data.table =mapinfo.engine.session.current.catalog.opentable("c:/programfiles/mapinfo/mapxtreme2004/maps/north america/usa.tab"

me.mapcontrol1.map.load(new maptableloader(table))

dim si as mapinfo.data.searchinfo = mapinfo.data.searchinfofactory.searchall()

dim irfc as mapinfo.data.iresultsetfeaturecollection = mapinfo.engine.session.current.catalog.search(table.alias, si)

dim ftr as mapinfo.data.feature = ctype(irfc, mapinfo.data.idynamicfeaturecollection)(1)

dim sis as new mapinfo.styles.******interior(9, system.drawing.color.purple)

dim lw as new mapinfo.styles.linewidth(3, mapinfo.styles.linewidthunit.point)

dim sl as new mapinfo.styles.******linestyle(lw, 3)

dim ar as new mapinfo.styles.areastyle(sl, sis)

dim cs as new mapinfo.styles.compositestyle(ar)

ftr.style = cs

dim connection as new mapinfo.data.miconnection

connection.open()

dim command as mapinfo.data.micommand = connection.createcommand()

command.commandtext = "update " + ftr.table.alias + " set obj = @obj,mi_style=@style where mi_key = @mikey"

command.parameters.add("@obj", ftr.geometry)

command.parameters.add("@mikey", ftr.key)

command.parameters.add("@style", cs)

command.executenonquery()

command.dispose()

connection.close()

connection.dispose()

MapXtreme中圓操作

在winfrom中的mapxtreme的地圖控制項上畫圓分為下面幾步 第一步 新增圓圖層對應的table並新增table對應的圖層到map上,其中新增id欄位到表中,後面刪除此圓需用到 table tablecircletemp if tablecircletemp null tableinfo t...

改變函式中的this

有這樣的3個方法可以改變函式體的this指向 var test function x bind 方法,bind方法返回乙個指定this物件的函式,對源函式沒有影響。var bdingfn test.bind bdingfn 9 bindding 9 另外,可以給test函式換乙個this物件 var...

shell 中改變路徑問題

經常需要切換到乙個常用的目錄,可是路徑又長又難記,想用乙個指令碼進入該目錄,但總是改變不了.原因分析 執行指令碼時,只是在當前的shell下開了乙個子程序,切換目錄的操作只對該程序中相關後續指令有效,但改變不了父程序的目錄。解決方法 方法一 用source a.sh 方法二 用.a.sh 簡介 so...