From 8b0e9e46c2ee5c4d8c147285605733e1663ce249 Mon Sep 17 00:00:00 2001 From: ronaldhordijk Date: Sat, 2 Apr 2005 06:28:50 +0000 Subject: [PATCH] fixed problem with rotated flames --- 2.10/Source/RenderMM.pas | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/2.10/Source/RenderMM.pas b/2.10/Source/RenderMM.pas index e2327d1..d8b6492 100644 --- a/2.10/Source/RenderMM.pas +++ b/2.10/Source/RenderMM.pas @@ -55,8 +55,8 @@ type filter_width: Integer; filter: array of array of extended; - image_Width: Integer; - image_Height: Integer; + image_Width: Int64; + image_Height: Int64; BucketWidth: Integer; BucketHeight: Integer; BucketSize: Integer; @@ -74,6 +74,7 @@ type bounds: array[0..3] of extended; size: array[0..1] of extended; + FRotationCenter: array[0..1] of extended; ppux, ppuy: extended; nrSlices: int64; Slice: int64; @@ -350,14 +351,14 @@ begin if FStop then Exit; - px := points[i].x - FCP.Center[0]; - py := points[i].y - FCP.Center[1]; + px := points[i].x - FRotationCenter[0]; + py := points[i].y - FRotationCenter[1]; nx := px * ca + py * sa; ny := -px * sa + py * ca; - px := nx + FCP.Center[0] - bx; - py := ny + FCP.Center[1] - by; + px := nx + FRotationCenter[0] - bx; + py := ny + FRotationCenter[1] - by; if ((px < 0) or (px > wx) or (py < 0) or (py > wy)) then @@ -413,7 +414,6 @@ end; procedure TRendererMM64.CreateBMFromBuckets(YOffset: Integer); var i, j: integer; - alpha: double; // r,g,b: double; ai, ri, gi, bi: Integer; @@ -600,6 +600,9 @@ var begin FStop := False; + FRotationCenter[0] := fcp.center[0]; + FRotationCenter[1] := fcp.center[1]; + image_height := fcp.Height; image_Width := fcp.Width; oversample := fcp.spatial_oversample;