|
Я Фоюмчанин ? дааааа)
|
||||||
Структура приложения "Спичечные головоломки"15.02.2015, 13:01. Показов 3983. Ответов 56
Метки нет (Все метки)
Всем доброго времени суток.
С самого начала: хочу реализовать приложение головоломку "спички". И так, что я пока сделал: Я могу ввести число строк и столбцов и нарисовать, а так же сразу создаю массив с точками пересечения прямых.
И тут вопрос как лучше рисовать спичку и как обрабатывать Drag And Drop? при рисовании на Canvos Плюс ко всему мне нужно обрабатывать положение спички, так, что бы она могла располагаться только от точки до точки: Как я думою: Мне нужно создать класс Квадрат и при подсчете точек создавать объекты этого класса и сохранять его координаты. т.е. наглядно будет так: Далее просто MouseMove будем бегать по всем квадратам и сравнивать координаты и положение мышки: Относительно всего поля найдем нужный квадрат, а относительно этого квадрата будем смотреть где в нем расположить спичку. Нужны комментарии, предложения, замечания и т.д. ...
0
|
||||||
| 15.02.2015, 13:01 | |
|
Ответы с готовыми решениями:
56
Структура приложения Структура приложения Структура Qt-приложения |
|
Я Фоюмчанин ? дааааа)
|
||
| 19.02.2015, 15:39 [ТС] | ||
|
0
|
||
|
Я Фоюмчанин ? дааааа)
|
|||
| 19.02.2015, 15:49 [ТС] | |||
|
Добавлено через 2 минуты Avazart, Я понимаю, что каждый раз ужимая изображение выполняются лишние и трудоемкие действия, но у меня форма по умолчанию на весь экран. А кто знает какой экран у какого пользователя? да никто вот и приходится хранить изображение большие и рисовать сжимая.
0
|
|||
|
Почетный модератор
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
|
||
| 19.02.2015, 16:23 | ||
|
Просчитать небольшой кусочек, отрисовать его (полностью перерисовать всю область рисования, прям на экране, все дела), просчитать еще кусочек, отрисовать, еще просчитать, отрисовать. С промежуточной отрисовкой: Просчитать кусок, отрисовать его в битмап (в памяти байтики переставить), просчитать, отрисовать... В конце отрисовать битмап на экран.
0
|
||
|
Я Фоюмчанин ? дааааа)
|
|
| 20.02.2015, 15:11 [ТС] | |
|
SatanaXIII,
![]() Я вас ни капельки не понял ![]() Добавлено через 21 час 57 минут В общем тут ничего не изменить, вся графика в приложениях обрабатывается непосредственно процессором и видеокарта ничего не делает. В Win Api, что бы снизить нагрузку сделана двойная буферизация и её я использую... Выход только 1 переключить обработку графики на видео карту, а это можно сделать только использую графические библиотеки например Open GL...
0
|
|
|
Почетный модератор
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
|
|
| 20.02.2015, 15:36 | |
|
0
|
|
|
Я Фоюмчанин ? дааааа)
|
|
| 20.02.2015, 15:41 [ТС] | |
|
SatanaXIII, а каким образом перерисовывать кусочек?
Скажем у меня нужно перерисовать 2 квадрата: 1 с которого я забрал спичку и 2 в который положил. И у меня есть точные координаты этих квадратов. Как мне какой то битмап с моим квадратом нарисовать на изображении в каком то месте?
0
|
|
|
Почетный модератор
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
|
|
| 20.02.2015, 15:57 | |
|
ivan.-94, надо уходить в винапи. Ловить WM_Paint для окна и хоть попиксельно его перерисовывать.
Я вообще к тому, что скорее всего вы лечите следствие. Плохой алгоритм отрисовки используете. Неверная организация программы вообще. Я бы в эту сторону копал. Но я уже повторяюсь.
0
|
|
|
Я Фоюмчанин ? дааааа)
|
|||||||
| 20.02.2015, 16:09 [ТС] | |||||||
|
А так получаются пустые слова, без фактов. Добавлено через 3 минуты
Вот это факт...
0
|
|||||||
|
Почетный модератор
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
|
|
| 20.02.2015, 16:10 | |
|
0
|
|
|
Я Фоюмчанин ? дааааа)
|
||
| 20.02.2015, 21:31 [ТС] | ||
|
SatanaXIII, я читал, проверки у меня есть. я уменьшил количество прорисовок, конечно же я проверяю положение и так далее, конечно же я проверяю изменился ли статус спички или квадрат в котором она располагается, что бы не перерисовывать когда спичка на одном месте.
Как на Image рисовать в каком то определенном месте изображение я так и не понял, но смысл того, что вы предлагали я понял. Не по теме: я вроде не грубил, не на что обижаться. Добавлено через 5 часов 9 минут Т.е. Вы имели ввиду, что можно 1 раз ужать изображение до какого то размера и потом его просто прорисовать уже сжатое? и производить масштабирование изображения только при изменении размеров квадратов? Как же тогда в TPNGGraphic ужать изображение? Нужно создать битмап нужных размеров - прорисовать в него Stretch спичку и присвоить это непосредственно спичке?
0
|
||
|
Я Фоюмчанин ? дааааа)
|
||||||
| 20.02.2015, 22:36 [ТС] | ||||||
|
А как это реализовать?
Вот загрузил я изображение.
0
|
||||||
|
0 / 0 / 0
Регистрация: 06.05.2014
Сообщений: 7
|
|
| 07.04.2015, 10:18 | |
|
здравствуйте, у меня такая проблема, мне навязали преподы курсовую со спичками в котором должно быть 30 уровней, не подскажите как сохранять уровни и как их реализовать изначально чтоб не заносить спички а менять местами с помощью мышки у меня есть форма с кнопками для открытия других форм
0
|
|
|
0 / 0 / 0
Регистрация: 24.12.2014
Сообщений: 3
|
|
| 27.12.2016, 15:30 | |
|
Добрый день.
Я можно увидеть исходник, того, что у Вас получилось
0
|
|
|
0 / 0 / 0
Регистрация: 24.12.2014
Сообщений: 3
|
|
| 28.12.2016, 15:16 | |
|
Жаль
0
|
|
| 28.12.2016, 15:16 | |
|
Структура приложения Структура приложения Структура приложения Структура приложения ООП Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Кредитный калькулятор
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) в массовой культуре принято понимать. . .
|