линия графика под определенным углом и смещением - PullRequest
0 голосов
/ 18 июня 2009

Я пытаюсь нанести конкретную линию на исходное изображение (массив), которое у меня есть. По сути, у меня есть угол и смещение (измеренное от центра изображения), по которому я хочу провести линию. Проблема в том, что я не совсем уверен, как это сделать. Я могу написать действительно сложный кусок кода для этого, но мне интересно, есть ли более простой способ, о котором я не знаю (возможно, с matplotlib). Спасибо.

Ответы [ 2 ]

2 голосов
/ 18 июня 2009

Если предположить, что ваше смещение на самом деле является координатой x, y центра линии, и что линия должна быть фиксированной длины, то это просто вопрос тригонометрии с помощью matplotlib:

x = [offsetx-linelength*cos(angle), offsetx+linelength*cos(angle)]
y = [offsety-linelength*sin(angle), offsety+linelength*sin(angle)]
plot(x, y, '-')
1 голос
/ 18 июня 2009

Используйте PIL и нарисуйте линию, крикл или другое изображение поверх исходного изображения

import Image, ImageDraw

im = Image.open("my.png")

draw = ImageDraw.Draw(im)
draw.line((0, 0, 100, 100), fill=128)
del draw 

# write to stdout
im.save(sys.stdout, "PNG")
...