Как нарисовать очень короткую линию с ActionScript? - PullRequest
1 голос
/ 06 марта 2009

У меня проблемы с рисованием очень короткой строки с actionscript3:

var cSp:Sprite = new Sprite();
var cGx:Graphics = cSp.graphics;
cGx.lineStyle( 1, 0xFF0000, 1, false, LineScaleMode.NONE, null, null, 1 );

cGx.moveTo( 2, 10 );
cGx.lineTo( 3, 10 );

Это создает два вертикально сложенных пикселя, которые не совсем красные (# 7f0000)!

вертикальная линия? http://www.freeimagehosting.net/uploads/449212bd1f.png

(здесь увеличено:)

увеличено http://www.freeimagehosting.net/uploads/5c9014a148.png

Поскольку я пытаюсь нарисовать горизонтальную линию, это не то, что я ожидал. Я предполагаю, что здесь происходит некоторая хитрость псевдонима / субпикселя Какая волшебная комбинация команд для рисования действительно короткой линии или одного пикселя?

Примечание: если я сделаю мою действительно короткую линию длиной 4 пикселя (или более), она будет отображаться так, как ожидается (длина 4+ пикселя, высота 1 пиксель, каждый визуализированный пиксель # FF0000)

1 Ответ

5 голосов
/ 06 марта 2009

Вы пробовали играть с различными настройками caps и joint ? Ваши значения null / null заставят Flash использовать круглые колпачки и круглые швы. Ваш [последний] параметр «1» для ограничения митры также будет игнорироваться, так как вы не будете использовать соединения под углом.

Я бы предложил сначала попробовать CapsStyle.NONE. Тогда, может быть, косые суставы. Для справки: Graphics.lineStyle () .

Редактировать: Попробуйте использовать подсказку пикселей тоже.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...