This example will show you how to rotate pixel with delphi:
screenshot :

geser sudut : degree
jari2i : diameter
posBundel : position of circle (edge)
code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| // menghitung posisi baru dari sebuah titikProcedure RotateXY(vCenterX, vCenterY, OldX, OldY, Derajat:Integer; var NewX, NewY:integer);var radians, CosX, SinY, x,y: double;begin radians := derajat * pi / 180; CosX := cos(radians); SinY := sin(radians); X := OldX - vCenterX; y := OldY - vCenterY; NewX := round((x * CosX) - (y * SinY) + vCenterX); NewY := round((x * SinY) + (y * CosX) + vCenterY);end; |
parameter :
- vCenterX, vCenterY - the midpoint (center) as a reference point
- OldX, OldY - point will be rotated to a new point
- Derajat - angle shift
- NewX, NewY - new point after the shift (result).
example download here :
pass: d-pranita.net
Post a Comment