import turtle
from sprites import circle_out_tangent,circle_out_random_point
def draw_circle(center,radius):
"""画圆,center:二元组表示的圆心,radius:半径"""
turtle.penup();turtle.goto(center);turtle.fd(radius);turtle.left(90)
turtle.pd();turtle.circle(radius);turtle.pu();turtle.right(90);turtle.bk(radius)
def draw_line(p1,p2):
"""连线,p1,p2是二元组表示的坐标"""
turtle.penup();turtle.goto(p1);turtle.pd();turtle.goto(p2);turtle.penup()
center = (0,0)
radius = 100
# p是圆外的随机一个点
p = circle_out_random_point([center,radius],limits=(2,2)) # 圆外随机取点
# 在以圆心为center,半径为radius的圆上,返回通过圆外p点的两根切线与圆交点坐标A点和B点
A,B = circle_out_tangent([center,radius],p)
draw_circle(center,radius) # 画圆
draw_line(p,A) # 画线段
draw_line(p,B) # 画线段
turtle.done()
|