在描述色彩的上, 最常用的標示法為 RGB 與 HSV.
在Android系統上, 有Color這個class可以幫忙轉換與取得所需的色彩資訊.
其中
色彩值(color)為整數(int)
RGB的值均為整數(int) 範圍均為 [0:255]
HSV為浮點數(float) 範圍H:[0.0F : 360.0F] S[0.0F : 1.0F] V[0.0F : 1.0F]
假定, 今天具有RGB的值, 則可利用
int color = Color.rgb(red, green, blue) 來取得對應的顏色.
假定, 今天具有HSV的值, 則可利用
int color = Color.HSVToColor(hsv) 來取得對應的顏色.
相反的, 如果今天給定color值, 則可利用
int red = Color.red(color)
int green = Color.green(color)
int blue = Color.blue(color)
來取得RGB值
亦可利用 Color.colorToHSV(color, hsv) 來將顏色轉換成 hsv.
但因為hsv為浮點數, 所以若將由 color1 轉換成的hsv值在轉換為color2時.
由於其運算會由浮點數再度轉換為整數. 中間可能會有精準度的問題而使得color1不等於color2.
故, 若有顏色轉換上的需求, 盡可能不要用hsv轉為color, 而只要進行color轉向hsv的單向工程. 至於color的來源可藉由同是整數的RGB轉換得來, 或直接使用16進位法的整數表示式即可.(同樣在整數的轉換中, 精準度不會因為轉換而失去)
2013年1月17日 星期四
2013年1月16日 星期三
2013年1月10日 星期四
做著明知沒有什麼使用者的東西
這幾天把一個之前的東西"重新"寫了一版...
是的...就像我還在上份工作時常做的事情...砍掉重練....一切重頭來...
只是...這個東西...其實主要使用者幾乎就只會有我這個人本身...
在已經投入這個領域一段時間後...我竟然還會做一個明知沒啥人會用的東西...假設我是個旁觀者...我一定覺得作這個的人在浪費時間吧...
但...我個人真的還蠻需要這個的...只是我無法付錢給自己而已....囧rz
訂閱:
文章 (Atom)