- •3.1 Лабораторна робота № 1. Створення JavaFx додатку. Авторизація користувачів.
- •Java Persistence api
- •3.1.1. Необхідне програмне забезпечення
- •3.1.2. Налаштування проекту JavaFx-додатку
- •3.1.3. Підключення бази даних
- •3.1.4. Створення моделей та їх маппінг за допомогою jpa
- •3.1.5. Створення допоміжного класу для роботи з моделями
- •3.1.6. Впровадження логіки авторизації користувача
- •3.2 Лабораторна робота № 2. Робота з медіа. Реалізація crud за допомогою jpa та TableView.
- •Медіа-програвач
- •Табличне представлення данних
- •3.2.1 Вдосконалення коду додатка
- •3.2.2 Створення інтерфейсу додатка
- •3.2.3 Створення медіа програвача
- •3.2.4 Впровадження можливості адміністрування користувачів
- •3.3 Лабораторна робота № 3. Використання вбудованого браузеру, будування графіків та створення анімації.
- •Акордеон
- •Анімація у JavaFx
- •Графіки
- •3.3.1 Інтегрування веб-браузеру до проекту
- •3.3.2 Створення графіків
- •3.3.3 Використання елементу акордіон для створення альтернативного варіанту панелі інструментів
- •3.3.4 Створення анімації кнопок
- •3.4 Лабораторна робота № 4. Технологія drag-and-drop у JavaFx-додатках. Використання стилів.
- •Drag-and-Drop
- •Стилювання додатку за допомогою css
- •3.4.1 Drag-and-Drop
- •3.4.2 Додавання можливості стилювання додатку
- •3.4.3 Створення стилів
- •3.5 Лабораторна робота № 5. Робота з JavaFx Scene Builder. 3-d трансформація у JavaFx. Розгортання додатку.
- •JavaFx Scene Builder
- •Трансформація у JavaFx
- •Розгортання JavaFx додатків
- •3.5.1 JavaFx Scene Builder
- •3.5.2 Створення логіки додатка
- •3.5.3 Розгортання додатка
3.5 Лабораторна робота № 5. Робота з JavaFx Scene Builder. 3-d трансформація у JavaFx. Розгортання додатку.
Мета роботи: Отримати навички створення інтерфейсу користувачів за допомогою інструменту JavaFX Scene Builder. Ознайомитись з особливостями 3-D анімації в JavaFX, навчитися розгортати JavaFX додатки на сервері.
КОРОТКІ ТЕОРЕТИЧНІ ВІДОМОСТІ
JavaFx Scene Builder
JavaFX Scene Builder являє собою засіб розробки інтерфейсів для платформи JavaFX. Це дозволяє простим перетягуванням компонентів на сцену та їх позиціонуванням створювати графічний інтерфейс користувача. При роботі з цим інструментом на виході розробники автоматично отримують FXML файл розробленого графічного інтерфейсу. JavaFX Scene Builder має простий та інтуїтивно зрозумілий інтерфейс, який може допомогти людям, які не мають навичок програмування, швидко створити прототип інтерактивного додатку, компоненти якого легко підключаються до логіки додатку.
Рис. 3.34. Інтерфейс JavaFX Scene Builder
В JavaFX Scene Builder деякі властивості елементів можна змінювати безпосередньо мишкою (перетягувати, міняти розмір тощо), іншу частину можна задати у вкладках Properties і Layout. Також для будь-якого компонента можна задати графічні ефекти типу відображення, тіні, розмиття та інше. Ще можна визначити CSS-стилі для компонентів. У вкладці Events для кожного компонента можна задати реакцію на події (клік, натискання клавіші). У режимі попереднього перегляду можна навіть взаємодіяти з макетом (наприклад вводити текст в RichEditor):
Трансформація у JavaFx
Трансформація (або перетворення) змінює місце графічного об'єкта в системі координат відповідно до визначених параметрів. В JavaFX підтримуються наступні види перетворень:
Translation (перетворення);
Rotation (обертання);
Scaling (масштабування);
Shearing (зсув).
Ці дії можуть бути застосовані до будь-якого окремого вузлу або групи вузлів. Можна об'єднувати перетворення і виконувати їх одночасно.
Усі перетворення знаходяться в пакеті javafx.scene.transform і підкласах класу Transform. Клас реалізує поняття афінних перетворень. Афінний клас розширює клас Transform і виступає в якості суперкласу для всіх перетворень. Афінні перетворення основані на евклідовій алгебрі, а також виконують лінійне відображення (за допомогою використання матриць) початкових координат в інші координати, зберігаючи прямолінійність і паралельність ліній. Афінні перетворення можуть бути побудовані з використанням observableArrayLists обертань, перетворень, масштабувань та зсувів.
Не рекомендується використовувати клас Affine напряму. Замість цього потрібно взаємодіяти через Translate, Scale, Rotate або Shear трансформації.
Перетворення в JavaFX може бути виконане за трьома координатами, що дозволяє користувачам створювати тривимірні (3-D) об'єкти і ефекти. JavaFX реалізовує Z-буферизацію для управління відображенням об'єктів «з глибини» в 3-D графіці. Z-буферизація забезпечує те, що перспектива у віртуальному світі буде така ж, як і в реальному: об'єкт на передньому плані загороджує відображення за ним. Z-буферизація може бути включена за допомогою setDepthTest класу.
Для спрощення використання перетворень JavaFX реалізує конструктори з двома параметрами (вісь x і вісь y) та з трьома (вісі х, у, z). Якщо потрібно створити двовимірний (2-D) ефект, то необхідно вказати тільки координати х і у. Якщо потрібен 3-D ефект, то вказуються всі три координати.
Для того, щоб побачити 3-D об'єкти та 3-D ефекти перетворень в JavaFX, потрібно включити підтримку перспективної камери.
