Add random test generator

This commit is contained in:
2024-06-12 23:01:33 +02:00
parent aec9db1d0d
commit 48db1202aa
2 changed files with 15 additions and 8 deletions

23
main.py
View File

@@ -286,8 +286,15 @@ block_list = ["blue_concrete", "red_concrete", "green_concrete",
# p = Polyline((Point2D(-1225, 468), Point2D(-1138, 481),
# Point2D(-1188, 451), Point2D(-1176, 409), Point2D(-1179, 399)))
p = Polyline((Point2D(64, -20), Point2D(48, 32),
Point2D(16, 0), Point2D(0, 0), Point2D(-10, -10)))
w = 1000
n_points = 10
min_val, max_val = -w, w
random_points = [Point2D(random.randint(min_val, max_val), random.randint(
min_val, max_val)) for _ in range(n_points)]
p = Polyline(random_points)
# Point2D(-1156, 378), Point2D(-1220, 359), Point2D(-1265, 290)
# print(p.alpha_radii)
@@ -302,19 +309,19 @@ print(p.lengths)
y = 160
width, height = 100, 100
width, height = 2*w, 2*w
image = Image.new('RGB', (width, height), 'white')
draw = ImageDraw.Draw(image)
for i in range(len(center)):
if center[i]:
circle = Circle(center[i], radius[i], radius[i])
circle = Circle(center[i], radius[i], radius[i]+1)
for j in range(len(circle.coordinates)-1):
editor.placeBlock(
(circle.coordinates[j].x, y, circle.coordinates[j].y), Block("white_concrete"))
draw.point((circle.coordinates[j].x+25,
50-circle.coordinates[j].y), fill='black')
draw.point((circle.coordinates[j].x+w,
w-circle.coordinates[j].y), fill='black')
for i in range(len(p.coordinates)-1):
if p.coordinates[i] != None:
@@ -323,8 +330,8 @@ for i in range(len(p.coordinates)-1):
for j in range(len(s.coordinates)-1):
editor.placeBlock(
s.coordinates[j].coordinate, Block("cyan_concrete"))
draw.point((s.coordinates[j].x+25,
50-s.coordinates[j].z), fill='red')
draw.point((s.coordinates[j].x+w,
w-s.coordinates[j].z), fill='red')
image.save('output_image.png')

Binary file not shown.

Before

Width:  |  Height:  |  Size: 857 B

After

Width:  |  Height:  |  Size: 39 KiB