generate_bus_route_icons.py 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. #!/usr/bin/python3
  2. #
  3. import os, sys
  4. import csv
  5. import subprocess as sp
  6. HEADING = ["0", "45", "90", "135", "180", "225", "270", "315", "stat"];
  7. #HEADING = ["0", "45", "90", "135", "180", "225", "270", "315"]
  8. route_HDR = []
  9. route_info = []
  10. with open("routes.txt") as fp:
  11. fpcsv = csv.reader(fp, delimiter=",", quotechar='"')
  12. for row in fpcsv:
  13. if len(route_HDR)==0:
  14. route_HDR = row
  15. continue
  16. route_info.append(row);
  17. for route_row in route_info:
  18. route_id = route_row[0]
  19. for heading in HEADING:
  20. print(route_id, heading)
  21. bub_width = (len(heading)*4) + 2 + 2
  22. bub_height = 9
  23. bw2 = int(bub_width/2)
  24. bub_offset = 0
  25. left_overflow = bw2 - 6;
  26. if (left_overflow < 0):
  27. left_overflow = 0
  28. bub_offset = 6 - 2 - 2
  29. tot_width = 32 + 2*left_overflow
  30. tot_height = 37+2
  31. base_icon = "bus_gw_" + heading + ".png"
  32. cmd = ["convert", "-page", str(tot_width) + "x" + str(tot_height) + "+" + str(left_overflow) + "+2", base_icon]
  33. cmd.append("-page")
  34. cmd.append("+" + str(bub_offset) + "+0")
  35. cmd.append("extra/bub_left.png")
  36. cur_offset = bub_offset + 2
  37. for idx in range(len(route_id)):
  38. cmd.append("-page")
  39. cmd.append("+" + str(cur_offset) + "+0")
  40. cmd.append("extra/bub_middle.png")
  41. cur_offset+=1
  42. cmd.append("-page")
  43. cmd.append("+" + str(cur_offset) + "+0")
  44. cmd.append("extra/bub_middle.png")
  45. cur_offset+=1
  46. cmd.append("-page")
  47. cmd.append("+" + str(cur_offset) + "+0")
  48. cmd.append("extra/bub_middle.png")
  49. cur_offset+=1
  50. cmd.append("-page")
  51. cmd.append("+" + str(cur_offset) + "+0")
  52. cmd.append("extra/bub_middle.png")
  53. cur_offset+=1
  54. cur_offset -=1
  55. cmd.append("-page")
  56. cmd.append("+" + str(cur_offset) + "+0")
  57. cmd.append("extra/bub_right.png")
  58. cur_offset = bub_offset + 2
  59. for idx in range(len(route_id)):
  60. p = cur_offset-1
  61. cmd.append("-page")
  62. cmd.append("+" + str(p) + "+2")
  63. cmd.append("extra/" + route_id[idx] + ".png")
  64. cur_offset += 4
  65. cmd.append("-background")
  66. cmd.append("none")
  67. cmd.append("-flatten")
  68. cmd.append("bus_route_icon/bus_gw_r" + route_id + "_" + heading + ".png")
  69. print(" ".join(cmd));
  70. sp.call(cmd)