VB使图像能按任意角度进行顺时针或逆时针的旋转

来源:百度知道 编辑:UC知道 时间:2024/05/31 14:51:50
跪求。。。最好有制作过程谢啦

分太少Option Explicit
Const Pi = 3.14

Private Sub Command1_Click()
Dim x As Integer, y As Integer '点在Picture1中的坐标
Dim X1 As Integer, Y1 As Integer '过渡坐标
Dim X2 As Double, Y2 As Double '过渡坐标
Dim X3 As Double, Y3 As Double '点经过旋转后在Picture2中的坐标
Dim angle As Double '旋转的角度
Dim radian As Double '旋转的弧度

angle = Text1.Text
'获得旋转的角度
radian = angle * Pi / 180
'获得旋转的弧度
Picture2.Cls
For x = 0 To Picture1.Width
For y = 0 To Picture1.Height
X1 = x - Picture1.Width \ 2
Y1 = y - Picture1.Height \ 2
'将坐标轴原点移动到Picture1的中心后原来坐标为(x,y)
'的点的新坐标为(X1,Y1)
X2 = X1 * Cos(radian) + Y1 * Sin(radian)
'获得在更改坐标原点后旋转后该点的X坐标
Y2 = Y1 * Cos(radian) - X1 * Sin(radian)