Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.15;
Скачать: CL | DM;

Вниз

help ...canvas   Найти похожие ветки 

 
walruz ©   (2003-03-15 02:56) [0]

Помогите начинающму!
Если можно то раскожите о канве,что ето такое итд.
Как заставить управлять обьектом по форме? Я делал обычный Timage c помощью left и top ,но это говорят не то=(, говоряят надо форму разбить на кординаты итд . Спосибо!!


 
Mihey   (2003-03-15 16:21) [1]

Действительно, обычный TImage - это не то. Если нужно сделать игрушку, то есть два способа вывода графики. ПредположиМ, нам нужно нарисовать шарик, отбивающийся от стенок. В первом способе мы выведем на экран (на канву формы) этот шарик, а когда он будет двигаться, то мы будем на старое место шарика выводить фон, а потом рисовать шарик на новое метсо. Т.е., старый шарик стирается, в новые координаты выводится новый.

TCanvas - это поверхность объекта, на которой он сам рисуется. Состоит канва из массива пикселей и набора других свойств и методов. Вывод графики обычно производится методом Draw, при этом указываются координаты и какое изображение вообще рисовать. При этом, изображения хранятся в таких случаях в объектах типа TBitMap обычно, так что с TImage мы дела не имеем.

Есть другой способ вывода экрана игры. Мы создаём пустое изображение - буфер. Каждый тик таймера мы рисуем в буфер фон, а потом уже шарик. При этом, стирать ничего не надо - изображение строится полностью по новой. И в конце мы выводим получившийся буфер на экран. При этом, на экран рисуется только буфер, остальные операции по копированию происходят в памяти, а это выигрыш в скорости.

Для работы с канвой используют часто не только стандартные методы канвы, а такие функции, как BitBlt и так далее. Они гораздо быстрее, но накладывают свои ограничения.


 
walruz ©   (2003-03-15 19:50) [2]

Mihey Большое спосбо за столь обширную инфу!!!
Но как мне допустим нарисовать круг который можно будет перемещать по форме(с помощью канвы)? Может приведи пример ,а то так розабратся сложновато=)! Жду помощи!


 
Mihey   (2003-03-15 20:50) [3]

Простенький пример я выложил сюда:

www.hot.ee/mvps4/Demo.rar

Круг можно вывести и чисто средствами канвы, то есть нарисовать его, но я предпочитаю иметь заранее нарисованное изображение круга и выводить его на канву. Это зависит от цели. Если у тебя круг - это только набросок, который должен превратиться в летающую тарелку, например, то так будет, естественно лучше. При выводе использую BitBlt и это ни что иное, как второй из предложенных мною способов.


 
walruz ©   (2003-03-15 22:37) [4]

Большое спосибо!!



Страницы: 1 вся ветка

Текущий архив: 2003.09.15;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.022 c
14-48709
PVOzerski
2003-08-19 11:12
2003.09.15
Какой сотовый телефон выбрать


14-48782
Digitman
2003-08-25 15:52
2003.09.15
Поиск файлов BCPP MSCPP / (во входных форматах LEX и YACC)


3-48401
Anna
2003-08-26 11:36
2003.09.15
Фильтры и диапазоны


1-48619
fool
2003-09-04 13:39
2003.09.15
Контроллер автоматизации, события автоматизации


7-48802
Arm79
2003-06-25 15:19
2003.09.15
Сообщения Windows