我可以在我的圈子内产生积分吗?
Can I generate points inside my circle?
有没有办法在海龟图形中的圆圈内生成点(点)?
我试图在我的圈子内产生 10 个点。我的代码包括使用模块中的函数。我正在尝试使用 "def" 函数来完成这个程序。到目前为止,我知道我需要使用 while 和 if 语句,我需要使用 "from random import randint",仅此而已。我写了部分代码,但我不知道这是否正确。这是代码:
def randomDotInCircle():
while _in range(10):
dots_pos_x = randint(25, 75)
dots_pos_y = randint(-37, 37)
if (dots_pos_x, dots_pos_y) ==
turtle.penup()
turtle.goto(dots_pos_x, dots_pos_y)
turtle.dot(7)
turtle.pendown()
任何有关如何在圆内创建随机点的帮助?我希望圆以 (50, 0) 为中心,半径为 50。
有帮助吗?
我对turtle-graphics一无所知,但这是在圆内生成随机点的方法。
import random
import math
class Point:
def __init__(self, x, y):
self.x = x
self.y = y
def __str__(self):
return str((self.x, self.y))
class Circle:
def __init__(self, origin, radius):
self.origin = origin
self.radius = radius
origin = Point(0, 0)
radius = 50
circle = Circle(origin, radius)
for i in range(0, 10):
p = random.random() * 2 * math.pi
r = circle.radius * math.sqrt(random.random())
x = math.cos(p) * r
y = math.sin(p) * r
print x, y
这里的一般方案是生成一个随机角度 p
,然后将该角度投影出从 0
到 radius
的随机量。这只是在圆内生成随机点的一种方法。
有没有办法在海龟图形中的圆圈内生成点(点)? 我试图在我的圈子内产生 10 个点。我的代码包括使用模块中的函数。我正在尝试使用 "def" 函数来完成这个程序。到目前为止,我知道我需要使用 while 和 if 语句,我需要使用 "from random import randint",仅此而已。我写了部分代码,但我不知道这是否正确。这是代码:
def randomDotInCircle():
while _in range(10):
dots_pos_x = randint(25, 75)
dots_pos_y = randint(-37, 37)
if (dots_pos_x, dots_pos_y) ==
turtle.penup()
turtle.goto(dots_pos_x, dots_pos_y)
turtle.dot(7)
turtle.pendown()
任何有关如何在圆内创建随机点的帮助?我希望圆以 (50, 0) 为中心,半径为 50。 有帮助吗?
我对turtle-graphics一无所知,但这是在圆内生成随机点的方法。
import random
import math
class Point:
def __init__(self, x, y):
self.x = x
self.y = y
def __str__(self):
return str((self.x, self.y))
class Circle:
def __init__(self, origin, radius):
self.origin = origin
self.radius = radius
origin = Point(0, 0)
radius = 50
circle = Circle(origin, radius)
for i in range(0, 10):
p = random.random() * 2 * math.pi
r = circle.radius * math.sqrt(random.random())
x = math.cos(p) * r
y = math.sin(p) * r
print x, y
这里的一般方案是生成一个随机角度 p
,然后将该角度投影出从 0
到 radius
的随机量。这只是在圆内生成随机点的一种方法。