visual basic 直线和圆的位置关系

Private Sub Command1_Click()
    Dim radii As Double
    radii = 10
    Circle (70, 70), 10, vbRed
    Line (100, 100)-(190, 90)
    Dim lineDis As Double, lineA As Double, lineB As Double
    lineDis = wss(100, 100, 190, 90)
    lineA = wss(100, 100, 70, 70)
    lineB = wss(190, 90, 70, 70)
    Dim p As Double, lineCen As Double
    p = (lineA + lineB + lineDis) / 2
    lineCen = Sqr(p * (p - lineA) * (p - lineB) * (p - lineDis)) * 2 / lineDis
    If lineCen >= radii Then
        Label1.Caption = "计算结果:相离"
    Else
        Label1.Caption = "计算结果:相交、相切"
    End If
End Sub
Function wss(ox As Double, oy As Double, tx As Double, ty As Double) As Double '求平面空间直线长度
    wss = Sqr(Abs((ox - tx) * (ox - tx) + (oy - ty) * (oy - ty)))
End Function



360截图16280722335450.png


visual basic 直线和圆的位置关系


本站如无特别说明即为原创,转而告知:(http://iwonmo.com/archives/1136.html)

标签: visual basic 6.0, 直线, , 位置关系

添加新评论