from turtle import *
from math import *
from random import *
def AddC(c,Nc,L,H): # 随机添加坐标
for k in Nc:
d=sqrt((c[0]-k[0])*(c[0]-k[0])+(c[1]-k[1])*(c[1]-k[1]))
if d<c[2]+k[2]: #半径重叠
return 0
if abs(c[0])+c[2]>L/2 or abs(c[1])+c[2]>H/2:#判断是否超过图形边界
return 0
return 1
def creat(N,L,H,Nc): # 创建圆坐标系
for i in range (N):
g=0
while g==0:
c=[]
x=randint(-L/2,L/2)
y=randint(-H/2,H/2)
r=randint(2,20) #产生2-20半径的圆
c.append(x)
c.append(y)
c.append(r)
g=AddC(c,Nc,L,H)
Nc.append(c)
print(Nc)
return Nc,g
def res(Nc): # 绘制每个圆
for
python小项目实战:类定义函数 随机画圆
最新推荐文章于 2023-09-28 16:57:25 发布