2015-06-07 8 views
4

У меня есть простой морфинг в скрипке smalltalk. Я хочу перенести его с x1, y1 на x2, y2 (анимация) с 5 секунд (или 10 секунд)анимация в скрипе smalltalk

есть ли способ создания анимации в маленьком пятне скрипа?

+0

Обратите внимание на главу _Morphic_ _Squeak/Pharo по Примеру_. – MartinW

ответ

6

Да, есть встроенный в пути:

Сделайте подкласс Morph и реализации этих двух методов

  • stepTime (время между шагами в миллисекундах) и
  • стадии (посылается морф через регулярные промежутки времени)

минимальный пример:

Morph subclass: #MovingMorph 
    instanceVariableNames: '' 
    classVariableNames: '' 
    category: 'MovingMorph' 

MovingMorph >> stepTime

stepTime 
    ^100 

MovingMorph >> шаг

step 
    self position: self position + ([email protected]) 

Теперь откройте MovingMorph в мире (MovingMorph new openInWorld) и управлять анимацией с startStepping и stopStepping.

3

Хотя можно показать анимации с использованием морфического степпинга, то Animations Project занимает немного дальше, и предоставляет простой интерфейс использовать короткие анимации:

AnimPropertyAnimation new 
    duration: 500; 
    target: myMorph; 
    property: #position; "There should be a message called #position:." 
    startValue: [email protected]; 
    endValue: [email protected]; 
    start. 

Таких вещи, как замирание в или исчезать из или аналогичных еще проще:

myMorph fadeOut. 

 Смежные вопросы

  • Нет связанных вопросов^_^