2010-03-18 120 views
3

好日子大家,轉換UINT顏色ARGB十六進制顏色KML

我堅持努力單元色值轉換成等效的ARGB十六進制格式。基本上,我試圖將來自Flex(AS3)的顏色轉換爲合適的kml顏色,該顏色採用我收集的argb十六進制格式。以下是我現在的功能。雖然它轉換成有效的kml顏色,但它不是正確的顏色或甚至關閉。有沒有人在這裏看到任何錯誤?

private static function getKmlColor(color:uint,alpha:Number):String 
    { 
     var argb:uint = 0; 
     var alphaUint:uint = 255 * alpha; 
     argb += (alphaUint<<24); 
     argb += (color); 
     return argb.toString(16); 
    } 

回答

1

我假設你的alpha爲0和1(0-100%)之間的東西,所以這應該是很好,雖然我可能會使其double,然後地板或天花板到最接近的整數。

但其餘的看起來不錯

+0

您將阿爾法正確的,它是關於取整(或缺乏)0和1,良好的點之間的值。 – user163757 2010-03-18 18:00:38