Добавить новость

Первенство по плаванию среди юниоров округа прошло в Химках

Клуб юных предпринимателей открыли на базе школы № 9 в Лобне

тока квариры отнимать овраге умират без них что они сделали

«Динамо» Москва — «Пари НН» — 3:1. Видеообзор матча РПЛ



Новости сегодня

Новости от TheMoneytizer

Активити с OpenGL и изометрической сеткой (Android, OpenGL ES)

Необходимо разработать активити с выводом OpenGL ES контекста и отрисовки в нём изометрической сетки по требованиям ниже.

Спецификация окружения

Android
Android 7.0

Kotlin

Kotlin 2.0.0.

OpenGL ES

OpenGL ES 3.2.

Требования

Макет активности
Активность "Designer" должна состоять из трех верхнеуровневых UI элементов:
  • Заголовок (Header)
  • Подвал (Footer)
  • Холст (Canvas)
Заголовок (Header)
Элемент заголовка должен быть размещен в верхней части активности и иметь высоту 50 пикселей.
Элемент заголовка должен служить контейнером для других UI элементов.
Фон элемента заголовка должен быть цвета #383838.

Подвал (Footer)

Элемент подвала должен быть размещен в нижней части активности и иметь высоту 50 пикселей.
Элемент подвала должен служить контейнером для других UI элементов.
Фон элемента подвала должен быть цвета #383838.

Холст (Canvas)

Элемент холста должен быть размещен в центре активности и заполнять все пространство между заголовком и подвалом.
Элемент холста должен служить контейнером для контекста рисования (OpenGL контекст) и других UI элементов (например, кнопок), расположенных поверх этого контекста.
Элемент холста должен состоять из следующих верхнеуровневых UI элементов:
  • Контекст рисования
  • Элементы управления масштабированием
Контекст рисования
Контекст рисования должен заполнять все пространство элемента холста.
Контекст рисования должен использоваться для рендеринга OpenGL контекста.
Контекст рисования должен рисовать изометрическую сетку (или Сетку).
Сетка должна рисоваться как набор линий в соответствии с изометрической проекцией.
Линии сетки для оси X должны быть параллельны этой оси, лежать в плоскости осей X и Y и рисоваться с интервалом в 1 единицу вдоль оси Y.
Линии сетки для оси Y должны быть параллельны этой оси, лежать в плоскости осей X и Y и рисоваться с интервалом в 1 единицу вдоль оси X.
Линии сетки для оси Z должны быть параллельны этой оси, лежать в плоскости осей X и Z и рисоваться с интервалом в 1 единицу вдоль оси X.
Линии сетки должны рисоваться от координаты 0 до 100 и -100 для всех осей.
Пространство просмотра (камера) должно быть повернуто вокруг центра координат в соответствии с правилами изометрической проекции и следующими условиями:
  • Положительное направление оси X должно указывать на нижний левый угол экрана.
  • Положительное направление оси Y должно указывать на нижний правый угол экрана.
  • Положительное направление оси Z должно указывать на верх экрана.
Пространство просмотра (камера) должно быть наклонено примерно на 35,264 градуса в соответствии с правилами изометрической проекции.
Фоновый цвет контекста рисования должен быть цвета #181818.
Линии сетки контекста рисования должны быть цвета #2c2c2c.

Элементы управления масштабированием

Элементы управления масштабированием должны быть размещены вертикально в правом верхнем углу элемента холста.
Элементы управления масштабированием должны быть реализованы в виде кнопок + и -.
Эти кнопки должны отображаться с фоновым цветом #383838, значением прозрачности 0.7 и цветом текста #FFFFFF.

Взаимодействие с холстом

Перемещение
Перемещение пространства просмотра должно быть реализовано с помощью касания (с удержанием) и перемещения.

Масштабирование

Масштабирование пространства просмотра должно быть реализовано с использованием элементов управления масштабированием и жеста сведения/разведения пальцев.
В случае использования элементов управления масштабированием, пространство просмотра должно быть увеличено или уменьшено на 1 единицу OpenGL соответственно, в зависимости от направления масштабирования.
В случае использования жеста сведения/разведения пальцев, пространство просмотра должно масштабироваться аналогично большинству приложений с картами.

Центрирование

Центрирование пространства просмотра должно быть реализовано с использованием кнопки "Center", размещенной в элементе заголовка. Эта кнопка должна отображаться с фоновым цветом #383838 и цветом текста #FFFFFF.
При нажатии на эту кнопку, пространство просмотра должно перемещаться к центру координат.

Включение и выключение отображения сетки
Переключение отображения сетки должно быть реализовано с использованием кнопки "Grid", размещенной в элементе заголовка.
Эта кнопка должна отображаться с фоновым цветом #383838 и цветом текста #FFFFFF.

Читайте на 123ru.net


Новости 24/7 DirectAdvert - доход для вашего сайта



Частные объявления в Вашем городе, в Вашем регионе и в России



Smi24.net — ежеминутные новости с ежедневным архивом. Только у нас — все главные новости дня без политической цензуры. "123 Новости" — абсолютно все точки зрения, трезвая аналитика, цивилизованные споры и обсуждения без взаимных обвинений и оскорблений. Помните, что не у всех точка зрения совпадает с Вашей. Уважайте мнение других, даже если Вы отстаиваете свой взгляд и свою позицию. Smi24.net — облегчённая версия старейшего обозревателя новостей 123ru.net. Мы не навязываем Вам своё видение, мы даём Вам срез событий дня без цензуры и без купюр. Новости, какие они есть —онлайн с поминутным архивом по всем городам и регионам России, Украины, Белоруссии и Абхазии. Smi24.net — живые новости в живом эфире! Быстрый поиск от Smi24.net — это не только возможность первым узнать, но и преимущество сообщить срочные новости мгновенно на любом языке мира и быть услышанным тут же. В любую минуту Вы можете добавить свою новость - здесь.




Новости от наших партнёров в Вашем городе

Ria.city

Мавзолей Кобланды Батыра: легенда, воплощённая в камне

На трех улицах Москвы пропал свет

Shot: Причиной взрыва на севере Москвы могло стать средство от тараканов

Синоптик Леус: метеорологическая зима в Москве начнется в конце ноября

Музыкальные новости

Кудерметова в паре с Чжань Хаоцин вышли в полуфинал итогового турнира WTA

В России вновь пройдет культурно-благотворительный фестиваль детского творчества «Добрая волна»

Meta-funded regulator for AI disinformation on Meta's platform comes under fire: 'You are not any sort of check and balance, you are merely a bit of PR spin'

Джиган, Artik & Asti и NILETTO спели о худи, а Дина Саева стала новым артистом: в Москве прошел BRUNCH Rocket Group

Новости России

тока квариры отнимать овраге умират без них что они сделали

Авторитет Скорпиона: Что ждёт мир и Россию в гороскопе Тамары Глобы на ноябрь 2024 года

От Провена до Труа: чем хороша провинциальная Франция

Прокуратура взяла на контроль ЧП со взрывом газа в Москве

Экология в России и мире

В День народного единства группа «ПЯТЕRО» представила премьеру песни «Одна и навсегда»

Во всероссийском этапе чемпионата «Абилимпикс» «золото» дали одиннадцатикласснику из Бутово

Юные морские пехотинцы посетили отель Yalta Intourist

5 типов алкоголиков: к какому можно отнести вас

Спорт в России и мире

Финал теннисного Итогового турнира WTA пройдет без первой ракетки мира Соболенко

Даниил Медведев станет самым возрастным участником Итогового турнира — 2024

Касаткина сыграет на Итоговом турнире WTA после снятия Пегулы

Русские ракетки развели по углам // Даниил Медведев и Андрей Рублев попали в разные группы на Nitto ATP Finals

Moscow.media

Freedom Holding Corp. увеличил выручку на 33% и купил SilkNetCom

История про Кошку и её Человека

Функциональные и тихие: две клавиатуры от A4Tech для комфортной работы

Радуга. Начало июля











Топ новостей на этот час

Rss.plus






Shot: Причиной взрыва на севере Москвы могло стать средство от тараканов

тока квариры отнимать овраге умират без них что они сделали

Клуб юных предпринимателей открыли на базе школы № 9 в Лобне

Стратегия Broken Arrow про войну НАТО и России скоро выйдет в ОБТ