목차

이전 항목

지속 데이터

다음 항목

스크린과 파이썬

링크


원문 보러 가기
오역 신고하기
Created using Sphinx.

파이썬에서의 트랜스폼과 트랜지션

렌파이 스크립트에서 사용할 새로운 트랜지션과 트랜스폼을 만들 때는 파이썬을 이용할 수 있습니다.

트랜스폼

트랜스폼은 디스플레이어블과 함께 호출될 때 또다른 디스플레이어블을 반환하는 파이썬 콜러블입니다.

init python:

     # right 와 left 트랜스폼을 사용하는
     # 트랜스폼.
     def right_or_left(d):
         if switch:
             return right(d)
         else:
             return left(d)

ATL 트랜스폼과 같은 기능을 하는 파이썬 함수는 트랜스폼 객체입니다.

class Transform(child=None, function=None, **properties)

자르기, 회전, 크기 변경, 알파 블렌딩같은 작동을 하위 디스플레이어블에 적용하는 트랜스폼. 트랜스폼 객체에는 하위 디스플레이어블에 적용되는 트랜스폼 속성 과 상응하는 필드가 있다.

child
트랜스폼을 적용할 하위 위젯.
function

None이 아니라면 트랜스폼을 렌더링할 때 호출할 함수. 함수는 세 인수와 함께 호출된다:

  • 트랜스폼 객체.
  • 표시 시간축, 초 단위.
  • 동작 시간축, 초 단위.

함수는 해당 함수가 다시 호출 될 시간을 정해주는 딜레이를 반환해야 하며, 다시 호출될 일이 없을 경우 None을 반환해야 한다.

추가 인수는 트랜스폼 속성에 설정할 변수로써 받는다.

hide_request

트랜스폼이 숨겨져있다는 것을 나타내려면 이 속성을 True로 설정해야 한다.

hide_response

hide_request 가 True 면 트랜스폼을 이중으로 숨기지 못하게 하도록 이 인수를 False 로 설정해야 한다.

set_child(child)

이 트랜스폼의 하위 위젯을 child 로 바꾸려면 이 메소드를 child 와 함께 호출해야 한다.

update()

트랜스폼 속성 필드를 콜백 메소드 밖에서 업데이트했을 때 변경점을 적용하기 위해 호출해야 하는 메소드.

트랜지션

트랜지션은 두 개의 키워드 인수와 함께 호출될 때 트랜지션 이펙트를 실행하는 디스플레이어블을 반환하는 파이썬 콜러블입니다. 두 개의 키워드 인수는 각각 다음과 같습니다.:

old_widget
이전 화면을 표현한 디스플레이어블.
new_widget
새 화면을 표현한 디스플레이어블.

반환되는 디스플레이어블에는 트랜지션이 동작할 시간을 가리키는 초 단위 숫자인 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)