렌파이 스크립트에서 사용할 새로운 트랜지션과 트랜스폼을 만들 때는 파이썬을 이용할 수 있습니다.
트랜스폼은 디스플레이어블과 함께 호출될 때 또다른 디스플레이어블을 반환하는 파이썬 콜러블입니다.
init python:
# right 와 left 트랜스폼을 사용하는
# 트랜스폼.
def right_or_left(d):
if switch:
return right(d)
else:
return left(d)
ATL 트랜스폼과 같은 기능을 하는 파이썬 함수는 트랜스폼 객체입니다.
Transform
(child=None, function=None, **properties)¶자르기, 회전, 크기 변경, 알파 블렌딩같은 작동을 하위 디스플레이어블에 적용하는 트랜스폼. 트랜스폼 객체에는 하위 디스플레이어블에 적용되는 트랜스폼 속성 과 상응하는 필드가 있다.
None이 아니라면 트랜스폼을 렌더링할 때 호출할 함수. 함수는 세 인수와 함께 호출된다:
함수는 해당 함수가 다시 호출 될 시간을 정해주는 딜레이를 반환해야 하며, 다시 호출될 일이 없을 경우 None을 반환해야 한다.
추가 인수는 트랜스폼 속성에 설정할 변수로써 받는다.
hide_request
¶트랜스폼이 숨겨져있다는 것을 나타내려면 이 속성을 True로 설정해야 한다.
hide_response
¶hide_request 가 True 면 트랜스폼을 이중으로 숨기지 못하게 하도록 이 인수를 False 로 설정해야 한다.
set_child
(child)¶이 트랜스폼의 하위 위젯을 child 로 바꾸려면 이 메소드를 child 와 함께 호출해야 한다.
update
()¶트랜스폼 속성 필드를 콜백 메소드 밖에서 업데이트했을 때 변경점을 적용하기 위해 호출해야 하는 메소드.
트랜지션은 두 개의 키워드 인수와 함께 호출될 때 트랜지션 이펙트를 실행하는 디스플레이어블을 반환하는 파이썬 콜러블입니다. 두 개의 키워드 인수는 각각 다음과 같습니다.:
반환되는 디스플레이어블에는 트랜지션이 동작할 시간을 가리키는
초 단위 숫자인 delay
필드가 있어야 합니다.
init python:
def dissolve_or_pixellate(old_widget=None, new_widget=None):
if persistent.want_pixellate:
return pixellate(old_widget=old_widget, new_widget=new_widget)
else:
return dissolve(old_widget=old_widget, new_widget=new_widget)