Advertisement
Guest User

Untitled

a guest
Apr 21st, 2018
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Delphi 1.67 KB | None | 0 0
  1. program new;
  2. {$I SRL/OSR.simba}
  3.  
  4. var
  5.   bmp: TMufasaBitmap;
  6.   TPA,tmp: TPointArray;
  7.   ATPA: T2DPointArray;
  8.   i,w,h: Int32;
  9. begin
  10.   bmp.Init(client.GetMBitmaps);
  11.   bmp.LoadFromFile('images/example.bmp');
  12.   bmp.FindColors(TPA, 0);
  13.  
  14.   W := bmp.GetWidth;
  15.   H := bmp.GetHeight;
  16.  
  17.   // make room for everything and clear the loaded image
  18.   bmp.SetSize(W*2,H*2);
  19.   bmp.DrawClear($FFFFFF);
  20.  
  21.   // draw the TPA
  22.   BMP.DrawBox(Box(0,0,W-1,33), True, $AAAAAA);
  23.   BMP.DrawSystemText('The TPA','Arial',17,Point(10,5),False,$99);
  24.   bmp.DrawTPA(TPA, 0);
  25.  
  26.   // separating lines
  27.   bmp.LineTo(Point(0,H), Point(W*2-1,H), 255);
  28.   bmp.LineTo(Point(W,0), Point(W,H*2-1), 255);
  29.  
  30.   // draw ToATPA
  31.   ATPA := TPA.ToATPA(20);
  32.   BMP.DrawBox(Box(W+1,0,W*2-1,33), True, $AAAAAA);
  33.   BMP.DrawSystemText('TPA.ToATPA(20)','Arial',17,Point(W+10,5),False,$99);
  34.   for i:=0 to High(ATPA) do
  35.   begin
  36.     ATPA[i].Offset(Point(W,0));
  37.     bmp.DrawTPA(ATPA[i],Random($FFFFFF));
  38.   end;
  39.  
  40.   // draw ClusterTPA
  41.   ATPA := TPA.Cluster(1);
  42.   BMP.DrawBox(Box(0,H+1,W-1,H+33), True, $AAAAAA);
  43.   BMP.DrawSystemText('ClusterTPA(1)','Arial',17,Point(10,H+5),False, $99);
  44.   for i:=0 to High(ATPA) do
  45.   begin
  46.     ATPA[i].Offset(Point(0,H));
  47.     bmp.DrawTPA(ATPA[i],Random($FFFFFF));
  48.   end;
  49.  
  50.   // draw PertitionTPA
  51.   ATPA := PartitionTPA(TPA, 20,20);
  52.   BMP.DrawBox(Box(W+1,H+1,W*2-1,H+33), True, $AAAAAA);
  53.   BMP.DrawSystemText('PartitionTPA(20,20)','Arial',17,Point(W+10,H+5),False, $99);
  54.   for i:=0 to High(ATPA) do
  55.   begin
  56.     ATPA[i].Offset(Point(W,H));
  57.     bmp.DrawTPA(ATPA[i],Random($FFFFFF));
  58.   end;
  59.  
  60.   // half scale debugging
  61.   bmp.ResizeEx(RM_Bilinear, W,H);
  62.   bmp.Debug();
  63.  
  64.  
  65.   bmp.Free();
  66. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement