Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.021 c
1-48538
Belka
2003-09-02 11:53
2003.09.15
Програмное переключение ракскладки клавиатуры.


1-48573
denis_ka
2003-09-04 09:46
2003.09.15
Общая


3-48439
alex-ran
2003-08-26 12:07
2003.09.15
Параметрический запрос


14-48708
DeMoN-777
2003-08-28 13:57
2003.09.15
Интересуюсь...


14-48790
Rauf
2003-08-26 03:23
2003.09.15
Помогите, где скачать исходники Quake3 Arena???




   Наверх