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

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

Вернуться   Форум программистов > Delphi программирование > Мультимедиа в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.05.2020, 01:27   #1
Михаил565
Новичок
Джуниор
 
Регистрация: 16.05.2020
Сообщений: 1
По умолчанию Карты в Delphi

Здравствуйте ! Мне дано такое задание : сделать карту определенной страны(Украины или Беларуси , например) и отобразить на них ход продвижения фронта Великой Отечественной войны вместе с основными событиями(захват городов, партизанское движение и т. д.).
Условия следующие :
1.Линия фронта должна протекать как можно плавно, при этом пользователь выбирает определенную дату.
2. Все это реализовать на Delphi.
В связи с этим у меня такой вопрос : не мог бы кто посоветовать , как это реализовать (особенно продвижение фронта ) и с чего бы следует начать.
Заранее благодарю !
Михаил565 вне форума Ответить с цитированием
Старый 16.05.2020, 05:02   #2
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,285
По умолчанию

Тезисно набросаю свое виденье. Определиться, сколько имеется времени на реализацию задачи. Какого уровня задача: школьная, курсовая, дипломная. Обозначить для себя весь возможный список событий, которые предполагается отображать (вряд ли в сжатые сроки сразу получится гибкая программа, чтобы добавлять новые типы событий потом), и как их лучше отобразить. Определиться с периодом войны, который будет рассматриваться, и насколько подробно (сколько дат). Найти источники информации, содержащие исчерпывающие данные по событиям (откуда срисовывать линию фронта, например). Выбрать общий вид карты (2D, 3D), способ рисования (просто по холсту формы или, например, с использованием OpenGL). Выбрать способ хранения информации (текстовый файл, файл записей или база данных). Это всё также зависит от требований к программе и изученных тем. Требуется ли минимизировать или максимизировать использование готовых компонентов.

Например, линию фронта можно хранить как список точек, по которым строится кривая Безье. Для двух соседних дат пусть этот список одинаковой длины, то есть для каждой точки одной даты есть ее новое расположение для второй даты. Добавить ползунок времени, при перемещении которого рассчитывается точка между исходными двумя точками, и так для всех точек линии, затем по этим новым точкам строится кривая Безье. Тогда она будет плавно "перетекать" между датами.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Старый 16.05.2020, 12:41   #3
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 16,219
По умолчанию

По сути задача сводится к следующему:
1. Есть растровая подложка (карта местности).
2. Есть векторные данные (линия фронта, стрелки, всякие обозначения). Векторные данные рисуются поверх растровой подложки.

Осталось определиться со следующим:
1. Способ отрисовки (для упрощения можно взять обычный bitmap).
2. Способ хранения векторных данных. Здесь просто как удобнее.

Дальше надо заполнить массив, где каждому временному промежутку (допустим, каждой дате) соответствуют свои векторные данных. Можно сделать немного более продвинуто, когда прописывается только изменение данных относительно предыдущей даты, ведь многие элементы могут оставаться статичны на протяжении нескольких дней (фронт, к примеру, не продвинулся). Я бы именно такой способ выбрал.
Arigato вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Карты marales Помощь студентам 3 16.01.2013 15:03
Из программкы Framer вытащить в Delphi функцию считывания с карты StudentProg Общие вопросы Delphi 7 13.05.2012 23:13
Ищем специалиста(смарт-карты,бонус.карты и т.п) modob1 Фриланс 3 20.01.2012 11:09
Температура видео карты (Delphi) Air Помощь студентам 2 20.04.2008 12:21