Вверх ↑
Этот топик читают: Гость
Ответов: 16884
Рейтинг: 1239
#16: 2010-09-09 18:00:02 ЛС | профиль | цитата
Dilma, вопрос можно?
А это не минусы ?
1. Нужно точно рассчитывать значения для каждого If (без калькулятора - никуда)
2. таймер, счетчик и вся цепочка If-ов "крутится" всё время.
3. GE_GameTick выдаёт событие NULL и если нужно посчитать эти NULL опять нужен счетчик
4. If-ы должны быть расположены в порядке возрастания значений Op2. И если первый этап анимации самый "длинный" возникает вопрос : Кто виноват и что делать?

Ещё раз повторюсь - решение проги petrocan "День программиста" :
Tad писал(а):
Хотелось бы увидеть такую-же понятную на одном таймере, одном счетчике и If_else - ах (или Case).
Может кто возьмется сделать ? (Для интереса)


или объявите Конкурс на мои 500h на лучшее решение "Дня программиста"


карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 1379
Рейтинг: 86
#17: 2010-09-09 19:11:48 ЛС | профиль | цитата
Прикреплена третья версия схемы про День программиста. Просто немного подчистил
карма: 0

0
Ответов: 16884
Рейтинг: 1239
#18: 2010-09-09 19:23:30 ЛС | профиль | цитата
petrocan, а сюда смотрел ? На 20 компонент меньше
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
файлы: 1Деньпрограммиста4.sha [6.2KB] [213]
Ответов: 1379
Рейтинг: 86
#19: 2010-09-09 19:30:55 ЛС | профиль | цитата
Tad, прикольно, но: я сначала не понял в чем подвох, пока не запустил...
1) нет трех точек после каждой строки
2) Мигание надписи в конце неправильное
3) Зачем каждой надписи устанавливать цвет фона перед миганием, когда достаточно установить цвет по-умолчанию, а в тот момент подавать только фоновый цвет на форму.
4) +схема получилась меньше за счет оптимизации связей
карма: 0

0
Ответов: 1376
Рейтинг: 197
#20: 2010-09-09 19:31:49 ЛС | профиль | цитата
Tad, ещё ArrayRW лишний
карма: 1

1
Голосовали:Tad
Ответов: 1379
Рейтинг: 86
#21: 2010-09-09 19:32:57 ЛС | профиль | цитата
foksov, как это
Пардон, но чем ты собрался с определенной задержкой считывать текст их массива
карма: 0

0
Ответов: 1376
Рейтинг: 197
#22: 2010-09-09 19:38:25 ЛС | профиль | цитата
doGetString есть и с onGetString строку снимай
карма: 1

0
Ответов: 16884
Рейтинг: 1239
#23: 2010-09-09 19:39:01 ЛС | профиль | цитата
petrocan,
1. А зачем они (точки) ?
2. А какое мигание должно быть - я так и не понял
3. Чет я цвет у Label-ей убрал, а потом лень было искать.
4. Схема получилась меньше за счет выбрасывания 20 компонент.
5. В схеме используется всего 9 элементов среды, а у тебя 23.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 1379
Рейтинг: 86
#24: 2010-09-09 19:41:41 ЛС | профиль | цитата
[offtop]foksov, а, ну можно и так [/offtop]
------------ Дoбавленo в 19.41:
Tad,
1) для красоты и некоторой интриги
2) посмотри одну из схем в первом посте - узнаешь (легкое, как будто где-то плохой контакт)
3) бывает
4) я понял, но плюс к этому началась игра связями
карма: 0

0
Ответов: 16884
Рейтинг: 1239
#25: 2010-09-09 19:44:27 ЛС | профиль | цитата
petrocan писал(а):
легкое, как будто где-то плохой контакт
я по первому образованию - инженер-электрик. Плохой контакт видел - подумал, что ты ошибся и устранил.
foksov, умница. +3 от меня.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Администрация
Ответов: 15295
Рейтинг: 1519
#26: 2010-09-09 22:43:35 ЛС | профиль | цитата
Tad писал(а):
Dilma, вопрос можно?
А это не минусы ?

Tad, все очень просто - решение от petrocan и мое отличается только в одном принципиальном моменте - в синхронизации того, что происходит в программе. Все остальное это не более чем флуд по теме. Главную причину, по которой такая синхронизация нужна я уже назвал - это отрисовка при помощи OpenGL к примеру, где всегда есть один и только один таймер(или поток) синхронизирующий отрисовку кадров с их изменением. Менее значимая, но стольже весомая это управление скоростью анимации только по одному параметру. И именно так сделаны все игры и вообще любая нормальная анимация. На таком простом примере пофигу каким образом решать задачу, но практика показывает, что раз опробованные методы масштабируются потом на все подряд без включения головы в работу.

А то, что у нас нет очевидного и простого решения этой задачи говорит не о ее минусах, а об недостатке соответсвующих инструментов. Пункты 1 и 4 я кстате не понял.

Tad писал(а):
или объявите Конкурс на мои 500h на лучшее решение "Дня программиста"

конкурс объявлять не будем, потому что это прописная истина придуманная не мною.
карма: 27
0
Разработчик
Ответов: 26163
Рейтинг: 2127
#27: 2010-09-09 22:47:17 ЛС | профиль | цитата
А вот так нельзя сделать таймер с универсальными делителями Подобный таймер я уже несколько лет применяю в действующей задаче

code_20512.txt

ListBox там для наглядности
карма: 22

0
файлы: 1code_20512.txt [2.3KB] [185]
Администрация
Ответов: 15295
Рейтинг: 1519
#28: 2010-09-09 23:25:44 ЛС | профиль | цитата
скорее как-то так:
code_20514.txt

карма: 27
0
файлы: 1code_20514.txt [1.5KB] [351]
Разработчик
Ответов: 26163
Рейтинг: 2127
#29: 2010-09-09 23:34:16 ЛС | профиль | цитата
Dilma писал(а):
скорее как-то так

Это похоже на последовательный алгоритм, следующий таймер не включится, пока не кончится первый. У меня немного другой принцип, если временем опроса пренебречь, то получится параллельный алгоритм
карма: 22

0
Администрация
Ответов: 15295
Рейтинг: 1519
#30: 2010-09-09 23:48:44 ЛС | профиль | цитата
nesco писал(а):
Это похоже на последовательный алгоритм, следующий таймер не включится, пока не кончится первый

так и есть.
карма: 27
0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)