본문 바로가기

무언가 만들기 위한 지식/Action Script

About Color Class 칼라객체에 대하여

칼라 객체는 말그대로 색깔을 보정하는 개체이다.
동적으로 조건에 따라 색상을 바꿈으로서 다양한 효과를 낼 수 있다.

Color클래스는 아래와 같이 new Color(대상무비)를 통해 생성한다.
sq는 대상 무비의 이름이다.


일단 쓰이는 메소드는 setRGB와 getRGB두가지이다. 말그대로 Color 객체에 등록된 무비의 RGB를 얻어오거나 셋팅하는 일을 한다.(이런걸 겟어메소드, 셋어메소드라고 하는 객체지향의 기본 규칙)

setRGB는 매개변수에 RGB 숫자를 사용하여야 한다. RGB숫자가 10진 정수형이든지 16진수 정수형인지는 상관이 없다.(해본 결과) 대신 16진수등을 사용할 경우 앞에 진법을 표기하는 부분을 확실히 해주어야 한다.
ex) 위의 c.setRGB(RGB) 는  c.setRGB("0x"+RGB.toString(16)); 로 바꿔도 이상없이 돌아간다.

getRGB는 10진 정수형 값을 반환한다. 이를 다른 진법으로 표기하고 싶다면 toString을 이용하면 된다.
Number 객체의 tosString 메소드로 표기되는 진수형식을 바꿀 수 있다.

사용법
toString(radix)
사용예
a.toString(2);    --> 이진법으로 형식을 바꿈
b.toString(8);    --> 팔진법으로 형식을 바꿈
c.toString(10);  --> 십진법으로 형식을 바꿈
d.toString(16);  --> 십육진법으로 형식을 바꿈


위에서는 RGB값을 정수 10진법으로 표기하기 위해 RGB=r*65536+g*256+b 로 설정해 놓았다.
각 r,g,b는 0~255의 값을 갖는다.

RGB 색상은 연속된 8bit R, G, B 3개가 합쳐져 총 24bit의 구성을 이루고 이는 곧 2의 24승의 색감이 표현가능하다는 것이다.
이것을 보통 가독성을 위해 16진수로 표현한다. ex) 0xffffff
16진수의 한자리는 2진수의 4자리이다. 즉 앞의 2자리가 R을 가운데 2자리가 G를 마지막 2자리가 B를 나타내는 것이다. 이것도 적당한 연산을 통해 풀이가 가능하다.

보통 RGB를 선택할때는 입력시 정수를 이용하여 하기때문에
RGB=r*65536+g*256+b
의 식이 가장 많이 쓰인다.

다음은 마우스의 움직임과 랜덤값을 토대로 계속 색상이 변하는 화면이다.
해당 RGB의 16진수의 값도 출력하도록 설정하였다.



<↑마우스를 올려보세요>

'무언가 만들기 위한 지식 > Action Script' 카테고리의 다른 글

Action Script Data Type(자료형)  (0) 2010.04.19
About Date Class  (0) 2010.04.19
About Sound Class  (2) 2010.04.19
드로잉 메소드(Drawing Method)  (1) 2010.04.19
부드러운 모션-동적인 움직임.  (0) 2010.04.19