import bpy
class HelloWorldPanel(bpy.types.Panel):
"""Creates a Panel in the Object properties window"""
bl_label = "Hello World Panel"
bl_idname = "OBJECT_PT_hello"
bl_space_type = 'PROPERTIES'
bl_region_type = 'WINDOW'
bl_context = "object"
def draw(self, context):
layout = self.layout
obj = context.object
row = layout.row()
row.label(text="Hello world!", icon='WORLD_DATA')
row = layout.row()
row.label(text="Active object is: " + obj.name)
row = layout.row()
row.prop(obj, "name")
row = layout.row()
row.operator("mesh.primitive_cube_add")
def register():
bpy.utils.register_class(HelloWorldPanel)
def unregister():
bpy.utils.unregister_class(HelloWorldPanel)
if __name__ == "__main__":
register()
기본 패널 탬플릿 불러오기
탬플릿 불러오면 아래와 같이 패널이 생성된 것을 볼 수 있다.
우선 스크립트 blender에 등록하기
스크립트 명명규칙
<--위 라인중 _PT_ 이 문장은 패널을 뜻하게 함 필수는 아니지만 나중에 편함.
어디에 위치시킬 지 결정
블랜더 파이썬 문서에서 자세한 내용 참조 (문서)
패널 관련 변수 조합: https://kirumon.blog.me/221848181755 (영마썸님 블로그)
UI요소를 어떻게 관리할지 결정하는 함수
파이썬 기본 클래스 함수라고 함.
layout = self.layout
Panel layout 추가 스크립트 이해
참조 : 영마섬
반응형