Hip-Hop.Ru - Центральный сайт о Хип Хоп культуре в Рунете

Компьютеры и Интернет
  Hip-Hop.Ru Форум Пользователи Социальные группы Сообщения за день Баня Поиск Сообщения за день Все разделы прочитаны
слушатель
Аватар для kr1x
Сообщения: 3,603
Регистрация: 07.06.2009
Откуда: Украина
Старый пост, нажмите что бы добавить к себе блог 26 декабря 2011, 14:57
ВКонтакте
  #1776 (ПС)
немножко юморка подсыплю
Показать скрытый текст

offline
Ответить с цитированием
pak
Аватар для diskursmonger
Сообщения: 9,041
Регистрация: 14.04.2003
Старый пост, нажмите что бы добавить к себе блог 26 декабря 2011, 15:01
  #1777 (ПС)
вот с этого угарел недавно


offline
Ответить с цитированием
ё, Сашечка Бух
Аватар для зулусик просто
Сообщения: 1,743
Регистрация: 26.12.2007
Откуда: картофельная афроамерика
Старый пост, нажмите что бы добавить к себе блог 26 декабря 2011, 16:00
  #1778 (ПС)
-Цитата от frolkin Посмотреть сообщение
вот с этого угарел недавно

тоже нормально


будь тру, ёпта

offline
Ответить с цитированием
секси-ботан
Аватар для fortran
Сообщения: 138
Регистрация: 15.12.2011
Старый пост, нажмите что бы добавить к себе блог 26 декабря 2011, 16:11
  #1779 (ПС)
Кто-нибудь сталкивался с реализацией изменяющейся плоскости/фигуры в трехмерном пространстве в VisIt?
Нужно со считалки, написанной на с++ передать массив в VisIt, который изменяется со временем, т.е. за единицу времени передаем по массиву. (VisIt 2.4.0, OS Windows XP)

offline
Ответить с цитированием
Сообщения: 1,602
Регистрация: 05.10.2009
Старый пост, нажмите что бы добавить к себе блог 26 декабря 2011, 17:08
Домашняя страница
  #1780 (ПС)
-Цитата от Meteraise Посмотреть сообщение
luimorte, там не через for надо, а через do while, он найдёт все максимальные
ну я и через for нормально замутил

offline
Ответить с цитированием
КОТ
Аватар для Ридл Гатофель
Сообщения: 5,261
Регистрация: 14.02.2006
Откуда: ДВР
Старый пост, нажмите что бы добавить к себе блог 26 декабря 2011, 17:52
ВКонтакте
  #1781 (ПС)
-Цитата от frolkin Посмотреть сообщение
-Цитата от Ридл Гатофель Посмотреть сообщение
-Цитата от зулусик просто Посмотреть сообщение

думаю, все-таки шар можно сделать отдельным классом. у него будет цвет, положение, передвигаться будет...
хотя, может ты и прав, и всё это можно типо ГРИДОМ сделать и без шаров...
я бы отдельно всё же делал, наверное
Ну если отдельно делать, то будет трудно проверять, стоят ли шары в линию, т.к. хранится они будут тогда получается в списке (TList). А если в матрице, то всё просто.
в дельфи нельзя сделать матрицу объектов? список списков например
-Цитата от зулусик просто Посмотреть сообщение
-Цитата от Ридл Гатофель Посмотреть сообщение
-Цитата от зулусик просто Посмотреть сообщение

думаю, все-таки шар можно сделать отдельным классом. у него будет цвет, положение, передвигаться будет...
хотя, может ты и прав, и всё это можно типо ГРИДОМ сделать и без шаров...
я бы отдельно всё же делал, наверное
Ну если отдельно делать, то будет трудно проверять, стоят ли шары в линию, т.к. хранится они будут тогда получается в списке (TList). А если в матрице, то всё просто.
ну, "главное" поле игры содержит в себе матрицу шаров
товарищ frolkin об этом как раз и сказал вроде

Можно, но тогда нахуя класс? Если в TField'е они хранятся в матрице и координаты матрицы (индексы т.е.) уже служат как координаты в самом поле, то нахуя там объект хранить с этими же координатами?
Вполне достаточно в матрице просто цвета хранить или, как я уже писал, значение перечисляемого типа, в случае, если там у каждого шара своя картинка.

offline
Ответить с цитированием
pak
Аватар для diskursmonger
Сообщения: 9,041
Регистрация: 14.04.2003
Старый пост, нажмите что бы добавить к себе блог 26 декабря 2011, 18:26
  #1782 (ПС)
ну если шарик имеет только свойство цвет, тогда да - класс не нужен.
просто опыт показывает, что такие сущности по ходу роста программы нарастают свойствами и параметрами.

offline
Ответить с цитированием
КОТ
Аватар для Ридл Гатофель
Сообщения: 5,261
Регистрация: 14.02.2006
Откуда: ДВР
Старый пост, нажмите что бы добавить к себе блог 26 декабря 2011, 18:37
ВКонтакте
  #1783 (ПС)
-Цитата от frolkin Посмотреть сообщение
ну если шарик имеет только свойство цвет, тогда да - класс не нужен.
просто опыт показывает, что такие сущности по ходу роста программы нарастают свойствами и параметрами.
Ну шарики этот как бы олдовая игра и там обрастать нечему, плюс он для универа делает). Ну и к тому же методов у шара скорее всего точняк не будет, так что если нужны свойства, то лучше использовать record'ы.

Добавлено через 3 минуты 54 секунды
Хотя, если делать с анимацией, то методы могут понадобиться для переключения кадра например. Но, в любом случае, координаты там хранить нехуя. Даже если они и нужны, то лучше делать через метод GetPosition: TPoint, который будет пробегать по массиву у TField'а сравнивая каждый элемент с этой хуйнёй и когда они совпадут, возвращать координаты массива. ЧТобы внезапно не вышло хуйни, когда в шаре координаты переписал, а в массиве переместить забыл.

Добавлено через 5 минут 48 секунд
Хотя, с другой стороны, может лучше и в списке все шары хранить, и уже при проверке на готовые линии генерировать временную матрицу, по которой проверять.

offline
Ответить с цитированием
pak
Аватар для diskursmonger
Сообщения: 9,041
Регистрация: 14.04.2003
Старый пост, нажмите что бы добавить к себе блог 26 декабря 2011, 19:26
  #1784 (ПС)
Ты имеешь ввиду координаты шара в матрице или на экране?
Для анимации удобно хранить второе. А сами шары в списке списков.


хотя я не знаю какая система рисования в дельфи...
рассуждаю с точки зрения явера))

Добавлено через 1 минуту 59 секунд
-Цитата от зулусик просто Посмотреть сообщение
-Цитата от frolkin Посмотреть сообщение
вот с этого угарел недавно

тоже нормально


будь тру, ёпта
ну тут спорно

offline
Ответить с цитированием
КОТ
Аватар для Ридл Гатофель
Сообщения: 5,261
Регистрация: 14.02.2006
Откуда: ДВР
Старый пост, нажмите что бы добавить к себе блог 26 декабря 2011, 19:52
ВКонтакте
  #1785 (ПС)
-Цитата от frolkin Посмотреть сообщение
Ты имеешь ввиду координаты шара в матрице или на экране?
Для анимации удобно хранить второе. А сами шары в списке списков.


хотя я не знаю какая система рисования в дельфи...
рассуждаю с точки зрения явера))

Добавлено через 1 минуту 59 секунд
-Цитата от зулусик просто Посмотреть сообщение
-Цитата от frolkin Посмотреть сообщение
вот с этого угарел недавно

тоже нормально


будь тру, ёпта
ну тут спорно
Координаты шара на экране не надо хранить вовсе, они вычисляются исходя из координатов в сетке. А анимация происходит следующим образом: стоит таймер, который вызывается с каким-то интервалом. Ну и в нём вызывается TField.Draw, где в цилке идёт проход по шарам, у шаров хранится номер кадра, который и отрисовывается, после чего в таймере увеличивается на единицу, если номер кадра больше количества, то номер обнуляется и анимация идёт с начала.

offline
Ответить с цитированием
рюкзак фо лайф
Аватар для Stupid Monkey
Сообщения: 2,084
Регистрация: 08.09.2008
Старый пост, нажмите что бы добавить к себе блог 26 декабря 2011, 20:03
  #1786 (ПС)
Цискари здесь есть?)

offline
Ответить с цитированием
ё, Сашечка Бух
Аватар для зулусик просто
Сообщения: 1,743
Регистрация: 26.12.2007
Откуда: картофельная афроамерика
Старый пост, нажмите что бы добавить к себе блог 26 декабря 2011, 20:13
  #1787 (ПС)
-Цитата от frolkin Посмотреть сообщение
Ты имеешь ввиду координаты шара в матрице или на экране?
Для анимации удобно хранить второе. А сами шары в списке списков.


хотя я не знаю какая система рисования в дельфи...
рассуждаю с точки зрения явера))

Добавлено через 1 минуту 59 секунд
-Цитата от зулусик просто Посмотреть сообщение
-Цитата от frolkin Посмотреть сообщение
вот с этого угарел недавно

тоже нормально


будь тру, ёпта
ну тут спорно
а че спорно? только асм, только олдскул

-Цитата от Ридл Гатофель Посмотреть сообщение
-Цитата от frolkin Посмотреть сообщение
Ты имеешь ввиду координаты шара в матрице или на экране?
Для анимации удобно хранить второе. А сами шары в списке списков.


хотя я не знаю какая система рисования в дельфи...
рассуждаю с точки зрения явера))

Добавлено через 1 минуту 59 секунд
-Цитата от зулусик просто Посмотреть сообщение

тоже нормально


будь тру, ёпта
ну тут спорно
Координаты шара на экране не надо хранить вовсе, они вычисляются исходя из координатов в сетке. А анимация происходит следующим образом: стоит таймер, который вызывается с каким-то интервалом. Ну и в нём вызывается TField.Draw, где в цилке идёт проход по шарам, у шаров хранится номер кадра, который и отрисовывается, после чего в таймере увеличивается на единицу, если номер кадра больше количества, то номер обнуляется и анимация идёт с начала.
поясни вот это

offline
Ответить с цитированием
КОТ
Аватар для Ридл Гатофель
Сообщения: 5,261
Регистрация: 14.02.2006
Откуда: ДВР
Старый пост, нажмите что бы добавить к себе блог 26 декабря 2011, 20:35
ВКонтакте
  #1788 (ПС)
-Цитата от зулусик просто Посмотреть сообщение
-Цитата от frolkin Посмотреть сообщение
Ты имеешь ввиду координаты шара в матрице или на экране?
Для анимации удобно хранить второе. А сами шары в списке списков.


хотя я не знаю какая система рисования в дельфи...
рассуждаю с точки зрения явера))

Добавлено через 1 минуту 59 секунд
-Цитата от зулусик просто Посмотреть сообщение

тоже нормально


будь тру, ёпта
ну тут спорно
а че спорно? только асм, только олдскул

-Цитата от Ридл Гатофель Посмотреть сообщение
-Цитата от frolkin Посмотреть сообщение
Ты имеешь ввиду координаты шара в матрице или на экране?
Для анимации удобно хранить второе. А сами шары в списке списков.


хотя я не знаю какая система рисования в дельфи...
рассуждаю с точки зрения явера))

Добавлено через 1 минуту 59 секунд


ну тут спорно
Координаты шара на экране не надо хранить вовсе, они вычисляются исходя из координатов в сетке. А анимация происходит следующим образом: стоит таймер, который вызывается с каким-то интервалом. Ну и в нём вызывается TField.Draw, где в цилке идёт проход по шарам, у шаров хранится номер кадра, который и отрисовывается, после чего в таймере увеличивается на единицу, если номер кадра больше количества, то номер обнуляется и анимация идёт с начала.
поясни вот это
Анимация спрайтовая. Вот шар
TBall = class
Frame: Integer; - Текущий кадр анимации
Frames: Integer; - Количество кадров анимации
Animation: Hz; - ссылка на объект, в котором хранятся сами изображения
procedure Animate; - переключается на следующий кадр. Т.е. Inc(Frame); If (Frame > Frames) then Frame := 0;
procedure Draw(x, y: Integer); Рисует Animation[Frame] в точке x,y
end;

По таймеру происходит следующее:
TField.Animate (анимация всего поля)
begin
for i := 0 to ColCount - 1 do
for j := 0 to RowCOunt - 1 do
if Assigned(Balls[i][j]) then Balls[i][j].Animate; - анимируем все шары
end;

TField.Draw;
begin
рисуем само поле на канве, т.е. хуячим сетку
for i := 0 to ColCount - 1 do
for j := 0 to RowCOunt - 1 do
if Assigned(Balls[i][j]) then Balls[i][j].Draw(i*на какой-то отступ, j * на какой-то отступ);
end;

offline
Ответить с цитированием
pak
Аватар для diskursmonger
Сообщения: 9,041
Регистрация: 14.04.2003
Старый пост, нажмите что бы добавить к себе блог 26 декабря 2011, 20:56
  #1789 (ПС)
-Цитата от Ридл Гатофель Посмотреть сообщение
-Цитата от frolkin Посмотреть сообщение
Ты имеешь ввиду координаты шара в матрице или на экране?
Для анимации удобно хранить второе. А сами шары в списке списков.


хотя я не знаю какая система рисования в дельфи...
рассуждаю с точки зрения явера))

Добавлено через 1 минуту 59 секунд
-Цитата от зулусик просто Посмотреть сообщение

тоже нормально


будь тру, ёпта
ну тут спорно
Координаты шара на экране не надо хранить вовсе, они вычисляются исходя из координатов в сетке. А анимация происходит следующим образом: стоит таймер, который вызывается с каким-то интервалом. Ну и в нём вызывается TField.Draw, где в цилке идёт проход по шарам, у шаров хранится номер кадра, который и отрисовывается, после чего в таймере увеличивается на единицу, если номер кадра больше количества, то номер обнуляется и анимация идёт с начала.
при удалении набора шаров на их места падают верхние
для этого нужны координаты

Добавлено через 7 минут 36 секунд
-Цитата от зулусик просто Посмотреть сообщение
-Цитата от frolkin Посмотреть сообщение
Ты имеешь ввиду координаты шара в матрице или на экране?
Для анимации удобно хранить второе. А сами шары в списке списков.


хотя я не знаю какая система рисования в дельфи...
рассуждаю с точки зрения явера))

Добавлено через 1 минуту 59 секунд
-Цитата от зулусик просто Посмотреть сообщение

тоже нормально


будь тру, ёпта
ну тут спорно
а че спорно? только асм, только олдскул
даже в асме использование goto - очень плохой стиль

offline
Ответить с цитированием
КОТ
Аватар для Ридл Гатофель
Сообщения: 5,261
Регистрация: 14.02.2006
Откуда: ДВР
Старый пост, нажмите что бы добавить к себе блог 26 декабря 2011, 21:14
ВКонтакте
  #1790 (ПС)
-Цитата от frolkin Посмотреть сообщение
-Цитата от Ридл Гатофель Посмотреть сообщение
-Цитата от frolkin Посмотреть сообщение
Ты имеешь ввиду координаты шара в матрице или на экране?
Для анимации удобно хранить второе. А сами шары в списке списков.


хотя я не знаю какая система рисования в дельфи...
рассуждаю с точки зрения явера))

Добавлено через 1 минуту 59 секунд


ну тут спорно
Координаты шара на экране не надо хранить вовсе, они вычисляются исходя из координатов в сетке. А анимация происходит следующим образом: стоит таймер, который вызывается с каким-то интервалом. Ну и в нём вызывается TField.Draw, где в цилке идёт проход по шарам, у шаров хранится номер кадра, который и отрисовывается, после чего в таймере увеличивается на единицу, если номер кадра больше количества, то номер обнуляется и анимация идёт с начала.
при удалении набора шаров на их места падают верхние
для этого нужны координаты

Добавлено через 7 минут 36 секунд
-Цитата от зулусик просто Посмотреть сообщение
-Цитата от frolkin Посмотреть сообщение
Ты имеешь ввиду координаты шара в матрице или на экране?
Для анимации удобно хранить второе. А сами шары в списке списков.


хотя я не знаю какая система рисования в дельфи...
рассуждаю с точки зрения явера))

Добавлено через 1 минуту 59 секунд


ну тут спорно
а че спорно? только асм, только олдскул
даже в асме использование goto - очень плохой стиль
Чего?) Либо я тебя неправильно понял, либо ты чё-то с тетрисом путаешь).

offline
Ответить с цитированием
pak
Аватар для diskursmonger
Сообщения: 9,041
Регистрация: 14.04.2003
Старый пост, нажмите что бы добавить к себе блог 26 декабря 2011, 21:22
  #1791 (ПС)
-Цитата от Ридл Гатофель Посмотреть сообщение
-Цитата от frolkin Посмотреть сообщение
-Цитата от Ридл Гатофель Посмотреть сообщение

Координаты шара на экране не надо хранить вовсе, они вычисляются исходя из координатов в сетке. А анимация происходит следующим образом: стоит таймер, который вызывается с каким-то интервалом. Ну и в нём вызывается TField.Draw, где в цилке идёт проход по шарам, у шаров хранится номер кадра, который и отрисовывается, после чего в таймере увеличивается на единицу, если номер кадра больше количества, то номер обнуляется и анимация идёт с начала.
при удалении набора шаров на их места падают верхние
для этого нужны координаты

Добавлено через 7 минут 36 секунд
-Цитата от зулусик просто Посмотреть сообщение

а че спорно? только асм, только олдскул
даже в асме использование goto - очень плохой стиль
Чего?) Либо я тебя неправильно понял, либо ты чё-то с тетрисом путаешь).
наверное я думаю на другие lines... не помню как называются))))
там где вся матрица заполнена шариками и можно поменять местами два ближайших
собрав в линию несколько шаров одинакового цвета (минимум 3 вроде) они исчезают и на их места падают верхние

offline
Ответить с цитированием
КОТ
Аватар для Ридл Гатофель
Сообщения: 5,261
Регистрация: 14.02.2006
Откуда: ДВР
Старый пост, нажмите что бы добавить к себе блог 26 декабря 2011, 22:55
ВКонтакте
  #1792 (ПС)
-Цитата от frolkin Посмотреть сообщение
-Цитата от Ридл Гатофель Посмотреть сообщение
-Цитата от frolkin Посмотреть сообщение

при удалении набора шаров на их места падают верхние
для этого нужны координаты

Добавлено через 7 минут 36 секунд


даже в асме использование goto - очень плохой стиль
Чего?) Либо я тебя неправильно понял, либо ты чё-то с тетрисом путаешь).
наверное я думаю на другие lines... не помню как называются))))
там где вся матрица заполнена шариками и можно поменять местами два ближайших
собрав в линию несколько шаров одинакового цвета (минимум 3 вроде) они исчезают и на их места падают верхние
Не, здесь речь про такого плану шарики:

offline
Ответить с цитированием
pak
Аватар для diskursmonger
Сообщения: 9,041
Регистрация: 14.04.2003
Старый пост, нажмите что бы добавить к себе блог 26 декабря 2011, 23:45
  #1793 (ПС)
ага уже понял)
тогда да - всё просто

offline
Ответить с цитированием
true rap
Аватар для Владик 2Ville
Сообщения: 7,370
Регистрация: 09.09.2009
Откуда: Курск / Оренбург
Старый пост, нажмите что бы добавить к себе блог 29 декабря 2011, 09:21
Домашняя страница Отправить сообщение через twitter для Владик 2Ville
  #1794 (ПС)
пиздец.
что-то хуйня какая.

В ксс-нике везде пропписано 330пх и 110пх (ибо 3 элемента, что в сумме дают 330 где надо, есличо)
и все равно, блять, отображается как 300 пх

блять, а проблема была в подключенном .js



Последний раз редактировалось Владик 2Ville, 29 декабря 2011 в 09:38.
offline
Ответить с цитированием
ё, Сашечка Бух
Аватар для зулусик просто
Сообщения: 1,743
Регистрация: 26.12.2007
Откуда: картофельная афроамерика
Старый пост, нажмите что бы добавить к себе блог 29 декабря 2011, 15:22
  #1795 (ПС)
-Цитата от Ридл Гатофель Посмотреть сообщение
-Цитата от зулусик просто Посмотреть сообщение
-Цитата от frolkin Посмотреть сообщение
Ты имеешь ввиду координаты шара в матрице или на экране?
Для анимации удобно хранить второе. А сами шары в списке списков.


хотя я не знаю какая система рисования в дельфи...
рассуждаю с точки зрения явера))

Добавлено через 1 минуту 59 секунд


ну тут спорно
а че спорно? только асм, только олдскул

-Цитата от Ридл Гатофель Посмотреть сообщение

Координаты шара на экране не надо хранить вовсе, они вычисляются исходя из координатов в сетке. А анимация происходит следующим образом: стоит таймер, который вызывается с каким-то интервалом. Ну и в нём вызывается TField.Draw, где в цилке идёт проход по шарам, у шаров хранится номер кадра, который и отрисовывается, после чего в таймере увеличивается на единицу, если номер кадра больше количества, то номер обнуляется и анимация идёт с начала.
поясни вот это
Анимация спрайтовая. Вот шар
TBall = class
Frame: Integer; - Текущий кадр анимации
Frames: Integer; - Количество кадров анимации
Animation: Hz; - ссылка на объект, в котором хранятся сами изображения
procedure Animate; - переключается на следующий кадр. Т.е. Inc(Frame); If (Frame > Frames) then Frame := 0;
procedure Draw(x, y: Integer); Рисует Animation[Frame] в точке x,y
end;

По таймеру происходит следующее:
TField.Animate (анимация всего поля)
begin
for i := 0 to ColCount - 1 do
for j := 0 to RowCOunt - 1 do
if Assigned(Balls[i][j]) then Balls[i][j].Animate; - анимируем все шары
end;

TField.Draw;
begin
рисуем само поле на канве, т.е. хуячим сетку
for i := 0 to ColCount - 1 do
for j := 0 to RowCOunt - 1 do
if Assigned(Balls[i][j]) then Balls[i][j].Draw(i*на какой-то отступ, j * на какой-то отступ);
end;
я кстати тоже про другие лайнс подумал. ну да ладно.
сам с анимацией и прочими лэйаутами никогда не работал, поэтому не знаю, может быть так и лучше.
я говорю, с позиции ООП наверно лучше было бы обособить "шар". ну да ладно.

-Цитата от frolkin Посмотреть сообщение
-Цитата от Ридл Гатофель Посмотреть сообщение
-Цитата от frolkin Посмотреть сообщение
Ты имеешь ввиду координаты шара в матрице или на экране?
Для анимации удобно хранить второе. А сами шары в списке списков.


хотя я не знаю какая система рисования в дельфи...
рассуждаю с точки зрения явера))

Добавлено через 1 минуту 59 секунд


ну тут спорно
Координаты шара на экране не надо хранить вовсе, они вычисляются исходя из координатов в сетке. А анимация происходит следующим образом: стоит таймер, который вызывается с каким-то интервалом. Ну и в нём вызывается TField.Draw, где в цилке идёт проход по шарам, у шаров хранится номер кадра, который и отрисовывается, после чего в таймере увеличивается на единицу, если номер кадра больше количества, то номер обнуляется и анимация идёт с начала.
при удалении набора шаров на их места падают верхние
для этого нужны координаты

Добавлено через 7 минут 36 секунд
-Цитата от зулусик просто Посмотреть сообщение
-Цитата от frolkin Посмотреть сообщение
Ты имеешь ввиду координаты шара в матрице или на экране?
Для анимации удобно хранить второе. А сами шары в списке списков.


хотя я не знаю какая система рисования в дельфи...
рассуждаю с точки зрения явера))

Добавлено через 1 минуту 59 секунд


ну тут спорно
а че спорно? только асм, только олдскул
даже в асме использование goto - очень плохой стиль
ну вот уж не знаю...
писал приложение со структурами на асме заебался бы я там без goto

offline
Ответить с цитированием
КОТ
Аватар для Ридл Гатофель
Сообщения: 5,261
Регистрация: 14.02.2006
Откуда: ДВР
Старый пост, нажмите что бы добавить к себе блог 29 декабря 2011, 15:58
ВКонтакте
  #1796 (ПС)
-Цитата от зулусик просто Посмотреть сообщение
-Цитата от Ридл Гатофель Посмотреть сообщение
-Цитата от зулусик просто Посмотреть сообщение

а че спорно? только асм, только олдскул



поясни вот это
Анимация спрайтовая. Вот шар
TBall = class
Frame: Integer; - Текущий кадр анимации
Frames: Integer; - Количество кадров анимации
Animation: Hz; - ссылка на объект, в котором хранятся сами изображения
procedure Animate; - переключается на следующий кадр. Т.е. Inc(Frame); If (Frame > Frames) then Frame := 0;
procedure Draw(x, y: Integer); Рисует Animation[Frame] в точке x,y
end;

По таймеру происходит следующее:
TField.Animate (анимация всего поля)
begin
for i := 0 to ColCount - 1 do
for j := 0 to RowCOunt - 1 do
if Assigned(Balls[i][j]) then Balls[i][j].Animate; - анимируем все шары
end;

TField.Draw;
begin
рисуем само поле на канве, т.е. хуячим сетку
for i := 0 to ColCount - 1 do
for j := 0 to RowCOunt - 1 do
if Assigned(Balls[i][j]) then Balls[i][j].Draw(i*на какой-то отступ, j * на какой-то отступ);
end;
я кстати тоже про другие лайнс подумал. ну да ладно.
сам с анимацией и прочими лэйаутами никогда не работал, поэтому не знаю, может быть так и лучше.
я говорю, с позиции ООП наверно лучше было бы обособить "шар". ну да ладно.
Так а нахуя создавать класс для объекта с одним единственным свойством (если анимации нет)?

offline
Ответить с цитированием
pak
Аватар для diskursmonger
Сообщения: 9,041
Регистрация: 14.04.2003
Старый пост, нажмите что бы добавить к себе блог 29 декабря 2011, 16:08
  #1797 (ПС)
-Цитата от зулусик просто Посмотреть сообщение
-Цитата от Ридл Гатофель Посмотреть сообщение
-Цитата от зулусик просто Посмотреть сообщение

а че спорно? только асм, только олдскул



поясни вот это
Анимация спрайтовая. Вот шар
TBall = class
Frame: Integer; - Текущий кадр анимации
Frames: Integer; - Количество кадров анимации
Animation: Hz; - ссылка на объект, в котором хранятся сами изображения
procedure Animate; - переключается на следующий кадр. Т.е. Inc(Frame); If (Frame > Frames) then Frame := 0;
procedure Draw(x, y: Integer); Рисует Animation[Frame] в точке x,y
end;

По таймеру происходит следующее:
TField.Animate (анимация всего поля)
begin
for i := 0 to ColCount - 1 do
for j := 0 to RowCOunt - 1 do
if Assigned(Balls[i][j]) then Balls[i][j].Animate; - анимируем все шары
end;

TField.Draw;
begin
рисуем само поле на канве, т.е. хуячим сетку
for i := 0 to ColCount - 1 do
for j := 0 to RowCOunt - 1 do
if Assigned(Balls[i][j]) then Balls[i][j].Draw(i*на какой-то отступ, j * на какой-то отступ);
end;
я кстати тоже про другие лайнс подумал. ну да ладно.
сам с анимацией и прочими лэйаутами никогда не работал, поэтому не знаю, может быть так и лучше.
я говорю, с позиции ООП наверно лучше было бы обособить "шар". ну да ладно.

-Цитата от frolkin Посмотреть сообщение
-Цитата от Ридл Гатофель Посмотреть сообщение

Координаты шара на экране не надо хранить вовсе, они вычисляются исходя из координатов в сетке. А анимация происходит следующим образом: стоит таймер, который вызывается с каким-то интервалом. Ну и в нём вызывается TField.Draw, где в цилке идёт проход по шарам, у шаров хранится номер кадра, который и отрисовывается, после чего в таймере увеличивается на единицу, если номер кадра больше количества, то номер обнуляется и анимация идёт с начала.
при удалении набора шаров на их места падают верхние
для этого нужны координаты

Добавлено через 7 минут 36 секунд
-Цитата от зулусик просто Посмотреть сообщение

а че спорно? только асм, только олдскул
даже в асме использование goto - очень плохой стиль
ну вот уж не знаю...
писал приложение со структурами на асме заебался бы я там без goto
goto очень путает код
правильный стиль подразумевает один выход из функции
goto же наоборот - плодит множество выходов

offline
Ответить с цитированием
КОТ
Аватар для Ридл Гатофель
Сообщения: 5,261
Регистрация: 14.02.2006
Откуда: ДВР
Старый пост, нажмите что бы добавить к себе блог 29 декабря 2011, 16:44
ВКонтакте
  #1798 (ПС)
Есть фигура, допустим прямоугольник, и находится она в точке например x=10 y=50, надо её плавно сдвинуть в точку например x=70 и y=60. Как мне рассчитывать промежуточные координаты? Можно конечно сдвигать по x на 6 и по y на 1 от начальной точки (x2-x1=60 и y2-y1=10, 60/10 = 6), но чую это ебанный сопособ. Можно ещё расчитать точки для прямой по Алгоритму брезенхема и по ним двигать, это вполне может выглядеть нормально, но впадлу алгоритм реализовывать . Есть ещё какие-нибудь варианты?

offline
Ответить с цитированием
в Бане
Сообщения: 442
Регистрация: 14.07.2011
Старый пост, нажмите что бы добавить к себе блог 30 декабря 2011, 09:16
  #1799 (ПС)
ребята подскажите програму какуюнить для затирания глаз или лица на видео

offline
Ответить с цитированием
pak
Аватар для diskursmonger
Сообщения: 9,041
Регистрация: 14.04.2003
Старый пост, нажмите что бы добавить к себе блог 30 декабря 2011, 14:56
  #1800 (ПС)
-Цитата от Ридл Гатофель Посмотреть сообщение
Есть фигура, допустим прямоугольник, и находится она в точке например x=10 y=50, надо её плавно сдвинуть в точку например x=70 и y=60. Как мне рассчитывать промежуточные координаты? Можно конечно сдвигать по x на 6 и по y на 1 от начальной точки (x2-x1=60 и y2-y1=10, 60/10 = 6), но чую это ебанный сопособ. Можно ещё расчитать точки для прямой по Алгоритму брезенхема и по ним двигать, это вполне может выглядеть нормально, но впадлу алгоритм реализовывать . Есть ещё какие-нибудь варианты?
да тут мало что придумаешь..
тот способ который ты предложил не сработает, потому Х либо У будет приближаться к нужному значению раньше чем другая координата.
брезенхем вообщем-то и нужен чтобы этот шаг уравнивать

offline
Ответить с цитированием
Ответ
Тэги темы: information, java, php, technology, программирование, Программисты, тусуются, учебники
Здесь присутствуют: 3 (пользователей - 0 , гостей - 3)
 
Опции темы
Похожие темы на: Программисты / Компьютерные техники, которые НИКОГДА не спят! [Беседка]
Тема Автор Раздел Ответов Последнее сообщение
Альбомы, которые вы никогда не удалите из плеера Kr0N Rap, MCing (зарубежный) 212 24 мая 2012
смайлы которые вы никогда не ставили Потняк Безбашенное общение 50 19 февраля 2011
Программисты CMS SLAED запустили профессиональную цмску phemrhigh Интернет-релизы: альбомы, микстейпы, сборники 0 11 февраля 2009
программисты, помогите! girl_from_Russia! Разговоры 29 20 июня 2007
Темы, которые вы никогда не посещаете. Шумный Разговоры 21 24 ноября 2006
Часовой пояс GMT +3, время: 06:29.