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

Вниз

Алгоритм нарезания паззлов из картинки   Найти похожие ветки 

 
wl   (2004-12-09 16:38) [0]

никому не попадалось? что-то поиском разучился пользоваться


 
dRake   (2004-12-09 17:34) [1]

Мда....

Берем картинку и нарезаем из нее N кусков -



VAR
 
 Source : TBitmap;
 Puzzle : array [1..N, 1..N] of TBitmap;



Инициализируем графику


PROCEDURE InitShit;
VAR
 i, j : integer;

BEGIN;

 Source := TBitmap.Create;
 Source.LoadFromFile("Blablabla.bmp");

 for i := 1 to N do
   begin;
     for j := 1 to N do
       begin;
     
         Puzzle[i,j] := TBitmap.Create;
         Puzzle[i, j].Width  := Round(Source.Width/N);
         Puzzle[i, j].Height := Round(Source.Height/N);      

       end;
   end;

END;


Нарезаем кртинку



PROCEDURE DoSomeStuff;

VAR
 i, j : integer;

BEGIN;

 for i := 1 to N do
   begin;
     for j := 1 to N do
       begin;

       Puzzle[i, j].Canvas.CopyRect(
         Rect(0, 0, Puzzle[i, j].Width, Puzzle[i, j].Height),
         Source.Canvas,
         Rect((i - 1)*Puzzle[i, j].Width,
              (j - 1)*Puzzle[i, j].Height,
              Puzzle[i, j].Width,
              Puzzle[i, j].Height));  

       end;
   end;

END;



Все, получаешь двухмерный массив Puzzle c кусками твоей картинки


 
ninja ©   (2004-12-09 18:08) [2]

дык пазлы вроде не кавадратами нарезаются, а красивыми рюшечками.. тогда нужно будет определить их форму, и в цикле их все посувать в массив (Форм кста несколько будет. Рекомендую посмотреть, как устроены пазлы (в оффлайне)). Копировать части изображения через XOR и AND-маски, ф-ция bitblt.
Вроде, всё.


 
wl   (2004-12-09 21:59) [3]

спасибо...


 
wl   (2004-12-09 22:00) [4]

спасибо...


 
Mihey_temporary ©   (2004-12-09 22:12) [5]


> Берем картинку и нарезаем из нее N кусков -


Так ведь не N, а N^2.


 
dRake   (2004-12-10 13:34) [6]

Mihey_temporary ©   (09.12.04 22:12) [5]

Да N^2 ;)
Хотел поправить да правки нет ;)



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

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

Наверх




Память: 0.48 MB
Время: 0.057 c
14-1108391657
MacroDenS
2005-02-14 17:34
2005.03.06
Загрузочный диск XP


14-1107462722
Тимур
2005-02-03 23:32
2005.03.06
Cd-rom или диски


3-1107345693
slaga
2005-02-02 15:01
2005.03.06
Заполнение DataSet а в два захода.


9-1102102454
Domowoi
2004-12-03 22:34
2005.03.06
Вопрос про Collision


1-1109005778
Igor_thief
2005-02-21 20:09
2005.03.06
Снова про написание вируса (учебного), и снова продолжение темы.