0
from turtle import *
from random import randint
speed("fastest")

pendown()
goto(200, 0)
goto(200, 200)
goto(0, 200)
goto(0,0)
goto(200,200)


area_size = 800 
max_coord = area_size / 2

num_dots = 300 

setup(area_size, area_size)

for _ in range(num_dots):

    dots_pos_x = randint(-max_coord, max_coord)
    dots_pos_y = randint(-max_coord, max_coord);

if dots_pos_y > dots_pos_x and dots_pos_y <= 200:
    elif dots_pos_y <= dots_pos_x <= 200:
    else:

hideturtle()
done()

好的,所以这段代码绘制了一个正方形,用一条线将它分成两个相等的三角形,然后它在屏幕上随机生成 300 个点。我真正想知道的是我怎样才能让落在广场一半的点变成红色,当它们落在广场的另一半时,我希望它们变成蓝色。那些没有落在盒子里的会保持黑色吗?

任何帮助,将不胜感激。

4

1 回答 1

0

我想如果您的正方形是矩形,它将具有以下属性:

X = 0
Y = 0
Width = 200
Height = 200

这条线将由这两点组成:

A(0,0)
B(200,200)

假设 X,Y 坐标从左上角开始,则:

if dots_pos_y > dots_pos_x and dots_pos_y <= 200:

     # Dot landed on the LOWER half of the square

elif dots_pos_y <= dots_pos_x and dots_pos_x <= 200:

     # Dot landed on the UPPER half of the square

else:
     # Dot DID NOT land on the square
于 2013-08-12T23:58:15.997 回答