//IWEditWAP2->Text и IWEditWAP2->Text это широта и долгата полученные из базы данных
AnsiString way = "http://maps.google.com/staticmap?center=" +IWEditWAP2->Text+" ," +
IWEditWAP1->Text + "&zoom=12&size=400x400&markers=" + IWEditWAP2->Text+ "," +
IWEditWAP1->Text + ",reds&maptype=mobile" + keys;
IWImageFileWAP1->ImageFile->URL = way; //грузим картинку
Это удобно и просто, ведь заранее не известно на каком фрагменте карты мира находятся координаты. Это координаты автомобилей, которые ездят по миру. Как видно Google сам все делает, плюс есть возможность поставить маркер на карте.
Я посмотрела. Там фрагмент карты в формате PNG предлагается сохранить. Я не совсем понимаю как Export может мне помочь.
Вот есть 10 автомобилей. Их координаты присылают спец.устройства установленные на автомобилях. Допустим автомобилей 10. Сегодня один в Германии, другой в России и т.д. Завтра они в другом месте… Мне что постоянно подготавливать фрагменты карты самой через Export?
Извините, но можно поподробнее, а то я не понимаю.
У Google все мне понятно - просто формирую ссылку…
Мне нужны статические фрагменты карты в проивольный момент времени в произвольной точке мира и чтобы я сама эти фрагменты не создовала, ну как у Google.
Да и самое гланое, я так понимаю, нет возможности добавить маркер на карту как у Google?
Маркер важен т.к. показвает местоположение авто, а это главное.
Мне OpenStreetMap нужен т.к. у Google, например, карта Украины без подробностей…
Лена, посмотрим еще раз внимательно на ссылку, которую я выше привел
ссылка tile.openstreetmap.org/cgi-bin/export?bbox=37.6082,55.7433,37.6429,55.7598&scale=27500&format=png
После bbox указываешь границы нужной области, после scale - нужный масштаб
Картинка приходит как “вложение”, т.е. открывается окно для сохранения.
Установи, например свой веб-сервер, который скачивает картинку с openstreetmap.org, а пользователю передает в обычном виде, не делая его вложением.
Прямой возможности вставить маркер нет. Но можно самому реализовать такую возможность самостоятельно
Все равно, не доходит.
Вот есть авмтомбиль и у меня в базе прибор прислал его широту и долготу (для маркера).
Как используя эту информацию расчитать границы области?
Я например хочу, чтобы карта всегда была размером 400 на 400 пикселей, а в центре ее автомобиль с его широтой и долготой из базы данных.
Получается так?:
Придумать чтобы область всегда была 400 на 400.
Придумать на сервере логику для скачивания картинки с openstreetmap.org с нужной областью 400 на 400.
скачать например 8 соседних тайлов
соответственно получим кусочек 3x3 тайла (768x768 px) приблизительно в центре которого будет точка полученная от авто
из него уже можно вырезать 400x400 если надо
vvoovv, Cloudmade создали создатели OSM. большая часть сервисов предоставляемая ими - свободна
если заметили то mapnik теперь рендерит не раз в неделю а гораздо оперативней (иногда за полчаса-час) - это тоже заслуга Cloudmade.
Говоря, что Cloudmade - коммерческая компания, я имел ввиду, что там разработчикам платят деньги за работу. А в Openstreetmap любой участник имеет полное право в любой момент прекратить работу.
Всем большое спасибо:)
1.Прежде чем пробывать с титлами (я уже согласна и на размер 256 на 256), меня бы уже очень устроила просто такая ссылка на моей странице: http://www.openstreetmap.org/export/embed.html?bbox=30.4213,50.3783,30.6121,50.4883&layer=mapnik&marker=50.43122,30.48855
тут и маркер готовый. Цифры я бы программно добавляла.
Только размер карты конечно не подходит.
Подскажите, пожалуйста, формулу как правильно посчитать bbox имея координаты маркера, я что-то не нахожу.
Хочу чтобы карта была по размеру шириной и высотой примерно как инструмент Zoom по этой ссылке…
это, блин, не константы
это то, что обозначают эти числа
minlon = minimum longitute = долгота левого угла
аналогично lat = широта
мне это казалось очевидным
Пробую, но что-то не совсем получается.
Вот если имеем такие координаты: 50.43122, 30.48855
Вы как посчитаете если, не использовать алгоритм от wildMan?