Как отследить значение цвета в виде шестнадцатеричного числа? - PullRequest
1 голос
/ 17 декабря 2010

Actionscript: как вывести значение цвета в формате, подобном "# FF00FF00"

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

            var xn:Number;
            var yn:Number;
            var zn:Number;
            var norm:Number;
            var c1:Number;
            var c2:Number;
            var c3:Number;
            var c4:Number;
            var counter:int;
            while (counter < 12000)
            {
                xn = Math.random() * 400 - 200;
                yn = Math.random() * 400 - 200;
                zn = Math.random() * 400 - 200;
                norm = Math.sqrt(xn * xn + yn * yn + zn * zn);
                c1 = (1 - norm / 200) * 255;
                c2 = (1 - norm / 250) * 255;
                c3 = Math.abs(xn) / norm * 255;
                c4 = Math.abs(yn) / norm * 255;
                trace(String(c1 << 24 | c2 << 16 | c3 << 8 | c4));
                counter++;
            }

Ответы [ 2 ]

5 голосов
/ 17 декабря 2010

Вы можете использовать метод toString :

rgb = 255;
hex = rgb.toString(16);

Редактировать : как сказал Dome, этот метод просто дает шестнадцатеричное представление значения.Вы не должны конвертировать значение цвета следующим образом.

2 голосов
/ 17 декабря 2010

Взгляните на этот пост .

Метод aeby описывает color.toString (16), это не точный метод для преобразования вашего цвета.[ПРАВКА] лучшая ссылка для чтения о правильном преобразовании цветов и альфа извлечении

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