Създаване на собствени карти, използващи API - забавни уеб картографиране
Много хора се чудят как можете да използвате API Yandex.Maps да създадете свои собствени карти?
Няколко бележки в блога си, аз ще обсъдят този въпрос по-подробно.
За да създадете свои собствени карти има специален клас YMaps.MapLayer. който е предназначен да създадете потребителски слой с картата.
В него се посочва източника на данни за картата слой с помощта YMaps.TileDataSource клас.
Конструкторът на този клас се следните параметри:
tileUrlTemplate - шаблон, върху която да се изгради URL теракот;
isTransparent - изтеглени плочки са прозрачни;
isPng - сваляне от изображения са PNG формат.
И така, в началото, данните трябва да бъдат подготвени да създадете свои собствени слоеве на картата.
Източникът трябва да се използва растерни представени в няколко скали, всеки от които се нарязват на парчета с размер на 256 от 256 пиксела.
Файлове с филии с изображения за преименуване съответно. като керемида-Zum-num.jpg
Има Zum - ниво мащаб, бр - брой заглавия в ред.
Аз ще ви покажа как можете да създадете свой образ в интерфейс за управление на Yandex.Maps върху конкретен пример.
Като образ използвам снимка на автомобил Porsche Cayenne размера на 1600x1200 пиксела.
Използвайте тази услуга, много лесно.
След известно време (продължителност зависи от размера на заредената картинката) вижте страницата с натоварената изображението в интерфейса на Google Maps.
И трите връзките в долната част на изображението.
За моя пример, те са, както следва:
В моя случай, съдържанието на файла:
Сега трябва да се напише код, за да изтеглите заглавия, определени в Yandex.Maps интерфейс.
Ето примерен код:
<Мета HTTP-екв = »Content-Type» съдържание = »текст / HTML; кодировка = UTF-8 "/>
карта = нов YMaps.Map (document.getElementById ( «YMapsID»));
myData.getTileUrl = функция (плочки, увеличение)
върнете this.getTileUrlTemplate () + «tile-» + увеличение + «-» + (tile.y * Math.pow (2, мащабиране) + tile.x) + «.jpg»;
Ще обясня какво трябва да обърнем внимание тук.
Line map.setCenter (нова YMaps.GeoPoint (0,0), 1); посочен на картата център на ниво първи мащаб.
Зададохме на правилата за формиране на име на файл в конкретно заглавие на подходящото ниво на мащаб.
И map.setType (нов YMaps.MapType ([нов YMaps.MapLayer (myData)],) "Пример карта") линия; да се уточни нов тип карта с името на примера на картата, на същото място, ние въвеждаме ограничение на нивото на увеличение на 1 до 3.
Зареждане например в браузъра и да гледам резултатите
Вижте примерно в действие тук.
навигация в публикациите
Каква е вашата примерен код не работи, и колкото повече се вгледате собственост на изображението?
И как може да се определи координатите върху карта? Искам да се идентифицират някои от обектите на неговата карта на града с помощта на счупена gmapupload.com
Съхранявайте на последния въпрос. Как да се определи координатите на картата, която се зарежда ??
Кажи ми, в така създадена картата, можете да по някакъв начин насочва към сложи описание на обекта?
Tags възможно описание да се сложи по конвенционален начин, като карта, създадена с помощта на Yandex.Maps API. Единственият проблем - koordinaty.Tsentr се намира на координатите 0,0. Необходимо е да се преизчисли координатите.
Благодарим Ви! Много полезна.