A melhor coisa sobre o código aberto é que você pode ver exatamente o que está acontecendo navegando no código-fonte. Ao construir um filtro espacial, um novo objeto é inicializado com a seguinte função de inicialização :
72 initialize: function(options) {
73 OpenLayers.Filter.prototype.initialize.apply(this, [options]);
74 },
Isso pode ser visto no controle de fonte online . A função aplicar copia todas as propriedades do seu objeto de configuração (o parâmetro options ) para as propriedades de um novo objeto de filtro espacial (a palavra - chave this no código acima).
Portanto, em resposta à sua pergunta, você pode criar um objeto de configuração com qualquer uma das propriedades listadas no filtro espacial (tipo, propriedade, valor etc.) e elas serão definidas no seu novo objeto.
Uma das melhores maneiras de ver como usar as classes OpenLayers (junto com os exemplos) é encontrar seus testes de unidade associados. Por exemplo, os testes para o OpenLayers.Filter.Spatial estão em http://trac.osgeo.org/openlayers/browser/trunk/openlayers/tests/Filter/Spatial.html
Esses testes mostram muitos exemplos diferentes da construção da classe de filtro espacial (e como usá-la depois de construída), por exemplo
28 var filer, feature, res, geom, bounds;
29
30 bounds = new OpenLayers.Bounds(0, 0, 10, 10);
31 filter = new OpenLayers.Filter.Spatial({
32 type: OpenLayers.Filter.Spatial.BBOX,
33 value: bounds
34 });
Você pode usar essas técnicas para descobrir como qualquer classe OpenLayers é construída e exatamente o que acontece quando você cria um novo objeto.