Для:
j_man
Не мог бы ты расписать все по пунктам,как все это сделать.Потому что я ламо и мало что понимаю.Мне нужно с нуля.Буду очень сильно тебе благодарен.
Итак:
1. Находишь карту города в виде одной большой картинки (уж не знаю где ее взять, можно в принципе склеить из кусков). Можно взять тот же СитиИнфо и наделать скриншотов одного района а потом их склеить в одну картинку.
2. Далее разрезаешь эту большую картинку на квадратные картинки (ну или снала размечаешь). Ну и как-нибудь для себя их пронумеруй и сохранять их должен с соответствующими именами. Например обычным образом:
11 12 13 14 ...
21 22 23 24 ...
31 32 33 34 ...
..................... (тут 12 картинок пронумеровано)
3. Создаешь в базе таблицу вида:
id - int(11) - уникальный идентификатор обьекта
name - text - название обьекта. Например: "пр. Ф.Скорины", "пр. Ф.Скорины, 4", "резиденция"
type - enum(street, bulding, administrative building, office ....) - ну вообщем понятно
startXY - varchar - наименование левого верхнего квадрата области
finishXY - varchar - наименованиеправого ниженго квадрата области
И заполняешь эту базу. Визуально определяешь какую область занимает твой обьект, т.е. если дом стоит на пересечении квадратов 22 и 23, то для него startXY = 22 и finishXY = 23. Если улица протянулась от 11 до 24, то так в базе и запишешь
.
4. Базу заполнил.... Теперь нужно написать алгоритм генерации нужной картинки и вывода ее пользователю по запросу. Допустим он просто ищет улицу, ввел ее название ты простым запросом поискал обьект с таким название и соответствующим типом у себя в базе. Если нашел, то уже знаешь какие картинки тебе нужно выдать пользователю (ну и порядок их ты тое знаешь). Ах да, забыл... экран то не резиновый, весь проспект Ф.Скорины не покажешь в оригинальном качестве. Ну для этого придуманы функции работы с изображениями. Но тут вcе просто, когда дойдешь до этого момента, позвони мне, я расскажу, как это маштабирование сделать и ты справишься за пару часиков (каков бы уровень у тебя не был
)
Конечно же это всего лишь макет всего процесса. Его можно потом улучшить, но для начала не мешало бы реализовать вот такой вот начальный вариант.
-----------------------------------------------
Главное не сложность поставленной задачи, а энтузиазм, с которым к ней нужно подойти.