У<= r && vy < 0 || у >= 500-r && vy > 0

Действие, которое выполняется и в том, и в другом случае, будет тем же: изменение направления скорости vy с частичной ее потерей.

 
 

 

 


Рис. 15. Введение изображения нового экземпляра мяча

 

Для того чтобы учесть отталкивание мяча от вертикальных стен, нужно учесть это событие в стейтчарте введением дополнительного перехода. Сде­лайте окно стрейчарта активным и добавьте к состоянию Movement дополни­тельный переход, используя кнопку панели инструментов:

 

Щелкнув мышью на этой кнопке, поместите указатель мыши на границе состояния и продвигайтесь по полю окна стейтчарта, щелкая кнопкой мыши в тех мес­тах, где должны располагаться точки изгиба линии перехода. Двойной щел­чок мыши заканчивает рисование перехода стрелкой (рис. 16).

В появившемся справа окне свойств этого перехода в поле Происходит нуж­но выбрать вариант По событию, в поле Событие следует вставить условие наступления события касания мяча о вертикальную стенку:

х <= r && vx < 0 || х >= 500-r && vx > 0

а в поле Действие установить действия изменения направления составляю­щей vx скорости мяча и моментальное изменение цвета мяча при столкно­вении:

vx=-(l-k)*vx;

tBounce = getTime();

Это изображено на рис. 17.

 
 

 

 


Рис. 16. Рисование перехода

 

Запустите модель на исполнение. Используя слайдеры, можно изменять ра­диус мяча, коэффициент потери скорости при встрече с препятствием, ус­корение свободного падения, превращая мяч в воздушный шар при g<о или в биллиардный шар при g=о.

 

 
 

 


Рис. 17. Свойства нового перехода