Оператор Вlock и time. Братья неразлучные



Вlock позволяет поставить блок. Так как оператор repeat применим к блокам, что позволит повторить лишь часть трансформации.
Тime – обычный таймер, по истечению времени он прекратит все что вы задали, он прервет его даже если другой код уже работает.
Пример: изображение с середины экрана начнет перемещаться справа-налево 11.5 секунд, и остановится на левой стороне.

· show logo base:

· xalign 0.0 yalign 0.0

· block:

·     linear 1.0 xalign 1.0

·     linear 1.0 xalign 0.0

·     repeat

· time 11.5

· linear .5 xalign 1.0

Оператор Parallel

Он позволяет нам использовать одновременно несколько операторов одновременно. Пример.

1) Магия среди нас

image magic = "risunok_1.png"

· show magic:

·         yalign .5 subpixel True

·

·         parallel:

·             xalign .5

·             linear 3.0 xalign .75

·             linear 6 .0 xalign .25

·             linear 3.0 xalign .5

·             repeat

·

·         parallel:

·             alpha 1.0 zoom 1.0

·             linear .75 alpha .5 zoom .9

·             linear .75 alpha 1.0 zoom 1.0

·             repeat

·

·         parallel:

·             rotate 0

·             linear 5 rotate 360

·         r epeat

Изображение

Рисунок, крутится, меняет свой размер, и исчезает.

2) Изображение скачет по экрану на все 4 стороны.

·     show logo base:

·         parallel:

·             linear 1.0 xalign 0.0

·             linear 1.0 xalign 1.0

·             repeat

·         parallel:

·             linear 1.3 yalign 1.0

·             linear 1.3 yalign 0.0

·         r epeat

Оператор Сhoice

Оператор Сhoice случайно запускает из вариантов-блоков

 

· show logo base:

·     choice:

·         linear 1.0 xalign 0.0

·     choice:

·         linear 1.0 xalign 1.0

·     repeat

Выходим за пределы экрана.

До этого мы писали, как картинку поставить на экране. А что если нам требуется не картинку переставить, а сам экран?
Тут нам потребуется немного поработать в фотошоппе и увеличить размер картинки в 2 раза(от разрешение проекта), сохраняя ее пропорции(а то будет квазиморда), после того как изображение было подготовлено вызываем ее

 

· image pic1 = "risunok_1.png"

· label start:

·     show pic1:

·         xanchor 0 yanchor 0 xpos 0 ypos -222

·     with dissolve

·     show pic1:

·         xanchor 0 yanchor 0 xpos 0 ypos -222

·     linear 5.0 xpos -435 ypos 0

Картинка то больше чем ваш экран и естественно, что она вся не помещается на экран,
поэтому мы прописываем появление экрана в углу данной картинки. Пишу точные значения, т.к. в данном случае нам требуется точное значение, а не %.

И что получилось, появляется угол картинки, на пол секунды у нас картинка как будто растворилась и тут же пошла в движение в верхний угол. И в конце картинка остановилась.

 

Блок on

Я еще сам не разобрался, что значит данный оператор, но приведу несколько примеров, где данный блок встречал.

1)Кнопки

· transform pulse_button:· on hover , idle:·         linear . 25 zoom 1.25 ·         linear . 25 zoom 1.0 Потом требуется зайти в скрипт screen . rpy и найдите кнопки, которые отвечаю за главное меню и допишите выделенные фрагменты. · screen navigation():· ·     vbox:·         style_prefix "navigation"· ·         xpos gui.navigation_xpos·         yalign 0.5· ·         spacing gui.navigation_spacing· ·         if main_menu:· ·             textbutton _("Начать ") at pulse_button action Start()· ·         else:· ·             textbutton _("История ") at pulse_button action ShowMenu("history")· ·             textbutton _("Сохранить ") at pulse_button action ShowMenu("save")· ·         textbutton _("Загрузить ") at pulse_button action ShowMenu("load")· ·         textbutton _("Настройки ") at pulse_button action ShowMenu("preferences")

Теперь посмотрим на то, что происходит: При наведении кнопка немного увеличивается в размере, из-за того что мне лень было отдельно прописывать idle и я все сразу вместе влепил,когда мы мышку убираем с кнопки, она опять увеличивается и уменьшается.(Если бы и отдельно прописал бы idle, то она бы плавно уменьшилась когда мышку убрали, а так каша. В следующем примере правильно расписано)

 

 

2)Прикольный переход

· transform logo_base:

·     on show:

·         alpha 0.0

·         linear .5 alpha 1.0

·     on hide:

·         linear .5 alpha 0.0

·     repeat

· label start:

·     show eileen happy at logo_base

·     pause

·     hide eileen happy

Теперь рассмотрим что получили. При вызове изображения (show eileen happy ) она у нас появилась растворением, и когда ее убираем(hide eileen happy ) она у нас исчезает так же растворением. Т.е. не нужно 100 раз прописывать разные переходы, достаточно 1 раз прописать ее и вызывать в нужные моменты.

 

15) C ontains Оператор contains позволяет применять к уже прописанной трансформации еще операторов.· transform an_animation:·     "1.png"·     pause 2 ·     "2.png"·     pause 2 ·     repeat· · image move_an_animation:·     contains an_animation· ·     xalign 0.0·     linear 1.0 yalign 1.0

 

 

Function

· init python:·     def slide_function(trans, st, at): ·         if st > 1.0 : ·         trans . xalign = 1.0 ·         return None·     else : ·         trans . xalign = st·         return 0 · label start:·     show logo base:·         function slide_function·         pause 1.0·         repeat

Что оно значит, я не знаю, но в этом примере изображение слева движется направо.

 


Дата добавления: 2018-10-27; просмотров: 601; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!