Мне было интересно, знал ли кто-нибудь о любом алгоритме, чтобы нарисовать линию с определенной толщиной, основанную на линейном алгоритме Брешенема или любом подобном.Алгоритм линии Bresenham (толщина)
На второй мысли, я задавался вопросом о каждой SetPixel (х, у) я просто нарисовать круг, например .:
filledCircle (х, у, толщина); для каждого x, y, но это, конечно, будет очень медленным. Я также пытался использовать словарь, но это мгновенно заполнило бы память. Проверьте пиксели, которые я собираюсь нарисовать, если они имеют один и тот же цвет, но это также недостаточно эффективно для больших кистей.
Возможно, я мог бы как-то нарисовать половину кругов в зависимости от угла?
Любой вход будет оценен.
Спасибо.
дубликат:how do I create a line of arbitrary thickness using Bresenham?
Одна пиксельная линия представляет собой прямоугольник шириной 1 пиксель. Когда вы рисуете более широкую линию, вы можете использовать любой алгоритм рисования многоугольника. Это прояснит не только то, как линия отображается, но и как бороться с ограничениями строк и сглаживанием, если вы решите. –