Клуб API Карт

Фильтр для обьектов по свойствам

Пост в архиве.

Прошу Вашего совета!

Есть необходимость реализовать интерактивную карту с объектами имеющие несколько свойств.

Идея примерно такая:

Есть у нас 100 объектов, информация о них в Excel файле. Каждый объект имеет помимо основных свойств (координаты, тип), дополнительные. Например, цвет: синий, зеленый, красный и т.д. Есть другое свойство, пусть будет: Вес (от и до). И третье, например, хороший/плохой.

Эти объекты нужно отобразить на карте. Пользователю предоставляется возможность определить параметры. Например: Цвет - зеленый, вес: 5 кг, хороший.

На карте оборажаются только объекты подходящие под эти условия. Причем, обект может быть и красным и зеленым например! Следовательно при разных условиях могут отображаться одни и те же объекты.

Примеров не нашел. Есть примеры но все они не предусматривают пересечение каких либо характеристик. Просто разбито на группы и каждаю группа от другой не зависит.

Прежде чем приступать хотел бы услышать ваш совет, верным ли путем я собираюсь идти?

1. Excel фаил в YmapsML (макрос на VB). Дополнительные свойства пишутся в <AnyMetaData>.

2. Грузим YmapsML на карту. И манипулируем с уже загруженными объектами с помощью JS. Проверяем свойства в <AnyMetaData> (если ... то ... видим/не видим).

Или каждый раз при введении новых условий выбора придется обращаться к файлу и на этапе загрузки смотреть условия?

Или я не с той стороны к этому вопросу подхожу? Не хочется начинать работу и потом зайти в тупик.

Есть ещё одно условие. Модуль должен быть легко встраевымый. Т.е. иметь законченный вид который можно вставить в любой сайтик. (HTML+JS). Поэтому завязывание с ПХП и конкретным сайтом крайне нежелательно.

2 комментария

Загружаете данные как ДАННЫЕ.

Проходите по этим данным фильтрами и показываете или не показываете метки.

Никаких групп. Прямое управление обьектами.

Манипулировать объектами, которые уже загружены на карту, теперь можно через модуль geoQuery. http://api.yandex.ru/maps/doc/jsapi/2.x/dg/concepts/geoquery.xml