ArcGIS中對一組查詢結果同時閃爍的實現

2021-09-05 22:25:21 字數 2500 閱讀 4324

單個要素閃爍很簡單,關於多要素同時閃爍主要參考這兩篇資源

arcgis 要素閃爍

/// /// defining a renderer for your layer

///

/// 圖層

/// sde資料庫中欄位名

/// 過濾條件

private void defineuniquevaluerenderer(igeofeaturelayer pgeofeaturelayer, string fieldname, iqueryfilter pqueryfilter)

}//if the value was not found, it is new and it will be added.

if (valfound == false)

pfeature = pfeaturecursor.nextfeature();

}//since the number of unique values is known,

//the color ramp can be sized and the colors assigned.

prandomcolorramp.size = puniquevaluerenderer.valuecount;

//ok

bool bok;

prandomcolorramp.createramp(out bok);

//ienumcolors 物件, 顏色集合

ienumcolors penumcolors = prandomcolorramp.colors;

penumcolors.reset();

for (int j = 0; j <= puniquevaluerenderer.valuecount - 1; j++)

}//'** if you didn't use a predefined color ramp

//'** in a style, use "custom" here. otherwise,

//'** use the name of the color ramp you selected.

puniquevaluerenderer.colorscheme = "custom";

//itable物件

itable ptable = pdisplaytable as itable;

//是否string

bool isstring = ptable.fields.get_field(fieldindex).type == esrifieldtype.esrifieldtypestring;

puniquevaluerenderer.set_fieldtype(0, isstring);

pgeofeaturelayer.renderer = puniquevaluerenderer as ifeaturerenderer;

}

關於查詢後feature閃爍的問題

在實現屬性到圖的查詢後,將查詢結果閃爍顯示,polygon內部並填充,下面貼出**:

while (pfeature != null)

else if (pfeature.shape.geometrytype == esrigeometrytype.esrigeometrypolygon)

else if (pfeature.shape.geometrytype == esrigeometrytype.esrigeometrypoint || pfeature.shape.geometrytype == esrigeometrytype.esrigeometrymultipoint)

紅色**處出現問題,提示說引數型別錯誤,各位高手和大俠們幫忙看看應該如何修改?  謝謝!!!!!!

3#

jindin不是說對於多要素的閃爍要用到igeometrycollection的麼?

5

#把要素存到iarray裡.然後用ihookactions.doactiononmultiple 方法試試.

6

#同意ls方法,將波濤的書裡也是用該方法,可以閃爍多個要素

7

#這個功能終於搞定了,線和面我的是 pgeometrycollection.addgeometrycollection((igeometrycollection)pgeometry);點用的是pgeometrycollection.addgeometry(pgeometry, ref obj, ref obj),不知道為什麼點線面不能用同樣的方法新增要素?還有乙個問題就是關於一直閃爍,flashshape()中第二個閃爍次數的引數,似乎不敢設定太大,否則就會一直執行到閃爍完才可以執行後面的**,是不是用timer可以解決這個問題呢?試試先

esri中國社群

gmt+8, 2010-1-4 22:04.

powered bydiscuz!7.0.0

licensed

在一組字元中查詢

include using namespace std define scuess 1 define false 0 int find char char strings,char value return false main void 字元陣列的表示cout find char str,c en...

Arcgis空間分析 求取一組要素的地理中心

學習arcgis 空間分析中 多點中心的計算,做些筆記 以下大部分內容來自於對arcgis help文件 本文只做學習筆記 工具來自於度量地理分布工具集 度量地理分布工具集用來做什麼呢?可通過度量一組要素的分布來計算各類用於表現分布特徵的值,例如中心 密度或方向。可利用此特徵值對一段時間內的分布變化...

對一組資料進行排序

如果有這種可能的話,三路快排是最好的選擇。是否大部分資料距離它的正確的位置很近?是否近乎有序?如果這樣,插入排序是很好的選擇。是否資料取值的範圍非常有限?比如對學生的成績排序。如果這樣,計數排序是很好的選擇 對排序有什麼額外的要求?是否需要穩定的排序?如果是的話,歸併排序是更好的選擇,快排就不行了。...