API статичних карт Google - Програмні продукти
Статичні карти Google є звичайним бітмапом. Така карта не має жодних інтерактивних можливостей щодо взаємодії з користувачем. Позитивним моментом є те, що не потрібно використовувати TWebBrowser – джерело постійного пожирання оперативної пам'яті та роздування розміру програми.
Інформація щодо використання статичних карт API доступна українською мовою за цим посиланням http://code.google.com/intl/ru-RU/apis/maps/documentation/staticmaps/. Рекомендується обов'язково прочитати після статті.
Я побудую простий додаток, що відображає на карті задану широту і довготу точку з необхідним масштабом.
Для отримання картинки з карткою потрібно зробити такі дії:
- Знати координати відображуваної точки та масштаб карти навколо точки. Для цього намалюємо найпростіший інтерфейс користувача.
- Надіслати http запит серверу у певному форматі, що містить параметри картинки та отримати відповідь від сервера у вигляді блоку бінарних даних.
- Перетворити дані в прийнятий Delphi графічний формат.
- Намалювати картинку на формі.
Дія 1 я розписувати не буду, завантажуємо приклад (Delphi 7), відкриваємо та фтикаємо в Delphi IDE.
Дія 2. Як випливає з інформації гугла (див. посилання), формат запиту має такий вигляд: http://maps.google.com/staticmap?parameters , де parameters - пари = розділені знаком "&". Загалом, звичайний вид передачі параметрів url. Для запиту нам знадобляться такі параметри:
Тобто, всі параметри, які надає гугль. Я не розписуватиму їх, за назвою параметрів зрозуміло, за що відповідає кожен параметр. Для докладного вивчення рекомендую першоджерело. Обмежусь рядком дляфункції Format з вихідних джерел:
Зверну увагу на три моменти:
- Координати приймаються у форматі "значення з плаваючою точкою" не більше 6-ти знаків після точки. Значення задаються у десяткових частках градуса. Для перекладу із формату секунд згадуємо, скільки секунд за хвилини.
- Google запевняє, що максимальний розмір зображення 512х512. Досвідченим шляхом обчислено, що максимальний розмір 640×640.
- З ключем карти ситуація не зовсім ясна. Я не використовував ключ, який отримує Google, т.к. ключ генерується для конкретного сайту, а картка відображається у додатку. Я взяв ключ із прикладу на сайті. Поки він працює, а що буде далі, я не знаю.
На виході маємо заповнений клас TOleGraphic у разі успішного з'єднання або порожній покажчик у разі відмови сервера або відсутності зв'язку із сервером.
На цьому дії 2 та 3 завершені. Бітмап у нас на руках, малюємо його на формі хто як уміє.
А всі питання – до гугла, він знає ВСЕ!
І для тих, хто в танку - для правильної роботи прикладу потрібне активне робоче підключення до інтернету.
Результат виглядає так:

Як епілог цитата з баш.орга:
З форуму, гілка про Google Earth: ххх: Привіт, учасники форуму! Не могли б ви дати координати Google Earth військових портів у США?