移植VB維護(hù)程序到mobile下
Dim angleIncrement As Single
angleIncrement = (sweepAngle - startAngle) / 10
Dim angle As Single
angle = startAngle
Dim i As Integer
For i = 0 To 10
xAngle(i) = x + (Math.Cos(angle * (Math.PI / 180)) * (width / 2))
yAngle(i) = y + (Math.Sin(angle * (Math.PI / 180)) * (height / 2))
angle += angleIncrement
Next i
xAngle(11) = x + (Math.Cos(sweepAngle * (Math.PI / 180)) * (width / 2))
yAngle(11) = y + (Math.Sin(sweepAngle * (Math.PI / 180)) * (height / 2))
Dim anglePoints(12) As Point
anglePoints(0) = New Point(x, y)
For i = 0 To 11
anglePoints(i + 1) = New Point(CInt(xAngle(i)), CInt(yAngle(i)))
Next
graphicsObject.DrawPolygon(pen, anglePoints)
End Sub
'=====================================================
'填充弧形
' graphicsObject - Graphics 對象
' solidBrush - 畫刷
' x,y - 弧的圓心
' width - 寬度 (X直徑)
' height - 高度 (Y直徑)
' startAngle - 起始角度
' sweepAngle - 結(jié)束角度
'
Sub fillPie(ByVal graphicsObject As Graphics, ByVal solidBrush As SolidBrush, ByVal x As Integer, ByVal y As Integer, ByVal width As Integer, ByVal height As Integer, ByVal startAngle As Single, ByVal sweepAngle As Single)
Dim xAngle(12) As Single
Dim yAngle(12) As Single
Dim angleIncrement As Single
angleIncrement = (sweepAngle - startAngle) / 10
Dim angle As Single
angle = startAngle
Dim i As Integer
For i = 0 To 10
xAngle(i) = x + (Math.Cos(angle * (Math.PI / 180)) * (width / 2))
yAngle(i) = y + (Math.Sin(angle * (Math.PI / 180)) * (height / 2))
angle += angleIncrement
Next i
xAngle(11) = x + (Math.Cos(sweepAngle * (Math.PI / 180)) * (width / 2))
yAngle(11) = y + (Math.Sin(sweepAngle * (Math.PI / 180)) * (height / 2))
Dim anglePoints(12) As Point
anglePoints(0) = New Point(x, y)
For i = 0 To 11
anglePoints(i + 1) = New Point(CInt(xAngle(i)), CInt(yAngle(i)))
Next
graphicsObject.FillPolygon(solidBrush, anglePoints)
End Sub
評論