Побудова графіків функцій на основі візуального інтерфейсу аплетів Java
Мета лабораторної роботи: навчитися будувати графіки функцій, використовуючи стандартні засоби, що надаються бібліотекою Java Java.
Спробуймо навчитися будувати графіки, використовуючи аплети Java. Відразу слід зазначити, що існує безліч платних і безкоштовних бібліотек, що реалізують різні прийоми побудови графіків. Наприклад, така відома річ, як jfreechart. Але наше завдання – розібратися із принципами побудови графіків із використанням стандартного інструментарію.
Для малювання графіка необхідно вирішити, де він буде в принципі розташовуватися. Не ускладнюватимемо завдання і намалюємо наш графік безпосередньо на «поверхні» основного вікна аплету. Для цього використовуємо клас Graphics. При запуску аплету використовуємо метод paint безпосередньо малювання графіка. Наш початковий код виглядатиме приблизно так:
import java.applet. *;
import java.awt. *;
public class MyAppletextends Applet
public void paint(Graphics g)
Цей код створить порожнє вікно аплету. Тепер потрібно намалювати графік. Спершу треба згадати принципи малювання на екрані, які загалом практично однакові будь-якої мови програмування. Верхня ліва точка екрана (у нашому випадку – вікна аплета) є нулем декартової двовимірної системи координат. Негативні точки за замовчуванням на екрані не відображаються (що природно), позитивний напрямок x – вправо, y – вниз (рис.7). Це дещо не збігається із звичним виглядом декартової системи координат.

Для початку потрібно вирішити, якого розміру буде наш графічний аплет. Нехай розмір буде 800 на 800 пікселів. Відразу ж намалюємо осі координат. Нехай вісь абсцис знаходиться посередині (координата y = 400), а вісь ординат-на 10 пікселів від лівого краю екрана (координата x = 10). Для малювання ліній використовуємо метод drawLine. Аргументи методу – 4 координати (x0, y0, x1, y1), що задають дві точки. Відповідно, на контейнері буде намальовано відрізок, що проходить через дві точки. Код, що задає розмір контейнера-аплета та осі координат, буде виглядати так:
this.setSize(800, 800);
g.drawLine(10, 0, 10, 800);
g.drawLine(0, 400, 800, 400);
Тепер перейдемо безпосередньо до малювання графіка. Нехай буде графік функції 350* cos (0.05*x). Для виклику математичної функції використовується клас Math. Оскільки він входить у стандартний пакет Java, його не потрібно підключати за допомогою інструкції import. При виклику функції потрібно уважно дивитися тип аргументів нею і у разі потреби наводити тип. Так, функція cos класу Math, як і більшість інших функцій, працюють із аргументами типу double. Ми будемо підставляти як аргумент змінну циклу, проте вона буде цілісного типу (int). У цьому випадку нас рятує те, що ми множимо аргумент на 0.05, що автоматично приведе результат типу double. Однак малювати графік будемо за допомогою того ж методу drawLine, а його аргументи мають бути цілими. Для цього доведеться наводити результат до типу int. Для перебору значень аргументу x організуємо цикл за допомогою інструкції for. Отже, код для побудови власне графіка функції:
for (int i=1; i