Отражения
Отражения
Нужно запрограммировать обработку отражений объекта от стенок. Для этого надо отслеживать текущую позицию объекта и направление движения. Когда объект достигнет края стенки, нужно изменить направление движения. Для начала упростим код программы, отвечающей за отражения. Пусть координаты объекта при движении увеличиваются на единицу, когда кусочек сыра движется вправо и вниз, и уменьшаются на единицу при движении влево и вверх. Новый код метода updatePositions приведен в листинге 11.8.
Листинг 11.8
/// <summary>
/// Направление движения по оси X
/// </summary>
private bool goingRight = true;
/// <summary>
/// Направление движения по оси Y
/// </summary>
private bool goingDown = true;
private void updatePositions() {
if (goingRight) {
cx++;
} else {
cx--;
}
if ((cx + cheeseImage.Width) >= this.Width) {
goingRight = false;
}
if (cx <= 0) {
goingRight = true;
}
if (goingDown) {
cy++;
} else {
cy--;
}
if ((cy + cheeseImage.Height ) >= this.Height) {
goingDown = false;
}
if (cy <= 0) {
goingDown = true;
}
}
Обратите внимание на то, что в коде используются ширина и высота изображения и экрана. Не прописывая жестко величины размеров экрана и изображения, мы можем быть уверенными в том, что программа будет работать корректно в устройствах с любыми разрешением экрана и размерами картинки.
После запуска приложения можно увидеть, что изображение сыра корректно отражается от краев экрана при перемещении.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Требования к информации, которая будет распространяться в ходе отражения информационного нападения
Требования к информации, которая будет распространяться в ходе отражения информационного нападения Из собственного опыта и наблюдения за успехами и просчетами чужих информационных войн в Интернете мы сделали вывод, что информация, которая будет подниматься в
Комментарии в блогах как инструмент отражения информационного нападения
Комментарии в блогах как инструмент отражения информационного нападения Мы уже отмечали, что каждый раз на той странице, где размещается комментарий зарегистрированного пользователя, появляется ник-гиперссылка, которая работает в интересах обоих – и того, кто
Публичные сервисы закладок как инструмент отражения информационного нападения
Публичные сервисы закладок как инструмент отражения информационного нападения Сервисы закладок приобретают популярность в Интернете. Они бесплатны и могут быть эффективно использованы для продвижения блога или сайта в поисковых системах.Основная задача подобных
Глава 5 Системы отражения атак
Глава 5 Системы отражения атак Причины появления и принцип действияЗащита компьютера с помощью Kaspersky Internet SecurityОбщественная система безопасности Prevx1Для защиты компьютерных систем в настоящее время разработано множество программ, выполняющих определенную задачу.
ТЕХНОЛОГИИ: Сила отражения
ТЕХНОЛОГИИ: Сила отражения Авторы: Константин Курбатов, avocetКогда вы заходите в серьезный фотомагазин, вы сразу чувствуете всенепременную любовь и уважение продавцов и консультантов. Они с удовольствием расскажут вам о достоинствах и недостатках зума на очередной
Василий Щепетнёв: Лечение отражения Василий Щепетнев
Василий Щепетнёв: Лечение отражения Василий Щепетнев Опубликовано 28 апреля 2011 года И раз, и два, и три, и ещё, ещё, ещё попадаются мне суждения о том, что великая литература умерла, театр пробавляется фарсами, кинематограф деградирует, а телевидение
Отражения нашего сознания
Отражения нашего сознания Автор: Дмитрий ШабановЧто качественно отличает нашу психику от психики наших родственников - других видов животных? Высокий интеллект? Но как провести рубеж между человечьим и нечеловечьим уровнями его развития? Язык, вторая сигнальная