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

Леонтьев вернулся в Россию из США ради концерта Крутого

Московское «Динамо» сыграет с «Амкалом» — победителем Медиалиги

Захарова назвала Штайнмайера безумным правителем после его инцидента с писателем

В квартире на севере Москвы взорвался газ, пострадали дети: что известно



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

Новости от 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

СМИ узнали о желании Трампа разорвать связи России, Китая, Ирана и КНДР

Лещенко в 95-летний юбилей Пахмутовой раскрыл секрет ее долголетия

Личка: «Команда умеет играть еще в два раза лучше»

Путин подписал закон о ратификации договора о всеобъемлющем партнерстве с КНДР

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

«Разрешаю»: Путин дал старт спуску универсального атомного ледокола

Маск призвал Демпартию США демонтировать построенный для его ареста ГУЛАГ

В Московской области сотрудники Росгвардии провели урок безопасности для школьников

Президент Путин: в Европе сейчас не хватает мозгов

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

МЧС России показало пожар в автомобильном сервисе на юго-востоке Москвы

шоферня продавщицы

«Динамо» дома обыграло «Пари НН» в матче РПЛ

Появилось видео пожара в доме на Карельском бульваре в Москве

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

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

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

Богданов борется за сердце Glukozы, а Хрусталев ищет кольцо Нефертити

Приговор вынесен, что дальше? Как сегодня живёт Анатолий Руденко, задержанный в такси с подозрительным свёртком

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

Российская теннисистка Анастасия Потапова сообщила о разводе

Вместо Джоковича на Итоговый турнир ATP поедет Андрей Рублев

Теннисистка Пегула снялась с итогового турнира WTA, ее заменит Касаткина

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

Moscow.media

Mozilla Foundation уволила 30% сотрудников на фоне большого штрафа в РФ

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

EVITA BEAUTY STORE - интернет-магазин косметики премиум-класса!

На Ямале водитель мусоровоза погиб при разгрузке отходов











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

Rss.plus






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

Два человека пострадали при взрыве газа в квартире на севере Москвы

шоферня продавщицы

Путин подписал документ о ратификации договора с КНДР о партнёрстве