Я не уверен, что вы уже изменили KML, чтобы соответствовать некоторым из предыдущих предложений, но ...
- Файл KML кажется довольно минималистичным, что хорошо. Я собирался предложить сократить десятичные точки на широте / долготе.
- Вы можете сжать как KML-файл до KMZ, как упоминалось в предыдущем постере. Дополнительную информацию можно найти здесь: http://code.google.com/apis/kml/documentation/kml_tut.html#kml_server Вам также потребуется настроить тип MIME KMZ на вашем сервере.
- Вы можете уменьшить количество пробелов в вашем файле KML. Кажется, есть дополнительные пробелы, когда не требуется ...
- Вы можете настроить свой веб-сервер так, чтобы он отправлял кэшированные версии файла KML ... Я не уверен, какой тип серверной части вы используете, хотя я не могу точно указывать. Это может быть причиной, по которой маркеры не отображаются. Сервер Google отключит ваш запрос, если он займет слишком много времени.
Что касается вашего вопроса о решении для отображения общего количества маркеров в области для увеличения:
Я думал, что вы могли бы для каждого уровня масштабирования, проверить границу карты и затем отображать только маркеры, которые имеют координаты на этой границе. Вам, вероятно, придется написать какую-то функцию, которая проверяет, находится ли она на границе. Я не знаю ни одного способа получения маркеров из файла KML как объектов, если вы сами не анализируете KML вручную с помощью анализатора на стороне клиента.
Чтобы определить, почему ваши маркеры не загружаются, попробуйте использовать FireBug для определения запросов к серверам Google. И посмотрите, какой ответ возвращается, что может привести к большему количеству ответов на вашу проблему. Я считаю, что вам нужно искать KmlOverlayService.
Надеюсь, это поможет.