Как уменьшить файл kmz
Как упростить (уменьшить количество точек) в KML?
даже на моей (очень быстрой) машине разработки требуется некоторое время, чтобы загрузить даже пару десятков форм. Итак, два вопроса, действительно:
Что было бы хорошей стратегией для рендеринга их в качестве маркеров вместо наложений, как только я выйду за определенный уровень масштабирования?
есть ли общедоступный алгоритм для упрощения полигона (уменьшения количества точек), чтобы я не показывал больше точек, чем имеет смысл на определенном уровне масштабирования?
5 ответов
для вашего второго вопроса: вам нужно Алгоритм Обобщения Дугласа-Пекера
для вашего первого вопроса, не могли бы вы рассчитать площадь конкретного многоугольника и связать каждый уровень масштабирования с определенной минимальной площадью, так как вы увеличиваете или уменьшаете масштаб многоугольника, и маркеры появляются в зависимости от уровня масштабирования.
для второго вопроса я бы использовал предложение Марка Бесси.
Я не знаю много AOBUT KML, но я думаю, что обычное решение вопроса № 2 включает итерацию по точкам и удаление любых сегментов линии под определенным размером. Это вызовет некоторые «неудачные» эффекты в некоторых случаях, но это относительно быстро и легко сделать.
мне нужно было решение вашего вопроса #2 немного назад, и после просмотра нескольких доступных алгоритмов упрощения строк я создал свой собственный.
процесс прост и, кажется, работает хорошо, хотя он может быть немного медленным, если вы не реализуете его правильно:
Как я буду собирать его на Картах Google? Есть ли способ уменьшить файл без ущерба для качества моих треков? Я использую jQuery и API Карт Google v2 или v3.
Ответов: 4
Ну, очень легко использовать KML-файл с API Карт Google. Примером может служить следующее:
По моему опыту добавление больших KML-файлов на карту также очень медленное. Поэтому загрузка вашего файла размером 9 МБ займет много времени. Я предлагаю вам уменьшить размер файла.
Вам действительно нужны все эти сотни тысяч путевых точек? Каков был шаг входа в журнал? Как каждые 10 секунд? Вам нужно, чтобы ваше местоположение было до метра, не все ли 100 метров? Btw: Вы работаете над интернет-вещами? Я помню, Google Google поддерживает любые большие KML-файлы (но, конечно, больше, чем API карт).
Я не знаю никаких программ для отслеживания треков или «удаления путевых точек», но там наверняка есть такие вещи, и вам нужно будет сделать ваш KML-файл меньшим (также 30 МБ по-прежнему звучит очень много для меня, уверены ли вы это только путевые точки или у вас есть decriptions и т. п. в KML? Не могли бы вы сократить их? Цвета? Используйте глобальные цвета KML вместо определения цвета для каждой путевой точки!)
Я разделил намного меньший файл kml / kmz на несколько кусков. Однако я все же заметил MASSIVE замедление, когда я попытался приблизиться к пределу. Как правило, Google Maps не будет показывать маркеры, когда я буду на полной карте, и сделал бы это только в том случае, если бы я увеличил масштаб (и, следовательно, у него было гораздо меньше маркеров).
Часто он показывал только маркеры на части фрагментов карты, а остальные плитки карт были пусты.
Даже Chrome, который является самым быстрым браузером для этого, едва мог справиться с этим.
Было бы целесообразно импортировать ваш KML-файл в таблицу слияния.
Последующая производительность будет впечатляющей по сравнению с добавлением наложений на основе файла KML.
По какой-то магической причине, когда вы создаете KMZ с помощью Geosetter> export to google earth. KMZ это создает, хотя и намного больше, чем 5 МБ загрузки в Google Earth без проблем.
Уменьшение размера файла KML (после преобразования из шейп-файла)
У меня есть шейп-файл размером 224 МБ. Я использую ArcGIS для преобразования его в файл KML. Процесс включает преобразование шейп-файла в векторный слой, а затем преобразование слоя в KML.
В обоих случаях размер создаваемого KML-файла составляет около 500 МБ. Мне нужно, чтобы он был меньше 250 МБ, поэтому я могу импортировать его как таблицу Google Fusion.
Как мне изменить десятичные знаки с помощью ogr2ogr или ArcGIS? Есть ли другое программное обеспечение, которое может помочь в этом, а также есть ли какие-либо другие стратегии, которые я могу использовать для уменьшения размера файла KML?
Я пробовал использовать Notepad ++, чтобы открыть файл KML, а затем использовать регулярные выражения для изменения точности координат, но по какой-то причине этот метод не работает. Если я внесу изменения и попытаюсь сохранить файл, все данные будут удалены, а размер файла KML изменится на 0 байт.
Альтернативная стратегия, о которой я думал, заключалась в том, чтобы разделить мои шейп-файлы на два или три файла и отдельно преобразовать их в KML, загрузить их в таблицы слияния Google, а затем добавить их. Однако я не уверен в двух вещах.
Предполагается, что вы используете линейные или полигональные объекты. Если у вас есть шейп-файл размером
250 МБ, это более сложная проблема.
Вы можете попробовать еще две вещи.
Во-первых, есть ли в вашем шейп-файле какие-либо атрибуты, которые вы можете удалить перед преобразованием в kml?
Во-вторых, вы можете попробовать открыть kml в Google Планета Земля и сохранить его как kmz. Это должно резко уменьшить размер файла, но я не уверен, решит ли это вашу исходную проблему, поскольку kmz по-прежнему будет иметь такое же количество только что сжатых данных.
Если вы хотите создать подмножество своего шейп-файла перед его преобразованием, вы можете выполнить следующие действия:
Я только что разработал довольно полнофункциональную программу, которая упрощает файлы kml. А также gpx и tcx. Он поддерживает ряд методов, которые уменьшают размер файла, многие из них практически без потерь, другие снижают точность пути.
Столкнувшись с той же проблемой, я разработал элементарный обходной путь, который довольно быстр и грязен. Он почти вдвое уменьшает размер KML, но за свою цену удаляет все всплывающие окна HTML и спецификации символов / стилей. Он хорош только для просмотра.
Я обычно предпочитаю использовать инструмент Generalize (требуется как минимум лицензия редактора) для тестирования различных параметров, пока я не буду удовлетворен формами, которые я хочу обработать. Обычно значение от 0,5 до 0,8 метра дает мне достойный результат. Предупреждение: инструмент Generalize изменяет входные данные, поэтому рекомендуется заранее сделать их копию.
Прочитав предложения и проведя небольшое исследование, я решил разработать довольно грубый скрипт на Python для Удаление KML процесс с использованием регулярного выражения (намеренно избегая процесса синтаксического анализа XML). Код выглядит следующим образом:
Как уменьшить файл kmz
Что ж, надеюсь, эта статья поможет вам немножечко уменьшить размер карты. 🙂
Как ужать рельеф
Обычно рельеф занимает не много, однако я, иногда заходя в какйю-нибудь карту, весящую под 1 метр, через редактор редактор обнаруживаю ЦЕЛУЮ КУЧУ неиспользованного пространства, заделанного черной «границей». Мда. а автор еще удивляется «почему моя карта занимает так много? Я ведь не использовал чужие звуки или модели».
Лучше, конечно, использовать первый вариант, и компактно разместить свой рельеф на маленькой карте.
Как ужать музыку
Всем известно, что основную часть в картах занимает импортированные звуки и, особенно музыка. Однако и ее размер можно уменьшить. Для этого нужно иметь специальный Конвертер (содержится в одном из вложений). Пользоваться им довольно легко:
Как сделать маленький размер, чтобы качество было не совсем ужасное
Для этого на загружаемый файл нужно ставить частоту 22050 Hz, mp3, и качество 24-40 Kbps.
Заключительное, не значительное сжатие.
Скачайте вексовский оптимайзер. Активируйте его на своей карте.
Ну что ж – надеюсь, я помог вам хоть немножечко уменьшить размер своей карты.
Однажды фирма Гармин, под давлением прогресса и общественности, разрешила заливать в свои навигаторы карты, созданные на основе растровых изображений. Для чего усовершенствовала уже имеющийся формат, придумала новый, а ещё один позаимствовала у «корпорации добра» под названием Google. Если первый у нас ещё не получил столь широкого распространения и активно применяется, в основном, в приборах морской серии (да и то за пределами страны), то два других предназначены специально для «туристов» и их девайсов (выбор которых не так уж и мал).
Названия/расширения этих карт/файлов/контейнеров: KMZ и JNX
В нашу задачу входит научиться самостоятельно создавать такие карты и заливать их в навигаторы.
Первая часть уроков-инструкций посвящена формату KMZ.
Если она ещё не пригрелась на вашем компе, то срочно идите на страницу загрузки, которая через десяток секунд должна начаться автоматически. Устанавливается, как не банально, путём простого перемещения скаченной папки с программой в C:\Program Files. Никаких установщиков. Запускается по даблклик на SASPlanet.exe
На данный момент я использую разные версии SAS.Planet.Nightly, так называемые «ночные сборки», а последняя стабильной является v.121010. Местами они немного различаются, но про это я упомяну в контексте.
Но ни Яндекс, ни Гугл, ни кто либо другой, не заказывают спутниково-космических снимков различной степени детализации для каждого своего уровня. Это было бы слишком дорого, да и не совсем разумно. Поэтому другие масштабы формируются из снимков а) или путём 2-х кратного сжатия, когда 4 стандартных тайла/фотографии по 256х256 пикселей (512х512) превращаются в один тайл 256х256 более верхнего уровня; б) или наоборот (но реже), увеличивая тайл в 2 раз (качество от этого, к сожалению, не улучшается)
Для того места, на примере которого я делаю этот мануал, Яндекс использует всего 3 слоя реальных фотографий:
Ну во первых, сам по себе формат DXF текстовый и гораздо больше, чем родной DWG, по сему еголучше сохранить в DWG.
Во вторых, существуют стандартные для акада способы уменьшения обьема файла, например команда PURGE.
В третьих, в акад 2004 насколько я помною обее оптимизирован, по сравнению с 2000/2002 формат файла, т.е. он заимает меньше места
В четвертых, где-то на кадовских сайтах лежить програмка (уж не помно однако, склероз) удаляющая линии наложенные друг на друга
ЗЫ. Но я думаю что первых двух способов будет вполне достаточно 8)
А че за проблема с распечаткой?
Если не хватает памяти, в настройках принтера поставь галочку напротив «использовать виртуальную память» или «in computer» чтото в этом роде в зависимости от модели принтера.
И печатай на здоровье! 😉
Мне эти 3 вещи офигенно помогают,иногда файл с 15 метров до 3 сбрасывают
VOVA,какие беды могут меня настигнуть,если я буду удалять дублирущие объекты?
Этой функцией пользуюсь постоянно,пока ничего не замечал. [sm1001] Иван> Конечно, многое зависит от правильных установок. Рассмотрим ситуацию-линия (пусть стена) и вплотную к ней прямоугольник (пусть панель). Может получиться так, что у прямоугольника отрежется сторона, прилегающая к стене, или наоборот, линия стены прервется. Зависит от того, что наверху. Поэтому я и призывал к осторожности. Что бы подобное случилось надо поставить галку – игнорировать слой, которая по умолчанию не стоит ( я не допускаю мысли что стены и панели лежат в одном слое) Gap> Пример? пожалуйста. Готовится основа для чертежа расстановки оборудования. Для этого архитектурный чертеж этажа надо как следует почистить, удалить ненужное и все оставшееся перекрасить в цвет, у нас это №8. Там может быть несколько сотен (и даже более тысячи) слоев. Некоторые делают так: после чистки все, что осталось, помещают в один слой Background (Oснова). А дальше команда Overkill со всеми вытекающими последствиями. Бывают и другие случаи. Например, на одном плане сразу несколько этажей, наложенных друг на друга. Надо манипулировать слоями, чтобы получить нужное изображение. Но авторы чертежа не дали инструкций, как этим пользоваться. Начинаешь чистить, включая команду Overkil и получаешь порой неожиданные результаты.
bol970
bol970
Однажды фирма Гармин, под давлением прогресса и общественности, разрешила заливать в свои навигаторы карты, созданные на основе растровых изображений. Для чего усовершенствовала уже имеющийся формат, придумала новый, а ещё один позаимствовала у «корпорации добра» под названием Google. Если первый у нас ещё не получил столь широкого распространения и активно применяется, в основном, в приборах морской серии (да и то за пределами страны), то два других предназначены специально для «туристов» и их девайсов (выбор которых не так уж и мал).
Названия/расширения этих карт/файлов/контейнеров: KMZ и JNX
В нашу задачу входит научиться самостоятельно создавать такие карты и заливать их в навигаторы.
Первая часть уроков-инструкций посвящена формату KMZ.
Если она ещё не пригрелась на вашем компе, то срочно идите на страницу загрузки, которая через десяток секунд должна начаться автоматически. Устанавливается, как не банально, путём простого перемещения скаченной папки с программой в C:\Program Files. Никаких установщиков. Запускается по даблклик на SASPlanet.exe
На данный момент я использую разные версии SAS.Planet.Nightly, так называемые «ночные сборки», а последняя стабильной является v.121010. Местами они немного различаются, но про это я упомяну в контексте.
Но ни Яндекс, ни Гугл, ни кто либо другой, не заказывают спутниково-космических снимков различной степени детализации для каждого своего уровня. Это было бы слишком дорого, да и не совсем разумно. Поэтому другие масштабы формируются из снимков а) или путём 2-х кратного сжатия, когда 4 стандартных тайла/фотографии по 256х256 пикселей (512х512) превращаются в один тайл 256х256 более верхнего уровня; б) или наоборот (но реже), увеличивая тайл в 2 раз (качество от этого, к сожалению, не улучшается)
Для того места, на примере которого я делаю этот мануал, Яндекс использует всего 3 слоя реальных фотографий:
Чтобы отключить несуществующие уровни в SAS.Планете, нужно в меню «Вид» снять галочку напротив строчки «Брать карты из меньших масштабов» и отсутствующие тайлы выводиться не будут:
Если вы уже определились с масштабом слоя, то нужно выполнить всего 3 пункта:
По окончании процесса закрываем окно загрузки и переходим на следующую вкладку.
Убедившись в равномерности заполнения слоя можно двигаться дальше.
Но прежде, для прояснения тонкостей и во избежание возможных проблем, хочется процитировать маленький FAQ по загрузке, взятый на форуме программы:
• При загрузке некоторых карт (обычно Google) сперва все идет нормально, а потом мне говорит что «Такого изображения нет на сервере», хотя при просмотрте в браузере этот регион прекрасно показывается. Что это?!
• При загрузке карт мне говорит что «Такого изображения нет на сервере», хотя при просмотрте в браузере этот же регион прекрасно показывается. Что это?!
• Хочу всегда иметь самые свежие версии zmp!
• Мои карты очень медленно грузятся.
• Мне постоянно сообщает «Отсутствует подключение к Интернет!», хотя подключение есть
Начинаем заполнять поля:
Всё, нажимаем «Поехали» и после окончания склейки.
. идём проверять свои файлы:
Ну что, осталось только залить их в прибор, путь до \Garmin\CustomMaps уже заказан 🙂