import sys import math import PIL.Image import PIL.ImageDraw if __name__ == '__main__': image, data = PIL.Image.open(sys.argv[1]).convert('RGB'), open(sys.argv[2], 'r') canvas = PIL.ImageDraw.ImageDraw(image) print image, data for row in data: x, y, sc, ro = [float(val) for val in row.split()[:4]] color = (0xFF, 0x99, 0x00) canvas.ellipse((x-sc, y-sc, x+sc, y+sc), outline=color) canvas.line((x, y, x + sc * math.cos(ro) / 2, y + sc * math.sin(ro) / 2), fill=color) image.save('out.png')