디폴트 속성값
미리 정의된 속성값
거의 모든 그래픽스 객체 속성에 미리 정의된 값이 있습니다. 미리 정의된 값의 출처로는 두 군데가 있을 수 있습니다.
객체의 선조에 정의된 디폴트 값
그래픽스 객체 계층 구조의 루트에 정의된 공장 초기값
사용자는 객체 속성에 대한 디폴트 값을 생성할 수 있으며, 이 값은 공장 초기값에 우선합니다. 다음과 같은 경우 객체는 디폴트 값을 사용합니다.
선조가 디폴트 값을 정의하는 계층 구조에 객체가 생성된 경우
선조가 디폴트 값을 정의하는 계층 구조를 부모로 갖는 객체인 경우
디폴트 값 지정하기
다음 세 가지 부분이 포함된 문자형 벡터를 사용하여 디폴트 속성값을 정의합니다.
'default' ObjectType PropertyName
단어
default
객체 유형(예:
Line
)속성 이름(예:
LineWidth
)
디폴트 선 LineWidth
를 지정하는 문자형 벡터는 다음과 같습니다.
'defaultLineLineWidth'
이 문자형 벡터를 사용하여 디폴트 값을 지정하십시오. 예를 들어, 선의 LineWidth
속성에 디폴트 값을 2포인트로 지정하려면 다음 명령문을 사용합니다.
set(groot,'defaultLineLineWidth',2)
문자형 벡터 defaultLineLineWidth
는 속성을 line 속성으로 인식합니다. Figure 색을 지정하려면 defaultFigureColor
를 사용합니다.
set(groot,'defaultFigureColor','b')
계층 구조에서 디폴트를 정의하는 위치
일반적으로, 모든 후속 플로팅 함수가 디폴트 값을 사용하도록 루트 수준에서 디폴트 값을 정의해야 합니다. 루트에 대한 핸들을 반환하는 groot
함수를 사용하여 set
명령문과 get
명령문에서 루트를 지정합니다.
다음 세 가지 수준에서 디폴트 속성값을 정의할 수 있습니다.
예를 들어, 루트 수준에서만 디폴트 Figure 색을 지정하려면 다음을 사용합니다.
set(groot,'defaultFigureColor','b')
디폴트 값 나열하기
get
을 사용하여 지정된 객체 수준에서 현재 설정된 디폴트 값을 확인할 수 있습니다.
get(groot,'default')
이 명령은 현재 MATLAB 세션에 설정된 모든 디폴트 값을 반환합니다.
속성을 현재 디폴트로 설정하기
속성값을 'default'
로 지정하면 해당 속성에 정의된 디폴트 값 중 처음 나오는 값으로 속성이 설정됩니다. 예를 들어, 다음 명령문은 녹색 곡면 EdgeColor
를 생성합니다.
set(groot,'defaultSurfaceEdgeColor','k') h = surface(peaks); set(gcf,'defaultSurfaceEdgeColor','g') set(h,'EdgeColor','default')
곡면 EdgeColor
의 디폴트 값이 Figure 수준에서 존재하기 때문에 루트에 정의된 디폴트 EdgeColor
대신 MATLAB이 이 값을 처음으로 접하고 이 값을 사용합니다.
디폴트 값 제거하기
속성값을 'remove'
로 지정하면 사용자 정의 디폴트 값이 제거됩니다. 다음 명령문은
set(groot,'defaultSurfaceEdgeColor','remove')
루트에서 디폴트 곡면 EdgeColor
의 정의를 제거합니다.
공장 초기값으로 속성 설정하기
속성값을 'factory'
로 지정하면 속성이 공장 초기값으로 설정됩니다. 예를 들어, 다음 명령문은 곡면 h
의 EdgeColor
를 정의한 디폴트 값에 상관없이 검은색(공장 초기값 설정)으로 설정합니다.
set(gcf,'defaultSurfaceEdgeColor','g') h = surface(peaks); set(h,'EdgeColor','factory')
공장 초기 속성값 나열하기
다음과 같이 공장 초기값을 나열할 수 있습니다.
get(groot,'factory')
— 모든 그래픽스 객체에 대한 공장 초기 속성값을 나열합니다.get(groot,'factory
— 특정 객체에 대한 공장 초기 속성값을 나열합니다.ObjectType
')get(groot,'factory
— 특정 속성에 대한 공장 초기값을 나열합니다.ObjectTypePropertyName
')
예약어
속성값을 default
, remove
, factory
중 하나로 설정하면 이전 섹션에서 설명했던 효과가 나타납니다. 속성을 다음 단어 중 하나로 설정하려면(예를 들어, 텍스트의 String
속성을 단어 default
로 설정) 해당 단어 앞에 백슬래시 문자를 입력합니다.
h = text('String','\default');