Răsfoiți Sursa

Update bcradialprogressbar.pas

Leandro Diaz 3 ani în urmă
părinte
comite
b8cdff9926
1 a modificat fișierele cu 6 adăugiri și 4 ștergeri
  1. 6 4
      bcradialprogressbar.pas

+ 6 - 4
bcradialprogressbar.pas

@@ -250,8 +250,12 @@ begin
   FreeAndNil(FBitmap);
   FBitmap := TBGRABitmap.Create(Width, Height);
 
+  FBitmap.Canvas2D.resetTransform;
+  FBitmap.Canvas2D.translate(FBitmap.Width/2, FBitmap.Height/2);
+  FBitmap.Canvas2D.rotate(FRotation*Pi/180);
+
   FBitmap.Canvas2D.beginPath;
-  FBitmap.Canvas2D.arc(Width / 2, Height / 2, Height / 2.5, 0, pi * 2, False);
+  FBitmap.Canvas2D.arc(0, 0, Height / 2.5, 0, pi * 2, False);
   FBitmap.Canvas2D.fillStyle(Color);
   FBitmap.Canvas2D.fill;
 
@@ -266,7 +270,7 @@ begin
 
   FBitmap.Canvas2D.beginPath;
   if Value <> MinValue then
-    FBitmap.Canvas2D.arc(Width / 2, Height / 2, Height / 2.5, pi * 1.5,
+    FBitmap.Canvas2D.arc(0, 0, Height / 2.5, pi * 1.5,
       (pi * 1.5) + ((pi * 2) * Value / MaxValue), False);
   FBitmap.Canvas2D.fillStyle(BGRAPixelTransparent);
   FBitmap.Canvas2D.fill;
@@ -289,8 +293,6 @@ begin
     FBitmap.PutImage(0, 0, textBmp, dmDrawWithTransparency);
     textBmp.Free;
   end;
-
-  BGRAReplace(FBitmap, FBitmap.FilterRotate(PointF(FBitmap.Width / 2, FBitmap.Height / 2), FRotation));
 end;
 
 procedure TBCRadialProgressBar.SetColor(Value: TColor);