rss RSS Главная  |   СКАЧАТЬ  |   Другие карты  |   Статьи  |   Форум  |   Добавить POI  |   Обратная связь
Garmin :: Navitel Navigator :: CityGuide
Меню сайта
GPS Новости
XML error in File: http://gps-club.ru/gpsrss.php
XML error: Mismatched tag at line 6

© Новости GPS-CLUB.RU
alfessa.net
3D объекты в карте для Garmin
Статьи
3D объекты в карте для Garmin


Небольшая инструкция по созданию 3D объекта и размещению его в карте для Garmin.

Для создания 3D объекта нам понадобятся следующие программы:
- SketchUp Pro
- PhotoShop

Для начала берем фотоаппарат в руки и идем фотографировать интересующий нас объект. Фотографировать нужно так, чтобы искажений было как можно меньше. А лучше, чтобы их совсем не было. Если сторона здания прямоугольная, то и на фото в итоге она должна быть прямоугольной, а не трапецивидной.
После этого из полученных фото вырезаем нужные нам участки и делаем объединённую текстуру.
Текстура должна быть размерами 512х512 пикселей в формате png. Размеры сторон здания не обязательно должны быть пропорциональны друг другу. Но их стороны должны соотноситься со сторонами полигонов нашего объекта, который мы будем создавать чуть позже. Фон объединенной текстуры лучше сделать непрозрачным. Например сделаем его белым. Если у нашего строения несколько сторон выглядят одинаково, то в нашей текстуре достаточно разместить картинку только одной стороны. Другими словами, не обязательно размещать свою текстуру для каждого полигона объекта. Создавать общую текстуру можно в FotoShop. Но если кому-то удобней в других графических программах, то это не возбраняется. Главное, в результате получить картинку в формате png размерами 512х512 пикселей.
Вот, что в итоге у нас должно получиться:
3D объекты в карте для Garmin

Как будет дальше видно, количество частей текстур меньше, чем количество полигонов в нашем объекте.
Ну а теперь приступим непосредственно к созданию нашего 3D объекта. Для начала рекомендую создать самый простой объект - куб.
Размеры объекта должны соответствовать реальным размерам дома, который мы собираемся создавать. Если сторона дома в реальности 50 метров, то и у нашего объекта соответствующая сторона (грань) должна быть тоже 50 метров.
И так, нам нужна гуглевская программа SketchUp Pro. На просторах интернета можно найти версию Pro (именно Pro) без проблем.
Создаем новый объект - File->New
Человечка в нулевых координатах можно удалить. Нам он не нужен.
Если есть спутниковый снимки участка, где расположен Ваш объект, то Вы можете разместить эту фото: File->Geo-location->Add Location. После выбираем нужный нам участок, масштаб и жмем Select Region. После центруем на нужном нам объекте (крестик - это нулевые координаты). Рекомендую сцентровать на каком-нибудь углу нашего строения.
3D объекты в карте для Garmin

После жмем Grab и выбранный участок появится в окне моделирования.
Теперь необходимо нарисовать саму модель. Я думаю не стоит тут описывать функционал программы SketchUp. Каждый сам разберется, как и что делать.
В результате мы получаем вот такой домик:
3D объекты в карте для Garmin

Теперь нам необходимо разместить на нашем объекте текстуру, которую мы подготовили чуть раньше.
Делается это следующим образом.
Выбираем Paint Bucket (ведро с выливающейся желтой краской). У нас откроется окошко Materials. Нам нужно создать новый материал, который будет содержать нашу текстуру. Для этого в этом окошке нажимаем Create Material... (ящик с плюсиком в кругляшке). Откроется еще одно окошко. Выписываем там название нашего материала. Лучше латинскими буквами и с маленькой буквы. Выбираем файл нашей текстуры. Ниже выставляем размеры текстуры (тут можете поэксперементировать, потому что от этих размеров будет зависеть размер, который изначально нанесется на полигон). Жмем ОК. В окне Materials появится наша текстура.
После этого курсором (ведро с желтой краской) выбираем полигон, на который хотим нанести текстуру. Получим вот такое:
3D объекты в карте для Garmin

Теперь нам необходимо растянуть нужный участок текстуры (на котором расположена часть, которая должна покрыть выбранный полигон).
Нажимаем правой кнопкой мыши на нужный полигон. В выпавшем окне выбираем Texture->Position. В результате видимо следующую картину:
3D объекты в карте для Garmin

Тут мы видим 4 метки (красная, желтая, зеленая и синяя). Нам интересный красная и зеленая. Красная - это метка нулевых координат текстуры. При однократном нажатии на нее левой кнопкой мыши, появляется возможность перетаскивать эту метку (так же, как и другие). Перетаскиваем ее в один из углов нужного нам участка текстуры. Двигаем всю текстуру так, чтобы красная метка совпала с соответствующей частью полигона. Например, у нас квадратный полигон, и соответственно квадратная часть текстуры. Переносим красную метку в левый нижний угол нужного нам участка текстуры (например, это часть, которая покрывает торец здания). После этого двигаем всю текстура так, чтобы эта красная метка оказалась тоже в левом нижнем углу полигона торца здания.
Теперь таким же образом переносим зеленую в другую часть нужного участка текстуры. После этого начинаем растягивать текстуру, потянув в нужном направлении за зеленую метку, удерживая ее левой кнопкой мыши.
В итоге получаем следующее:
3D объекты в карте для Garmin

По аналогии заполняем текстурой все остальные полигоны.
В итоге у нас готов объект, полностью заполненный текстурой.
3D объекты в карте для Garmin

Все, объект готов.
Но тут возникает один нюанс. Если Вы попытаетесь вставить его в карту в таком виде, то он будет расположен перпендикулярно, относительно поверхности карты. Поэтому нам необходимо его повернуть на 90 градусов относительно красной оси координат.
Расскажу о том, какие оси куда направлены.
Красная - в сторону востока.
Зеленая - в сторону севера.
Синяя - в небо.
В карте же для Гармин эти линии меняют ориентацию:
Красная - в сторону востока.
Зеленая - в сторону земли.
Синяя - в сторону севера.
В итоге, наше строение должно быть расположено следующим образом:
3D объекты в карте для Garmin

Делается это следующим образом. Сперва выделяем всю модель: Edit->Select All. После выбираем кнопку Rotate (две красные полукруглые стрелки). Подводим к нулевым координатам так, чтобы появившаяся шкала стала красной (поворачивать будем относительно красной оси). После поворачиваем строение на 90 градусов.
3D объекты в карте для Garmin

Теперь нашу модель необходимо конвертировать в подходящий для Garmin формат. А это файлы формата obj и mtl.
Делаем: File->Export->3D Model.
Выбираем папку, куда сохранять. В итоге мы получим 2 файла *.obj и *.mtl. Там же будет папка, в которой расположена наша текстура.
После конвертации увидим следующее окошко, в котором необходимо обратить внимание на выделенные строки. Обязательно должны быть 1 материал и 1 текстура.
3D объекты в карте для Garmin

Текстуру из полученной папке можете разместить рядом с фалами *.obj и *.mtl. Однако в таком случае необходимо будет внести изменения в файл *.mtl. Он открывается обычным редактором Блокнот. Нас интересует строка "map_Kd 2/chgaa.png". Заменяем ее на "map_Kd chgaa.png". Это ссылка на путь до нашей текстуры.
Если захотите переименовать файл текстур, так же необходимо внести изменения в файл *.mtl. Главное помнить, что название файла текстуры должно содержать только латинские буквы и цифры, и только маленькие буквы.
Если решите переименовать файл *.mtl, то необходимо внести изменения в файл *.obj (который тоже можно открыть Блокнтом). Нас интересует строка "mtllib 2.mtl". Это путь до файла *.mtl.
И так, все файлы упорядочили, все подготовили. Осталось сделать shape-файл, который мы будет подсовывать при компиляции карты.
Shape должен содержать следующие атрибуты:

NAME=chgaa (тут название вашего объекта, произвольное)
GRMN_TYPE=GENERIC_MANMADE (тут тип полигона из тех, что могут поддерживать высотность)
LINK_ID=1 (тут уникальный id объекта)
HGT_DP=0 (тут высота, которая, как я понял, должна быть равна нулю)
HGT_DP_FMT=M (в чем измеряется - метры)
MODEL=C:\mp2shp_1.09\3D\model001 (тут путь до папки, в которой будут размещаться *.obj, *.mtl и текстура)
MODEL_ORIG=lat=55.159348,lon=61.379063 (тут координаты объекта, которые соответствуют нулевым координатам в 3D редакторе)

Если нет опыта работы в в специализированных программах (MapInfo, например), то можно все эти данные вписать в дополнительные атрибуты полигона, который сделаете в GPSMapEdit. После с помощью Global Mapper сконвертируете в shape.

Все, теперь гарминовском конвертере указываете путь до этого shape-файла и в итоге получите созданный 3D объект в Вашей карте.

В заключении хочу сказать, что сперва лучше попробовать все это на самом элементарном объекте. Нарисуйте куб, прикрепите его к карте. Тогда сможете понять, что нужно доработать и подправить.

Проект Челябинск © Гусев Николай (gukol)





2.02.2014, 21:25 | Просмотров: 5479 | Напечатать


Вернуться на главную страницу
Погода
Скачать
Загрузить карту Челябинска
Актуальная версия карты
2017.03
(от 30 марта 2017)
Новое на форуме
Релиз карты от 06.2017
Автор: :-)
23:48, 18.06.2017Ответов: 7
 
Карты городов не вошедших в отдельные те...
Автор: sergey-ivanov00
00:20, 16.06.2017Ответов: 13
 
Навигатор не видит карту Челябинска
Автор: :-)
08:40, 09.06.2017Ответов: 75
 
Релиз карты от 03.2017
Автор: AlexanSNZ
09:56, 06.06.2017Ответов: 33
 
Релиз карты от 12.2016
Автор: AlexanSNZ
11:59, 29.03.2017Ответов: 40
 
С днем рождения AlexanSNZ
Автор: AlexanSNZ
07:12, 12.02.2017Ответов: 3
 
Интерфейс карты
Автор: beliy74
23:15, 01.01.2017Ответов: 39
 
Релиз карты от 09.2016
Автор: AlexanSNZ
12:16, 26.12.2016Ответов: 47
 
Камеры слежения (Speedcam) City Guide
Автор: :-)
19:57, 14.10.2016Ответов: 11
 
Акция для поклонников iOS
Автор: AlexanSNZ
06:35, 11.10.2016Ответов: 0
 
Давайте общаться
Вконтакте twitter twitter
Реклама
Кнопка сайта
Буду благодарен, если Вы разместите код моей кнопки у себя на сайте
Проект Челябинск - карты Челябинска для GPS навигации
Код:
Главная  |   СКАЧАТЬ  |   Другие карты  |   Статьи  |   Форум  |   Добавить POI  |   Обратная связь
Copyright © 2007-2017 Николай Гусев (GUKOL) | Александр Охезин (AlexanSNZ) All Rights Reserved
Все материалы доступны исключительно для личного пользования в ознакомительных целях и не должны использоваться для последующего распространения или трансляции, а равно извлечения коммерческой выгоды.
В случае обнаружения Вами фактов продажи карт из раздела ПРОЕКТ ЧЕЛЯБИНСК, а также распространения иным другим способом третьими лицами, просьба немедленно сообщить с целью устранения правонарушения: alexansnz@gmail.com.
При перепечатке и использовании материалов ссылка на сайт www.chelmaps.ru ОБЯЗАТЕЛЬНА!
Наши реквизиты для оказания финансовой помощи Проекту: Яндекс.Деньги - 410011994473088
Рейтинг GPS Клуба Яндекс цитирования