Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2013.10.20;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.002 c
1-1316694379
samalex2504
2011-09-22 16:26
2013.10.20
В TDateTimePicker автоматический переход от дней к месяцу и году


2-1359124701
pioli
2013-01-25 18:38
2013.10.20
Change wallpaper! Help


2-1359138247
вова
2013-01-25 22:24
2013.10.20
Как проверить существование объекта типа TBitmap


15-1367841718
O'ShinW
2013-05-06 16:01
2013.10.20
Чисто теоретический вопрос на запись в файл в начало со сдвигом


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





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский