Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.54/39: Рейтинг темы: голосов - 39, средняя оценка - 4.54
1 / 1 / 0
Регистрация: 27.10.2012
Сообщений: 81

Необходимо нарисовать интерактивную карту Украины

17.06.2013, 20:27. Показов 8670. Ответов 42
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Встала задача:
Необходимо нарисовать интерактивную карту Украины, при нажатии на области, строились графики. Проект должен запускаться на любом пк, без лишнего по.
В чем это можно реализовать?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
17.06.2013, 20:27
Ответы с готовыми решениями:

Как реализовать интерактивную карту
Добрый день! Как можно реализовать интерактивную карту с использованием html 5 и готовой векторной карты (SVG) так, чтобы при...

Можно ли сделать интерактивную карту города на C++
Здравствуйте! Задача: Есть карта , предположим А3 формат. Есть рамка соотв. размеров (в которую вставляется карта),регистрирующая...

Как сделать интерактивную карту в joomla 1.5
Здравствуйте, уважаемые форумчане! Ищу решение вопроса как изобразить интерактивную карту города с ссылками на ней. Т.е. на карте будут...

42
Модератор
 Аватар для FIL
3492 / 2614 / 742
Регистрация: 19.09.2012
Сообщений: 7,977
20.06.2013, 15:49
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от angstrom Посмотреть сообщение
Правильно грешишь, используй Draw взамен.

Не по теме:

Это не я грешу... по крайней мере на ассигн. :D

0
angstrom
20.06.2013, 22:32

Не по теме:

Цитата Сообщение от FIL Посмотреть сообщение
Оно тормозит и подергивается из-за использования TImage. Он плохо подходит для отображения "динамических" изображений
Для тебя можно это указать - нормально подходит.

Модератор
 Аватар для FIL
3492 / 2614 / 742
Регистрация: 19.09.2012
Сообщений: 7,977
20.06.2013, 23:10
Цитата Сообщение от angstrom Посмотреть сообщение

Не по теме:


Для тебя можно это указать - нормально подходит.

Не по теме:

Не понял, что указать?

0
angstrom
20.06.2013, 23:13
Он плохо подходит для отображения "динамических" изображений
Почему же плохо? Реальную игру не сделать, а для простых мультиков вполне даже ничего.
Модератор
 Аватар для FIL
3492 / 2614 / 742
Регистрация: 19.09.2012
Сообщений: 7,977
20.06.2013, 23:57
Цитата Сообщение от angstrom Посмотреть сообщение
Почему же плохо? Реальную игру не сделать, а для простых мультиков вполне даже ничего.
Просто пару раз сталкивался с мерцанием при рисовании движущихся (меняющихся) изображений на Имаге, а на Канве формы все четко.
Вполне допускаю, что причина была не в Имаге, а в кривой реализации.

Набросал код под карту от murderer с рисованием на Имаге и Форме. Впринципе в данном случае разницы не заметно.

ЗЫ. Но и ассигн на наличие или отсутствие мерцания не влияет.
Вложения
Тип файла: rar MAP4.rar (553.3 Кб, 75 просмотров)
0
angstrom
21.06.2013, 00:07
Цитата Сообщение от FIL Посмотреть сообщение
Но и ассигн на наличие или отсутствие мерцания не влияет
Вот когда отрисовка идёт через таймер и с достаточно большой скоростью (~20..30 Msec), то заметно как Assign притормаживает, Draw рисует исправно и без дёрганья.
4195 / 1841 / 223
Регистрация: 06.10.2010
Сообщений: 4,127
21.06.2013, 06:13
Тормозит именно assisgn, т.к. идёт пересоздание битмапа с сопутствующим выделением памяти.

Мерцание - это не баг, а фича Я же не делал двойную буферизацию, как в первом примере на win-api.

Добавлено через 2 минуты
@FIL
Он плохо подходит для отображения "динамических" изображений
Не вижу никакой разницы с холстом формы. В него ведь можно и через OpenGL рисовать.
0
4195 / 1841 / 223
Регистрация: 06.10.2010
Сообщений: 4,127
21.06.2013, 06:55
Короче объясню немного про TImage. Этот класс не имеет своего окна, так что WS_CLIPCHILDREN не поможет избежать перерисовки в WM_ERASEBKGND. Отсюда и появляется подёргивание. Чтобы избежать этого нужно перехватить WM_ERASEBCKGND и стирать фон с учётом TImage. Реализация во вложении.
Вложения
Тип файла: 7z Map_Doublebuffered.7z (250.7 Кб, 47 просмотров)
1
4195 / 1841 / 223
Регистрация: 06.10.2010
Сообщений: 4,127
21.06.2013, 06:57
@angstrom
Правильно грешишь, используй Draw взамен.
Спасибо - именно его и задействовал.
0
Модератор
 Аватар для FIL
3492 / 2614 / 742
Регистрация: 19.09.2012
Сообщений: 7,977
21.06.2013, 11:25
murderer, спасибо, интересный вариант, с регионами еще не работал.

angstrom, я согласен с тем, что Assign работает медленнее других способов "копирования" изображений. И вполне возможно, что при запредельных размерах Битмапа это скажется на качестве отрисовки, но...
Переделал обсуждаемый здесь вариант под Таймер с непрерывной отрисовкой - стало еще лучше, чем было - даже без DoubleBuffered все замечательно работает на любых скоростях.
Вложения
Тип файла: rar MAP4_timer.rar (310.9 Кб, 59 просмотров)
0
angstrom
21.06.2013, 11:53
Да каких запредельных? Достаточно 800х600 и указанной ранее скорости таймера и начнутся тормоза. А всё из-за того, что Assign пересоздаёт файл. Для данной программы всё это, конечно, не актуально.
4195 / 1841 / 223
Регистрация: 06.10.2010
Сообщений: 4,127
21.06.2013, 11:56
@FIL
На большой карте (та что в коричневых тонах) я ощущал задержку в отрисовке на Celeron 1.8. Возможно на более мощном компьютере тормозов не будет заметно.
0
Модератор
 Аватар для FIL
3492 / 2614 / 742
Регистрация: 19.09.2012
Сообщений: 7,977
21.06.2013, 12:07
От чего ж не актуально? Я увеличил изображение до 1250х845 и таймер поставил 20мс (можно и 10) - все работает.

Добавлено через 8 минут
murderer, так а замена Assign на Draw решила эту проблему?
0
4195 / 1841 / 223
Регистрация: 06.10.2010
Сообщений: 4,127
21.06.2013, 12:09
Не проверял, но должна, т.к. на win-api ничего не тормозит. А Draw - это по сути тот же BitBlt.
0
3 / 3 / 2
Регистрация: 17.07.2014
Сообщений: 63
22.05.2016, 15:25
Цитата Сообщение от FIL Посмотреть сообщение
murderer, спасибо, интересный вариант, с регионами еще не работал.

angstrom, я согласен с тем, что Assign работает медленнее других способов "копирования" изображений. И вполне возможно, что при запредельных размерах Битмапа это скажется на качестве отрисовки, но...
Переделал обсуждаемый здесь вариант под Таймер с непрерывной отрисовкой - стало еще лучше, чем было - даже без DoubleBuffered все замечательно работает на любых скоростях.
А как поменять карту на мою например? Как програма видит где какой регион?
Миниатюры
Необходимо нарисовать интерактивную карту Украины  
0
5999 / 4574 / 1096
Регистрация: 29.08.2013
Сообщений: 28,252
Записей в блоге: 3
22.05.2016, 15:40
вот такая штука есть
http://www.tmssoftware.com/Site/hsimg.asp
0
 Аватар для Пытливый
3764 / 2272 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
22.05.2016, 18:56
Использование сторонних компонентов противоречит исходной постановке задачи.
0
5999 / 4574 / 1096
Регистрация: 29.08.2013
Сообщений: 28,252
Записей в блоге: 3
22.05.2016, 19:59
Цитата Сообщение от Пытливый Посмотреть сообщение
Использование сторонних компонентов противоречит исходной постановке задачи.
напоминание исходной постановке задачи некорректно, так как стороннего ПО не используется
0
 Аватар для Пытливый
3764 / 2272 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
22.05.2016, 20:34
А ссылка на TMS - просто так?
0
Модератор
 Аватар для FIL
3492 / 2614 / 742
Регистрация: 19.09.2012
Сообщений: 7,977
22.05.2016, 21:24
Цитата Сообщение от Dmitry_Demchuk Посмотреть сообщение
А как поменять карту на мою например? Как програма видит где какой регион?
Обсуждалось тут:
Кликабельная карта - выделение стран при наведении мыши
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
22.05.2016, 21:24

Как можно сделать интерактивную карту?
Как можно сделать интерактивную карту вроде этого? tele2.kz/ru/ Т.е при наведении курсора область должна выделяться, и возле курсора должна...

Добавить интерактивную карту из игры на сайт с метками
Здравствуйте мне нужно добавить интерактивную карту из игры на сайт с метками. Пробовал гуглить попадаю или на yandex или на google карты,...

Как грамотно встроить интерактивную Яндекс.карту в CSS код
Хочу встроить интерактивную Яндекс.карту на страницу. Статистическая карта вставляется без проблем. А вот как правильно вставить...

Реализовать карту Украины и разбить ее на регионы
Доброго времени суток! Есть сайт где необходимо реализовать карту Украины и разбить ее на регионы.Так чтоб при наведении на область цвет...

Нарисовать Флаг Украины
Здравствуйте, нужно нарисовать флаг Украины на асемблере через TASM. Спасибо.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701 Купил два термопринтера QR701. На сэлф-тесте написано: Language: PC936 (GB18030). Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
Создание формы заимствованного документа
Maks 03.08.2026
Задача: Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также табличная часть со следующими реквизитами: - Расчетный счет покупателя. . .
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача: В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
Почему SEO не начинается с ключевых слов: что проверить до написания текстов
Neotwalker 01.08.2026
Когда владельцу сайта предлагают заняться SEO, первым шагом часто становится сбор запросов и написание текстов. Логика кажется понятной: 1. Находим ключевые слова. 2. Добавляем их на. . .
Знание — сила: Доктрина интенциональности знаний, углубление в формулу
Hrethgir 01.08.2026
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11957&stc=1&d=1785567302 Знаменитый афоризм Фрэнсиса Бэкона «Знание — сила» (Scientia potentia est) в массовой культуре принято понимать. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru