Janilabo

Untitled

Sep 12th, 2013
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 2.21 KB | None | 0 0
  1. {$loadlib tpaconvexhull.dll}
  2. {$loadlib pumbaa.dll}
  3.  
  4. {==============================================================================]
  5.   Explanation: Sets points from TPA that are inside bmp as color.
  6. [==============================================================================}
  7. procedure SetPixels(bmp: Integer; TPA: TPointArray; color: Integer);
  8. var
  9.   a, z, w, h: Integer;
  10. begin
  11.   z := High(TPA);
  12.   if (z > -1) then
  13.   begin
  14.     GetBitmapSize(bmp, w, h);
  15.     for a := 0 to z do
  16.       if ((TPA[a].X >= 0) and (TPA[a].Y >= 0) and (TPA[a].X < w) and (TPA[a].Y < h)) then
  17.         FastSetPixel(bmp, TPA[a].X, TPA[a].Y, color);
  18.   end;
  19. end;
  20.  
  21. var
  22.   TPA, p, t: TPointArray;
  23.   bmp, bmp2, i: Integer;
  24.  
  25. begin
  26.   bmp := CreateBitmap(300, 300);
  27.  
  28.   Bmp2 := BitmapFromString(150, 174, 'meJzt1UGO01AQRdGNMGT/O2MNDQiEULqT2P+Vfau+7tUbZhDViZ2PDzMzMzMzs5F9//bj1+hvYb/7Y/F5Bz9/51e1zz3jewB6+wGjeit4kNiockERwUr4FARDBBUvrErwFIqPbWGgoIgl3S/oH2hthYIHOcL/UHuog6CISbWCRyzCl7B9TsHpNRHUcbmbX6QKltdKUMS17kQseRXbQ90ERTxbueALAgUvqpugiAvdg6jgdXUTFHGhboIinu2Gx7Dql2DPaigo4tkaCop4qksfw9rfgz2rp6COp7oI8YpfhT2rraCUx2suKOKRau9cLijlkUYI6vi6qtteLajjiwYJ6vis/KR3Ckr5ZRMFRfw/ikDKqnACHcPw44uYhJ9dxOXwa4u4HH5kKZPww4q4HH5PfLTAYvjdGo42ORp+qM6jcf6G32H6BNps8u0xBfeYgtOn4B5TcIMpuMEUnD4FN5iCG0y+Dabg9Cm4wRScPgU3mILT52M4fQpOn4LTp+D0KTh9BwVFbDsFp++4oIg9p+DoneJTsOHOCorYagt8CrbamqCITbbMJ2KTKTh6IZ+I+BQcvRI+EafbKbgBn4gKOtZOxA3sRNzATsHpdiJuYCfiBnb/wk8xbrTYF+E3GTTa6mn4ZfqPJnoffqK2o2VOhN+q1WiNxfC7NRntEIVfT7g8/JLy5eH3VDAPP6mCefhVdczDT6pjHn5PEfPwe4pYEn5SEUvCrypiSfhhRSwJv62IJeHnVbAk/MgiVoWfWsFLwyFELAm3ELEqXETBPBxFxDwcRcQ8HEXBknAaEUvCdRTMw4FErApnUjAPlxIxD5dSMA/HEjEMlxIxDGdSMA+XEjEMZxIxDDdSMA9nEjEMN1IwDDcSMQwHUjAPNxIxDAdSMAwHUjAMB1IwDzdSMAw3UjAMN1IwD2dSMAxnUjAPl1IwDJdSMA/HUrAqXE3BPBxOvqrk2yD59ki+PRJuj7TbI/m2STgzMzMzMzMzMzMzvJ93rRy3');
  29.   findColorsBitmap(bmp2, tpa, 2366701);
  30.   offsetTPA(tpa, point(50, 50));
  31.  
  32.   t := CopyTPA(TPA);
  33.   SetPixels(bmp, t, 13655361);
  34.   TPAConvexHull(TPA);
  35.   pp_Append(TPA, TPA[0]); // Just to make sure we get it enclosed.. :)
  36.   pp_TPAFromFlexibleLine(TPA, p);
  37.   SetPixels(bmp, p, 255);
  38.   SetPixels(bmp, TPA, 16777215);
  39.   DisplayDebugImgWindow(500, 500);
  40.   DrawBitmapDebugImg(bmp);
  41.  
  42.   DisplayDebugImgWindow(300, 300);
  43.   DrawBitmapDebugImg(bmp);
  44. end.
Advertisement
Add Comment
Please, Sign In to add comment