Comprender la documentación de OpenLayers

12

Dentro de la documentación de Openlayers, he notado que las "opciones" se usan muchas veces para mostrar que el constructor toma parámetros. Pero, ¿dónde puedo obtener los detalles de este parámetro {objeto}? ¿Cómo se sabe qué parámetros aceptan los constructores?

Por ejemplo: a continuación he puesto la documentación del constructor para OpenLayers.Filter.Spatial.

¿Cómo sé qué propiedades puedo poner dentro de {Object}?

ingrese la descripción de la imagen aquí

CaptDragon
fuente

Respuestas:

12

Lo mejor del código abierto es que puedes ver exactamente lo que está sucediendo al explorar el código fuente. Al construir un filtro espacial, se inicializa un nuevo objeto con la siguiente función de inicialización :

72      initialize: function(options) {
73          OpenLayers.Filter.prototype.initialize.apply(this, [options]);
74      },

Esto se puede ver en el control de fuente en línea . La función de aplicación copia todas las propiedades de su objeto de configuración (el parámetro de opciones ) a las propiedades de un nuevo objeto de filtro espacial (la palabra clave this en el código anterior).

Entonces, en respuesta a su pregunta, puede crear un objeto de configuración con cualquiera de las propiedades enumeradas en el filtro espacial (tipo, propiedad, valor, etc.) y se establecerán en su nuevo objeto.

Una de las mejores formas de ver cómo usar las clases OpenLayers (junto con los ejemplos) es encontrar sus pruebas unitarias asociadas. Por ejemplo, las pruebas para OpenLayers.Filter.Spatial están en http://trac.osgeo.org/openlayers/browser/trunk/openlayers/tests/Filter/Spatial.html

Estas pruebas muestran muchos ejemplos diferentes de la construcción de la clase de filtro espacial (y cómo usarla una vez construida), por ejemplo

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          });

Puede utilizar estas técnicas para averiguar cómo se construye cualquier clase OpenLayers y qué sucede exactamente cuando crea un nuevo objeto.

geographika
fuente
Gracias, +1 por la sugerencia de buscar las pruebas. (valor agregado a su respuesta)
CaptDragon