---
metadata:
  - name: generator
    content: Diplodoc Platform v5.39.1
alternate:
  - https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/geoQuery.md
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/llms.txt


# geoQuery

Статическая функция.

Формирует набор данных из указанного источника и создает на его основе
экземпляр GeoQueryResult.

**Returns** результат, содержащий данные из источника.

```javascript
{ GeoQueryResult } geoQuery(source)
```

**Параметры:**

#|
|| **Параметр** | **Значение по умолчанию** | **Описание** ||
|| `source`[*](*parametr) | — | Тип: Object

Источник геообъектов:
• IGeoObject - объект, реализующий соответствующий интерфейс;

• IGeoObject[] - массив объектов, реализующих соответствующий интерфейс;

• ICollection - коллекция объектов, реализующих интерфейс IGeoObject;

• ICollection[] - массив коллекций объектов, реализующих интерфейс IGeoObject;

• util.Promise - объект-промис, передающий в функцию-обработчик источник данных для geoQuery; Также в функцию-обработчик может быть передан объект с полем geoObjects, содержащий источник данных для geoQuery;

• GeoQueryResult - объект класса GeoQueryResult;

• String\|Object - строка или объект с JSON-описанием объектов.

JSON-описание объектов строится по следующему принципу (см. пример ниже).
Объектом может быть сущность или коллекция сущностей. Коллекция сущностей представляет из себя объект с полями:

• type - тип объекта. Значение поля должно быть равно "FeatureCollection";

• features - массив дочерних сущностей коллекции. Дочерние объекты могут быть сущностями или вложенными коллекциями сущностей.

Сущность представляет из себя объект с полями:

• type - тип объекта. Значение поля должно быть равно "Feature";

• geometry - геометрия объекта. Содержит поля type и coordinates. Соответствует параметру, передаваемому в конструктор объекта ymaps.GeoObject;

• options - опции геообъекта;

• properties - данные геообъекта. ||
|#

\* Обязательный параметр/опция.

**Примеры:**

**1.**

```javascript
// Создание GeoQueryResult из одиночного геообъекта.
var placemark = new ymaps.Placemark([34, 56]);
ymaps.geoQuery(placemark).addToMap(myMap);
```

**2.**

```javascript
// Создание GeoQueryResult из массива геообъектов.
var objects = [
        new ymaps.Placemark([34, 56]),
        new ymaps.Rectangle([[34, 56], [36, 57]])
    ];
ymaps.geoQuery(objects).addToMap(myMap);
```

**3.**

```javascript
// Создание GeoQueryResult из коллекции геообъектов.
var result = ymaps.geoQuery(myMap.geoObjects).searchIntersect(myMap);
alert("Количество геообъектов в видимой области карты: " + result.getLength());
```

**4.**

```javascript
// Создание GeoQueryResult из util.Promise.
var result = ymaps.geoQuery(ymaps.geocode('Сыромятнический переулок')).searchInside(myGeoBounds);
// Поскольку источник данных асинхронный, нужно дождаться обработки результата.
result.then(function () {
    alert('Количество объектов, лежащих внутри заданной области: ' + result.getLength());
});
```

**5.**

```javascript
// Создание GeoQueryResult из JSON.
var result = ymaps.geoQuery({
        type: 'FeatureCollection',
            features: [
                {
                    type: 'Feature',
                    geometry: {
                        type: 'Circle',
                        coordinates: [15, 15],
                        radius: 100
                    }
                },
                {
                    type: 'Feature',
                    geometry: {
                        type: 'LineString',
                        coordinates: [[15, 16], [66, 23]]
                    }
                },
                {
                    type: 'FeatureCollection',
                    features: [
                        {
                            type: 'Feature',
                            geometry: {
                                type: 'Point',
                                coordinates: [12, 41]
                            },
                            properties: {
                              name: 'point'
                            },
                            options: {
                                preset: 'twirl#yellowIcon'
                            }
                        }
                    ]
                }
            ]
      });
// Неточечные объекты добавим на карту как есть.
result.search('geometry.type != "Point"').addToMap(myMap);
// Точечные объекты добавим на карту через кластеризатор.
myMap.geoObjects.add(result.search('geometry.type == "Point"').clusterize());
```

[*parametr]:Обязательный параметр/опция.
