圍繞一個小圓畫一圈大圓,為什么當“大圓半徑”太大時,畫出來的圓形失真?
Private Sub Command1_Click()
x = CDbl(x.Text)
y = CDbl(y.Text)
dybj = CDbl(dy.Text)
xybj = CDbl(xy.Text)
For i = 0 To CDbl(xsjd.Text) Step CDbl(fbl.Text)
Pic1.Circle (x + (xybj + dybj) * Cos(i * 0.0174532925199), y + (xybj + dybj) * Sin(i * 0.0174532925199)), dybj
Next i
End Sub
Private Sub Command3_Click()
Pic1.Cls
End Sub
Private Sub Command4_Click()
x = CInt(x.Text)
y = CInt(y.Text)
dybj = CDbl(dy.Text)
xybj = CDbl(xy.Text)
Pic1.Circle (x, y), xybj, QBColor(15)
End Sub
uj5u.com熱心網友回復:
繪圖函式的坐標引數都是Single型別(你可以看一下Circle方法的幫助),按照你圖中的引數計算CSng(5000 + (174999+3000) * cos(0.1 * 0.0174532925199)) = 182998.7
最小精度已經接近整數位了,定位不準導致圓形失真很正常啊。
uj5u.com熱心網友回復:
這個有辦法解決嗎?uj5u.com熱心網友回復:
沒有。大和精細總是矛盾的。限制輸入范圍吧。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/60954.html
標籤:非技術類
