Dojo 如何在ESRI arcgis中恢复图形符号
我有一个要素图层,并添加了单击事件来选择图形。在选择时,我已更改符号,以显示已选择图形 如下代码所示Dojo 如何在ESRI arcgis中恢复图形符号,dojo,esri,arcgis-js-api,Dojo,Esri,Arcgis Js Api,我有一个要素图层,并添加了单击事件来选择图形。在选择时,我已更改符号,以显示已选择图形 如下代码所示 var symbol; switch (graphic.geometry.type) { case "point": //symbol for point geometry symbol = new SimpleMarkerSymbol( SimpleMarkerSymbol.STYLE_CIRCLE, 12, new Si
var symbol;
switch (graphic.geometry.type) {
case "point":
//symbol for point geometry
symbol = new SimpleMarkerSymbol(
SimpleMarkerSymbol.STYLE_CIRCLE, 12,
new SimpleLineSymbol(SimpleLineSymbol.STYLE_SOLID,
new Color([ 247, 0, 171, 0.9 ]), 2),
new Color([ 0, 255, 255, 255.25 ]), 0.5);
break;
case "polyline":
case "polygon":
//symbol for Polygon geometry
symbol = new SimpleFillSymbol(
SimpleFillSymbol.STYLE_NULL, new SimpleLineSymbol(
SimpleLineSymbol.STYLE_SOLID,
new Color([ 0, 255, 0 ]), 3),
new Color([ 0, 125, 0,0.35 ]));
break;
}
graphic.setSymbol(symbol);
当取消选择意味着再次用户通过第二次单击选择图形时,我需要设置上一个符号
我是否需要维护每个功能及其符号?或者他们有什么最好的方法可以做到这一点吗?@chiranjeevibmse您可以通过在查询中发送objectid来使用Featurelayer.selectFeatures方法,而不是更改符号并维护以前的符号 第一次单击时,使用您必须选择的objectid进行查询
var query = new Query();
query.objectIds = [graphic.attributes.FID];
layer.selectFeatures(query,FeatureLayer.SELECTION_ADD);
不要忘记设置选择符号;)
第二次单击您可以调用的图形
var query = new Query();
query.objectIds = [graphic.attributes.FID];
layer.selectFeatures(query,FeatureLayer.SELECTION_SUBTRACT);
这将处理符号。@chiranjeevibmse您可以通过在查询中发送objectid来使用Featurelayer.selectFeatures方法,而不是更改符号并维护以前的符号 第一次单击时,使用您必须选择的objectid进行查询
var query = new Query();
query.objectIds = [graphic.attributes.FID];
layer.selectFeatures(query,FeatureLayer.SELECTION_ADD);
不要忘记设置选择符号;)
第二次单击您可以调用的图形
var query = new Query();
query.objectIds = [graphic.attributes.FID];
layer.selectFeatures(query,FeatureLayer.SELECTION_SUBTRACT);
它将处理符号