IDL/Object Graphics

Object Graphics in IDL [27]

이상우_idl 2011. 2. 25. 15:28
728x90
반응형

컬러값의 사용 및 해석


앞서 예제에서 보았듯이, 우리가 하위 그래픽 객체를 생성할 때 개별적으로 컬러를 지정할 수가 있다. 예를 들어 플롯, 축, 폴리곤 등의 하위 그래픽 객체 클래스들은 자체적으로 COLOR라는 속성을 갖기 때문에, 객체 생성시 또는 생성 이후에라도 컬러를 부여할 수 있다. 그리고 이보다 약간 상위 개념인 뷰 객체의 경우도 COLOR 속성을 갖고 있다. 뷰 객체에 부여되는 색상은 결국 배경색과 같은 역할을 한다. 예를 들어, 짙은 회색의 색상을 배경색으로 갖는 뷰 객체를 생성하는 방법은 다음과 같다.

myView = OBJ_NEW(‘IDLgrView’, COLOR=[60, 60, 60])

여기서는 컬러값을 RGB 기반으로 부여하였다. 물론 다음과 같이 인덱스 기반의 컬러값을 부여할 수도 있다.

myView = OBJ_NEW(‘IDLgrView, COLOR=60)

이 경우에는 이 뷰 객체가 그려질 그래픽 디바이스 객체에 부여된 팔레트 속성에 따라 색상이 구현될 것이다. 이번에는 또 다른 예제를 살펴보자.

myWindow = OBJ_NEW(‘IDLgrWindow’)

myView = OBJ_NEW(‘IDLgrView’, VIEWPLANE_RECT=[0,0,10,10])

myModel = OBJ_NEW(‘IDLgrModel’)

myPlot = OBJ_NEW(‘IDLgrPlot’, FINDGEN(10), THICK=5, COLOR=[255,255,255])

myModel -> Add, myPlot

myView -> Add, myModel

myWindow -> Draw, myView

이 예제의 첫번째 줄을 보면 새로 생성되는 윈도우 객체가 기본설정인 RGB 컬러모델을 사용함을 알 수 있다. 그리고 뷰 객체의 배경색은 기본설정인 백색([255,255,255])을 그대로 사용하고 있다. 하위 그래픽 객체로 구현된 플롯 객체의 경우 역시 그 색상을 백색으로 설정되어 있다. 그런데 이 상태에서는 배경색과 플롯 객체의 색이 같으므로 실제 구현시에는 다음 그림의 왼쪽과 같이 플롯 객체가 안보일 것이다. 따라서 플롯 객체의 색상을 백색이 아닌 다른 색으로 바꿔야하므로 다음과 같이 컬러 속성을 바꿔보자.

myPlot -> SetProperty, COLOR=[150,0,150]

myView -> SetProperty, COLOR=[75,250,75]

myWindow -> Draw, myView

여기서는 뷰 객체의 색상을 초록색으로 하고 플롯 객체의 색상은 보라색으로 변경하였기 때문에, 이제는 다음 오른쪽 그림과 같이 배경과 플롯이 구분되어 나타날 것이다.



이제 컬러에 관한 내용은 이 정도로 마무리하고 다음 시간부터는 하위 그래픽 객체들로 넘어가기로 하겠다.

반응형

'IDL > Object Graphics' 카테고리의 다른 글

Object Graphics in IDL [29]  (0) 2011.03.15
Object Graphics in IDL [28]  (0) 2011.03.06
Object Graphics in IDL [26]  (0) 2011.02.22
Object Graphics in IDL [25]  (0) 2011.02.14
IDL 8.0에서 새로 도입된 Object 관련 문법  (0) 2011.02.07