AE指定欄位轉成註記

2022-03-23 13:02:42 字數 1753 閱讀 3023

**原文 ae指定欄位轉成註記

arcmap中有乙個功能是label features,就是可以將圖層內指定字段值顯示以label形式顯示在主視窗上,在label features後,用右鍵點選圖層,發現可以出現乙個原來灰色的功能名,convertlabelstoannotation。這個功能在ae中提供,可是自己找不到設定字段值的位置,無可奈何,只有另闢蹊徑。

就是先建立乙個註記層,然後按照圖層裡指定欄位的值來生成註記。就是乙個乙個feature點轉換。可能會比ae提供的介面效率低,沒有辦法,自己不會用那個介面,也就只能這樣勉強的用著了。這個方面最難點就是建立乙個新的註記圖層,有很多屬性需要設定,比較麻煩,下面是**

private

void converttoannotationlayer(imap pmap, ilayer player, string

fieldname, esrigeometrytype type)

catch

(exception s)

if (pannolayer == null

)

return

;

int num=pfields.findfield(fieldname);

converttoannotatebyfeature(player, num,

refpannolayer);

pmap.addlayer(pannolayer

asilayer);

}

private

bool converttoannotatebyfeature(ilayer player,int fieldnum,ref

iannotationlayer pannolayer)

ielementcollection pelementcoll = new

elementcollectionclass();

pannolayer.beginaddelements();

while(pfeat!=null

)

if(pgeo is

ipoint)

if(pgeo is

ipolygon)

object val=pfeat.get_value(fieldnum);

string s=val.tostring();

if (s == null || s.length == 0

)

///對公路的寬度進行特殊處理

if(bwidth)

else

if(width>40.0

)

}else

if (/*

plabelpoint != null&&

*/s.length>0

)

pfeat =pfeatcursor.nextfeature();

}pannolayer.endaddelements();

pannolayer.beginaddelements();

if(pelementcoll.count<1

)

pannolayer.doaddelements(pelementcoll, 0);

/*pannolayer.setupattributeconversion()

*/pannolayer.endaddelements();

return

true

;}

mybatis plus查詢指定字段

mybatis plus select查詢語句預設是查全部字段,有兩種方法可以指定要查詢的字段 create table user id bigint 20 not null comment 主鍵 name varchar 30 default null comment 姓名 age int 11 ...

C 使用AE獲取feature的屬性及欄位操作

我就廢話不多說了,大家還是直接看 吧 public static datatable getfeaturedatatable ifeature pfeature return dt 補充 c ae獲取要素圖層某個欄位的唯一值 開始喔 ifeaturelayer featurelayer 你要獲取唯一...

VARCHAR欄位指定索引長度

在varchar欄位上建立索引時,必須指定索引長度,沒必要對全欄位建立索引,根據實際文字區分度決定索引長度 阿里開發手冊 create table my user id bigint unsigned user name varchar 50 primary key id insert into m...