Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Как сохранить в переменной шестнадцатиричное цисло? (http://www.flasher.ru/forum/showthread.php?t=98148)

this.create 07.07.2007 02:50

Как сохранить в переменной шестнадцатиричное цисло?
 
Такое число нужно в частности для определения цвета в фильтрах. Само число относится к типу Number, но если его сохранить как:
Код:

var color:Number=0xFF3300
,то оно сразу приводится к основанию 10 и в фильтре уже не тот цвет который был изначально(0хFF3300). Как передать через переменную шестнадцатиричное число?

iNils 07.07.2007 03:08

А какая разница в каком формате число?

lowka 07.07.2007 03:21

Код:

var color:Number = 12131;
var colorInHex:String = color.toString(16);
var tmp:String = "00000" + colorInHex;
var length:Number = tmp.length;
var result:String = "0x" + tmp.substring(length - 6, length);

trace(result);//0x002f63


this.create 07.07.2007 03:22

Сейчас пример написал и увидел, что именно для этого случая не имеет значения. Можно в простом Number сохранять.
Вопрос снимается.

ps. Пользовательские классы осваиваю, вот с областями видимости не разобрался еще.

Kikasso 07.07.2007 03:59

Вот на всякий случай:
Код:

function splitRGB( color:Number):Array {
        var r:Number = (color >> 16);
        var g:Number = (color >> 8) & 0xFF;
        var b:Number = color & 0xFF;
        return [r,g,b];
}
function joinRGB( r,g,b ){
        return ( r << 16 | g <<8 | b );
}


etc 07.07.2007 11:39

http://dev.etcs.ru/blog/as2/ru/etcs/draw/colorobject/


Часовой пояс GMT +4, время: 13:59.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.