boxes.py 713 B

123456789101112131415161718192021222324252627282930313233
  1. import random
  2. r = random.Random(1)
  3. def generate_box():
  4. a = r.random()
  5. b = r.random()
  6. c = r.random()
  7. d = r.random()
  8. minx = min(a, b)
  9. maxx = max(a, b)
  10. miny = min(c, d)
  11. maxy = max(c, d)
  12. cx = 0.5 * (minx + maxx)
  13. cy = 0.5 * (miny + maxy)
  14. w = maxx - minx
  15. h = maxy - miny
  16. sz = r.random() * r.random()
  17. w = w * sz
  18. h = h * sz
  19. minx = cx - w * 0.5
  20. maxx = cx + w * 0.5
  21. miny = cy - h * 0.5
  22. maxy = cy + h * 0.5
  23. return minx, miny, maxx, maxy
  24. for i in xrange(20):
  25. box = generate_box()
  26. print '{:.2}, {:.2}, {:.2}, {:.2},'.format(*box)
  27. print
  28. for i in xrange(10):
  29. box = generate_box()
  30. print '{:.2}, {:.2}, {:.2}, {:.2},'.format(*box)