這兩天在做出圖的乙個外掛程式,學習的東西還是挺多的,首先是dll的編譯,除錯,一開始是vc,後來有是vs2010,這些基礎問題就搞了好久。真正實現的東西其實也是比較簡單的,都不好意思寫出來。這邊乙個唯一值渲染的問題,其實本來是想實現四色渲染的,但是比較複雜,先簡單的搞一下。
思路還是比較簡單,類似於把一系列對應欄位名稱的顏色一起放入渲染器中。首先要有乙個聲稱隨即顏色的ienumcolors,基於irandomcolorramp介面實現;然後是常用的面圖層渲染器i******fillsymbol,通過遍歷每乙個feature,將(fieldname,******fillsymbol)放入iuniquevaluerenderer渲染器中,然後圖層呼叫就行。
**如下:
ipfeaclass = iptmpfeacls;
ipgeofealayer = iptmpgeofealayer;
iqueryfilterptr ipqueryfilter(__uuidof(queryfilter));
ifeaturecursorptr ipcursor;
ipfeaclass->search(ipqueryfilter, false, &ipcursor);
i******fillsymbolptr ipsymbol(clsid_******fillsymbol);
//隨機顏色
irandomcolorrampptr iprx(clsid_randomcolorramp);
iprx->put_minsaturation(20);
iprx->put_maxsaturation(40);
iprx->put_minvalue(76);
iprx->put_maxvalue(188);
iprx->put_starthue(0);
iprx->put_endhue(360);
iprx->put_size(100);
variant_bool btrue = true;
iprx->createramp(&btrue);
ienumcolorsptr ipnumcolors;
iprx->get_colors(&ipnumcolors);
if(ipnumcolors == null)
return;
ipnumcolors->reset();
iuniquevaluerendererptr ipuniquernd;
ifeaturerendererptr iprnd;
if((ipuniquernd = iprnd) == null)
cstring fname = _t("fname");
bstr fieldname = fname.allocsysstring();
ipuniquernd->put_fieldcount(1);
ipuniquernd->put_field(0, fieldname);
//遍歷
ifeatureptr ipfeat;
ipcursor->nextfeature(&ipfeat);
ifieldsptr ifields;
long index;
ipfeat->get_fields(&ifields);
ifields->findfield(fieldname, &index);
i******linesymbolptr ipline(clsid_******linesymbol);
ipline->put_width(0.01);
while(ipfeat != null)
iprnd = (ifeaturerendererptr)ipuniquernd;
ipgeofealayer->putref_renderer(iprnd);
唯一值校驗的實現思路
在實際 的編寫過程中,難免遇到進行唯一值校驗的問題。以下,用員工表進行舉例。首先,員工表的結構如下 其中,表中的身份證號 id不能重複 這個不用說,自然是這樣的 增加員工資訊時,身份證號的輸入框觸發離焦事件後,向後台發起乙個請求,引數為身份證號。後台根據當前身份證號查 select t.id fro...
mysql 唯一值 mysql 獲取全域性唯一值
在涉及資料庫儲存資料的時候,經常會遇到唯一值問題,有的是主鍵帶來的限制,有的則是業務上的需要。下面介紹幾種唯一值的獲取或者生產方法 先建乙個測試用的表tbl user,有三個字段 id name age,其中id為主鍵。1 drop table if exists tbl user 2 create...
唯一值獲取
問題 唯一值無法獲取 using system.collections.generic using esri.arcgis.carto using esri.arcgis.geodatabase using system.collections 官網示例 idatastatistics exampl...