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

Вниз

Нарисовать зеркальную картинку.   Найти похожие ветки 

 
Drowsy ©   (2013-01-27 06:59) [0]

есть библиотечная процедура, которая картинку из файла рисует на канве.
параметры картинки (высоту, ширину, точку привязки)  возвращает в Entities.

procedure DrawEntity(CanvasHandle : HDC ; Entities : TEntities;
                               x : real;y : real ;const angle : integer =0);
stdcall; external
"GRAPH_DDL.dll" name
"@DrawEntity$qqspvr8Entitiesddi"; //"@1

Нужно написать процедуру, которая будет выводить на канву картинку ЗЕРКАЛЬНУЮ , той, которую
рисует DrawEntity.
Какой может быть алгоритм?


 
bems ©   (2013-01-27 07:34) [1]

попробуй сделать контексту зеркальный SetWorldTransform


 
MBo ©   (2013-01-27 07:39) [2]

StretchBlt creates a mirror image of a bitmap if the signs of the nWidthSrc and nWidthDest parameters or if the nHeightSrc and nHeightDest parameters differ. If nWidthSrc and nWidthDest have different signs, the function creates a mirror image of the bitmap along the x-axis. If nHeightSrc and nHeightDest have different signs, the function creates a mirror image of the bitmap along the y-axis.

или установить аффинное преобразование с отражением (SetWorldTransform) и отрисовать  картинку любым образом


 
Dimka Maslov ©   (2013-01-27 13:02) [3]

Алгоритм построения зеркальной матрицы не слишком отличается от алгоритма построения зеркального массива.

for i := 0 to Count div 2 - 1 do Swap(Item[i], Item[Count - 1 - i])

при этом в свопе меняются местами не отдельные элементы, а строки или столбцы.


 
antonn ©   (2013-01-27 22:52) [4]

а если доступен canvas, то вообще через copyrect() не заморачиваясь...



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

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

Наверх




Память: 0.47 MB
Время: 0.006 c
11-1248519642
Ruzzz
2009-07-25 15:00
2013.10.20
EditBox, метод Add и св-во Caption


15-1368304204
Юрий
2013-05-12 00:30
2013.10.20
С днем рождения ! 12 мая 2013 воскресенье


2-1359016103
Дмитрий
2013-01-24 12:28
2013.10.20
Компиляция программы


2-1358947313
vladimir2000
2013-01-23 17:21
2013.10.20
Как преобразовать rtf в unicode


15-1368257038
Писатель
2013-05-11 11:23
2013.10.20
Компиляцию под Андроид на Лазарус