FeatureID フィルターと Comparison.EQUAL_TO フィルターを組み合わせた OpenLayers で Logical.AND フィルターを作成しようとしています。目標は、fid によってフィルター処理された一連の機能の中からプロパティをフィルター処理することです。コード例を次に示します。
var compfltr= new OpenLayers.Filter.Comparison({
type: OpenLayers.Filter.Comparison.EQUAL_TO,
property: 'cat',
value: 'restaurant'
});
var idfltr= new OpenLayers.Filter.FeatureId({
fids: ['f09de70a-9629-4aac-afd2-00375d7e920f', '77d51ff0-6f85-4503-90ca-27d78e270ebd', '5d19df37-ed3b-4e06-8ca2-001b832713dc', '36841c4f-cfc9-4440-beb3-001dd7a9a754', '4ca129c9-62e4-41b8-8a49-00239612cd59']
});
var selfilter = new OpenLayers.Filter.Logical({
type: OpenLayers.Filter.Logical.AND
});
selfilter.filters.push(compfltr)
selfilter.filters.push(idfltr)
var rule = new OpenLayers.Rule({
filter: selfilter,
symbolizer: { fillColor: "#7FCC7F", fillOpacity: 0.9, strokeColor: "#7FCC7F", strokeOpacity: 0.5, strokeWidth: 12, pointRadius: 10 }
});
他のフィルター タイプを使用して Logical.AND フィルターを作成するのに問題はありませんが、FeatureId フィルターを含めると失敗します。論理フィルターで FeatureId フィルターを使用することはできませんか?