Autodesk Maya의 cmds.intFieldGrp 명령어는 정수 값을 입력할 수 있는 UI 그룹을 생성하는 데 사용됩니다. 이 명령어는 하나 이상의 정수 입력 필드와 라벨을 함께 제공하여, 사용자로부터 정수 입력을 받을 때 유용합니다.
구문
cmds.intFieldGrp(*args, **kwargs)
파라미터
주요 인수
- args: 그룹의 이름을 지정할 수 있습니다. 문자열 형식의 이름을 지정하면 이후에 해당 이름을 통해 그룹을 참조할 수 있습니다.
- kwargs: 다양한 속성을 지정할 수 있는 키워드 인수들입니다.
주요 키워드 인수
- adjustableColumn (ac): 필드의 열 크기를 조정할 수 있는지 여부를 지정합니다.
- 유형: Boolean
- 기본값: False
- annotation (ann): UI 요소에 대한 주석을 지정합니다.
이 주석은 마우스를 올렸을 때 툴팁으로 표시됩니다.- 유형: String
- 기본값: None
- bgc: 배경색을 지정합니다.
RGB 값을 튜플로 지정합니다.- 유형: Tuple (R, G, B)
- 기본값: None
- cal: 레이블의 정렬을 지정합니다.
‘left’, ‘right’, ‘center’ 중 하나를 선택할 수 있습니다.- 유형: String
- 기본값: ‘left’
- cat: 레이블과 필드의 부착 방식을 지정합니다.
튜플 형식으로 (측면, 부착 방식, 간격)을 지정합니다.- 유형: Tuple
- 기본값: None
- cw: 레이블과 필드의 너비를 지정합니다.
- 유형: Tuple
- 기본값: None
- enable (en): 그룹과 그 자식 요소들의 활성화 여부를 지정합니다.
- 유형: Boolean
- 기본값: True
- enableBackground (ebg): 배경색 활성화 여부를 지정합니다.
- 유형: Boolean
- 기본값: False
- fieldArray (fa): 필드의 배열을 지정합니다.
- 유형: List
- 기본값: None
- fieldLabel (fl): 필드의 레이블을 지정합니다.
- 유형: String
- 기본값: None
- fieldMinValue (fmn): 필드의 최소값을 지정합니다.
- 유형: Int
- 기본값: None
- fieldMaxValue (fmx): 필드의 최대값을 지정합니다.
- 유형: Int
- 기본값: None
- label: 그룹의 레이블을 지정합니다.
- 유형: String
- 기본값: None
- numberOfFields (nf): 그룹 내의 필드 수를 지정합니다.
- 유형: Int
- 기본값: 1
- value1, value2, value3, value4: 각 필드의 초기 값을 지정합니다.
- 유형: Int
- 기본값: 0
- visible (vis): 그룹의 가시성을 지정합니다.
- 유형: Boolean
- 기본값: True
반환 값
String: 생성된 intFieldGrp의 이름을 반환합니다.
이 이름을 사용하여 나중에 그룹을 참조할 수 있습니다.
상세 설명
cmds.intFieldGrp 명령어는 여러 개의 정수 입력 필드를 포함하는 그룹을 생성합니다.
각 필드는 레이블과 함께 제공되며, 다양한 옵션을 통해 필드의 배치와 동작을 설정할 수 있습니다.
예제 1: 기본 사용법
기본적인 intFieldGrp를 생성하는 예제입니다.
import maya.cmds as cmds
# 새로운 창 생성
window = cmds.window(title="intFieldGrp Example")
cmds.columnLayout(adjustableColumn=True)
cmds.intFieldGrp('exampleFieldGrp', label='Example Int Field', value1=10)
cmds.showWindow(window)
예제 2: 여러 필드와 초기 값 설정
여러 개의 필드를 포함하는 intFieldGrp를 생성하는 예제입니다.
import maya.cmds as cmds
# 새로운 창 생성
window = cmds.window(title="intFieldGrp Example")
cmds.columnLayout(adjustableColumn=True)
cmds.intFieldGrp('multiFieldGrp', label='Multi Field', numberOfFields=3, value1=10, value2=20, value3=30)
cmds.showWindow(window)
예제 3: 필드의 최소값과 최대값 설정
각 필드의 값 제한을 설정하는 예제입니다.
import maya.cmds as cmds
# 새로운 창 생성
window = cmds.window(title="intFieldGrp Example")
cmds.columnLayout(adjustableColumn=True)
cmds.intFieldGrp('limitedFieldGrp', label='Limited Field', value1=5, fieldMinValue=0, fieldMaxValue=10)
cmds.showWindow(window)
예제 4: 필드 너비와 정렬 설정
필드의 너비와 레이블 정렬을 설정하는 예제입니다.
import maya.cmds as cmds
# 새로운 창 생성
window = cmds.window(title="intFieldGrp Example")
cmds.columnLayout(adjustableColumn=True)
cmds.intFieldGrp('styledFieldGrp', label='Styled Field', value1=15, columnWidth=[(1, 100), (2, 50)], columnAlign=(1, 'right'))
cmds.showWindow(window)
고급 사용법
예제 5: 이벤트 핸들러 추가
필드 값이 변경될 때 실행될 명령어를 설정하는 예제입니다.
import maya.cmds as cmds
def on_value_change(*args):
value = cmds.intFieldGrp('dynamicFieldGrp', query=True, value1=True)
print(f'Value changed to: {value}')
# 새로운 창 생성
window = cmds.window(title="intFieldGrp Example")
cmds.columnLayout(adjustableColumn=True)
cmds.intFieldGrp('dynamicFieldGrp', label='Dynamic Field', value1=0, changeCommand=on_value_change)
cmds.showWindow(window)
예제 6: 동적으로 필드 값 변경
스크립트를 통해 필드 값을 동적으로 변경하는 예제입니다.
import maya.cmds as cmds
def set_field_value(value):
cmds.intFieldGrp('dynamicFieldGrp', edit=True, value1=value)
# 새로운 창 생성
window = cmds.window(title="intFieldGrp Example")
cmds.columnLayout(adjustableColumn=True)
cmds.intFieldGrp('dynamicFieldGrp', label='Dynamic Field', value1=0)
cmds.button(label='Set Value to 42', command=lambda x: set_field_value(42))
cmds.showWindow(window)
주의 사항
- adjustableColumn: 이 옵션을 True로 설정하면 레이아웃의 열이 창의 크기에 맞게 조정됩니다. 이를 통해 반응형 UI를 구현할 수 있습니다.
- columnAlign: 정렬 방식은 레이아웃 내의 모든 UI 요소에 적용됩니다. 개별 요소의 정렬을 변경하려면 해당 요소의 속성을 따로 지정해야 합니다.
- fieldMinValue 및 fieldMaxValue: 필드의 최소값과 최대값을 설정하여 사용자가 입력할 수 있는 값을 제한할 수 있습니다.
- numberOfFields: 여러 필드를 포함하는 그룹을 생성할 때 이 값을 사용하여 필드의 수를 지정할 수 있습니다.
- changeCommand: 필드 값이 변경될 때 실행할 명령어를 설정할 수 있습니다. 이 명령어는 필드 값이 변경될 때마다 호출됩니다.
참조
- Maya Commands Documentation
- Maya UI 구성 관련 명령어들:
- cmds.textFieldGrp
- cmds.floatFieldGrp
- cmds.rowLayout
- cmds.formLayout
이 매뉴얼은 Maya의 cmds.intFieldGrp 명령어에 대한 포괄적인 설명을 제공하며, 다양한 예제와 사용법을 통해 사용자에게 깊이 있는 이해를 제공합니다.