Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.09.2010, 17:33   #1
voron.kz
Пользователь
 
Регистрация: 24.09.2009
Сообщений: 43
По умолчанию Карта города

люди не подскажите на чем можно написать программу КАРТА ГОРОДА? в ней должна быть БД, приблежение и отделение картинки, при навведении на дом выходило сообщение ИНФОРМАЦИЯ О НАВЕДЕНОМ ОБЪЕКТЕ, и т.д.....какой язык или программу лучше использовать?
voron.kz вне форума Ответить с цитированием
Старый 01.09.2010, 18:12   #2
RuVarez
Форумчанин
 
Аватар для RuVarez
 
Регистрация: 25.08.2010
Сообщений: 258
По умолчанию

Пиши на Delphi (если умееш). Из БД рекомендую Interbase
RuVarez вне форума Ответить с цитированием
Старый 01.09.2010, 19:21   #3
_-Re@l-_
C++, Java
Старожил
 
Аватар для _-Re@l-_
 
Регистрация: 10.04.2010
Сообщений: 2,665
По умолчанию

Цитата:
люди не подскажите на чем можно написать программу КАРТА ГОРОДА? в ней должна быть БД, приблежение и отделение картинки, при навведении на дом выходило сообщение ИНФОРМАЦИЯ О НАВЕДЕНОМ ОБЪЕКТЕ, и т.д.....какой язык или программу лучше использовать?
Лучше всего скачать ДубльГис и не париться.
_-Re@l-_ вне форума Ответить с цитированием
Старый 02.09.2010, 05:57   #4
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,210
По умолчанию

Цитата:
Лучше всего скачать ДубльГис и не париться
Вопрос был поставлен: на чем можно написать программу КАРТА ГОРОДА?
не надо советовать всякую ерунду, типа скачай и все. Тема интересная на самом деле и мне бы тоже пригодилась.
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 03.09.2010, 12:34   #5
voron.kz
Пользователь
 
Регистрация: 24.09.2009
Сообщений: 43
По умолчанию

не подскажите тогда как сделать что б можно было увеличить и уменьшить, перемещение на все 4 стороны? сейчас это моя самая большая трудность...
voron.kz вне форума Ответить с цитированием
Старый 03.09.2010, 12:40   #6
voron.kz
Пользователь
 
Регистрация: 24.09.2009
Сообщений: 43
По умолчанию

не подскажите коды для:

1.увеличение и уменьшение IMG на форме
2.перемещение IMG при помощи мыши и TButton(налево,на права,верх,вниз)
voron.kz вне форума Ответить с цитированием
Старый 03.09.2010, 12:50   #7
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

Для своих целей уже делал карту, правда всего мира

На Lazarus, без использования БД.

Кусочек исходника:
Код:
Procedure DrawMark;
  Begin
   FRMMain.Image1.Canvas.Draw(0,0,Minimap);
   FRMMain.Image1.Canvas.Pen.Color := $0000FF;
   FRMMain.Image1.Canvas.MoveTo(Round(X * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))), Round(Y * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))));
   FRMMain.Image1.Canvas.LineTo(Round(X * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))), Round(Y * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))) + Round(256 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))));
   FRMMain.Image1.Canvas.LineTo(Round(X * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))) + Round(256 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))), Round(Y * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))) + Round(256 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))));
   FRMMain.Image1.Canvas.LineTo(Round(X * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))) + Round(256 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))), Round(Y * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))));
   FRmMain.Image1.Canvas.LineTo(Round(X * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))), Round(Y * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))));

   FRMMain.Image1.Canvas.MoveTo(2 + Round(X * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))), 2 + Round(Y * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))));
   FRMMain.Image1.Canvas.LineTo(2 + Round(X * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))), -2 + Round(Y * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))) + Round(256 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))));
   FRMMain.Image1.Canvas.LineTo(-2 + Round(X * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))) + Round(256 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))), -2 + Round(Y * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))) + Round(256 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))));
   FRMMain.Image1.Canvas.LineTo(-2 + Round(X * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))) + Round(256 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))), 2 + Round(Y * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))));
   FRmMain.Image1.Canvas.LineTo(2 + Round(X * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))), 2 + Round(Y * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))));

   FRMMain.Edit1.Text := IntToStr(X);
   FRMMain.Edit2.Text := IntToStr(Y);
  End;
Изображения
Тип файла: jpg 1.jpg (37.0 Кб, 150 просмотров)
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума Ответить с цитированием
Старый 03.09.2010, 12:55   #8
voron.kz
Пользователь
 
Регистрация: 24.09.2009
Сообщений: 43
По умолчанию

Цитата:
Сообщение от Alex Cones Посмотреть сообщение
Для своих целей уже делал карту, правда всего мира

На Lazarus, без использования БД.

Кусочек исходника:
Код:
Procedure DrawMark;
  Begin
   FRMMain.Image1.Canvas.Draw(0,0,Minimap);
   FRMMain.Image1.Canvas.Pen.Color := $0000FF;
   FRMMain.Image1.Canvas.MoveTo(Round(X * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))), Round(Y * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))));
   FRMMain.Image1.Canvas.LineTo(Round(X * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))), Round(Y * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))) + Round(256 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))));
   FRMMain.Image1.Canvas.LineTo(Round(X * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))) + Round(256 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))), Round(Y * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))) + Round(256 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))));
   FRMMain.Image1.Canvas.LineTo(Round(X * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))) + Round(256 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))), Round(Y * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))));
   FRmMain.Image1.Canvas.LineTo(Round(X * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))), Round(Y * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))));

   FRMMain.Image1.Canvas.MoveTo(2 + Round(X * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))), 2 + Round(Y * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))));
   FRMMain.Image1.Canvas.LineTo(2 + Round(X * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))), -2 + Round(Y * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))) + Round(256 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))));
   FRMMain.Image1.Canvas.LineTo(-2 + Round(X * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))) + Round(256 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))), -2 + Round(Y * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))) + Round(256 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))));
   FRMMain.Image1.Canvas.LineTo(-2 + Round(X * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))) + Round(256 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))), 2 + Round(Y * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))));
   FRmMain.Image1.Canvas.LineTo(2 + Round(X * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))), 2 + Round(Y * 128 / Round(Exp((FRMMain.Combobox1.ItemIndex) * Ln(2)))));

   FRMMain.Edit1.Text := IntToStr(X);
   FRMMain.Edit2.Text := IntToStr(Y);
  End;
Спасибо, а как объявить "FRMMain"?
voron.kz вне форума Ответить с цитированием
Старый 03.09.2010, 12:58   #9
_-Re@l-_
C++, Java
Старожил
 
Аватар для _-Re@l-_
 
Регистрация: 10.04.2010
Сообщений: 2,665
По умолчанию

Цитата:
"FRMMain"?
Как я понял, это TForm
_-Re@l-_ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиграем в города? Hallo Свободное общение 178 24.07.2011 23:35
Карта города zzzzz Общие вопросы Delphi 16 15.06.2011 15:19
Выпадющие города timon777777 JavaScript, Ajax 1 14.08.2010 18:50
Карта города Vadimok Общие вопросы Delphi 4 26.08.2008 17:36
Карта города 2 Archangel Помощь студентам 3 04.03.2007 05:19