Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

Терезелік графика негіздері Ж~мысты~ ма~саты Графикалы~ объектілер ж~не график

Работа добавлена на сайт samzan.net:


№1 зертханалық жұмыс .

          Терезелік графика негіздері

  1.  Жұмыстың мақсаты

Графикалық объектілер және графикалық контекст жөнінде негізгі түсініктерді игеру. Түстермен жұмы жасап үйрену. Қаріптер жайлы негізгі мағлұматтар. Кесінді, тіктөртбұрыш, дөңгелек, көпбұрыш және т.б. объектілерді сызудың графикалық әдістерін игеру. Graphics2D классының  кесінді, тіктөртбұрыш, дөңгелек, көпбұрыш және т.б. объектілерді сызуға аврналған әдістерін игеру.  Paint және Stroke класстарының фигураларды экранға  Graphics2D классының көмегімен шығаруды игеру.

  1.  Алдын-ала қаралатын материалдар
  2.   1-2 дәріс
  3.  Х.Дейтел Как программировать на С. Введение в С++ и Java, глава 28, стр.1005-1030

3. Негізгі әдістердің қысқаша сипаттамасы

Java тілінің графикалық құралдары екі пакет көмегімен іске асырылады:

  •  AWT (қол жеткізу үшін  java.awt пакеті іске қосылады) графикалық операцияларды орындауға және басқару элементтерін құрастыруға арналған класстар жиынтығынан тұрады.
  •  Swing (қол жеткізу үшін import.javax.swing пакеті іске қосылады) AWT сәйкес жаңа класстардан тұрады. Бұл класстардың аттарына  J әріпі қосылады (JButton, JLabel және  т.б.).

Java тілінде графикамен және тереземен жұмыс апплеттер немесе графикалық қосымшалар арқылы орындалады. Графикалық қосымшалар Window классынан туындаған Frame классының туындысын қолданады.

1.1 сурет. Негізгі графикалық компоненттер классының иерархиясы.

Component суперклассы визуалды компоненттердің барлық атрибуттарын инкапсуляциялайтын абстракты класс болып саналады. Бұл класстан туындаған Container ішкі классы барлық компоненттердің орналасуына және оларды енгізуге жауап береді.  Container классынан Panel және Window класстары туындайды.

Графикалық қосымшалар Window класс қолданады, бірақ объектілерді шағару үшін бұл класс тікелей қолданылмайды. Бұл үшін оның ішкі классы Frame қолданылады. Frame объектісінің көмегімен тақырып, меню жолдары бар стандартты терезе құрастырылады.

Қосымшаларда қолданылатын графикалық әдістер – бұл java.awt пакетіндегі  базалық Graphics классының әдістері. Осы класстың кейбір әдістері:

 drawLine(int x1, int y1, int x2, int y2) – кесінді сызады;

drawRect(int x, int y, int width, int height) және fillRect(int x, int y, int width, int height) - тіктөртбұрыш және іші боялған тіктөртбұрыш сызады;

draw3DRect(int x, int y, int width, int height, boolean raised) - үш өлшемді тіктөртбұрыш сызады;

drawRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight) - төбелері дөңгелектелген тіктөртбұрыш сызады;

drawOval(int x, int y, int width, int height) - дөңгелек (овал) сызады;

drawPolygon(int[] xPoints, int[] yPoints, int nPoints) - x және y координаталары массив арқылы берілген полигон (көпбұрыш) сызады;

drawPolygon(Polygon p) - Polygon объекті арқылы берілген полигон (көпбұрыш) сызады;
     drawPolyline(int[] xPoints, int[] yPoints, int nPoints)
- x және y координаталары массив арқылы берілген кесінділер тізбегін сызады;

drawArc(int x, int y, int width, int height, int startAngle, int arcAngle) - шеңбер доғасын сызады;

drawImage(Image img, int x, int y, Color bgcolor, ImageObserver observer) - сурет енгізеді;

drawString(String str, int x, int y) - мәтін жолын салады;

setColor(Color c), getColor() - ағымдағы түсты анықтайды және қайтарады;

getFont() - ағымдағы қаріпті қайтарады;

setFont(Font font) - көрсетілген қаріпті орнатады.

Қосымшаның графикалық интерфейсін құрастыру үшін оған Frame немесе JFrame объектісін беру керек. Мұндай қосымша main() әдісінің көмегімен іске қосылады.

//  # 1 мысал: мәтін, кесінді және дөңгелек салу: WindowApp.java

import java.awt.*;

import java.awt.event.*;

public class WindowApp extends Frame{

  String msg = "Window-Application";

  int x1 = 30, y1 = 50, x2 = 200, y2 = 50;

public void paint(Graphics g){

g.drawString(msg, 30, 40); /*вывод строки с позиции х=30 y=40*/

g.drawLine(x1, y1, x2, y2);//вывод линии

 int x = 30, y = 200, width = 150, height = 100;

Color c = new Color(255, 100, 100);/* установка красного цвета */

g.setColor(c);

g.drawOval( x, y, width, height);//овал

g.drawArc (x + 100, y + 50, width - 50,  height, 0, 360);//сектор

}

public static void main(String args[]){

    WindowApp fr = new WindowApp();

fr.setSize(new Dimension(500, 400));/*устанавливается размер окна*/

fr.setTitle("awt-Application");//заголовок

fr.setVisible(true); //видимость

fr.repaint(); //перерисовка - вызов paint()

 }

 }

Метод main() тәсілі терезе параметрлерін анықтайтын тәсілді және терезені қайталап салу тәсілі repaint() шақырады. Frame классының көптеген тәсілдері Component, Container және Window класстарынан мұрағатталады. Swing кітапханасындағы JFrame классы Frame классының ішкі классы болып саналады.

4. Жеке тапсырма нұсқалары

  1.  Қосымша терезесінде кез келген кездейсоқ түсті (random арқылы) 30000 нүкте салыңыз.
  2.  Қосымша терезесіннің жоғарғы жағына қызыл түсті төртбұрыш салып, оның ішіне “Алматы, Астана – бас қалалар” деген сөзді көк түспен жазыңыз.
  3.  Қосымша терезесіннің ортасына және төрт бұрышына бес сақина тәрізді сурет салыңыздар, олардың ішін әртүрлі түске бояңыз.
  4.  Қосымша терезесіннің ортасына бірінің ішіне бірі орналасқан он эллипс салып олардың аралықтарын әртүрлі түспен бояп шығыңыз.
  5.  Сфераның  моделін баспаға беретін программа жазыңыз
  6.  Қосымша терезесінде қозғалып келе жатқан машинаның түрін алыңыз.
  7.  Қосымша терезесінде өзінің бастапқы немесе соңғы нүктксінің айналасында айналып тұрған кесінді сызыңыз. Кесінді бір координатадан екінші координатаға ауысқан сайын түсін өзгертетін болсын.
  8.  Қосымша терезесінде кесінді бойымен жылжып отыратын нүкте айналасында айналып тұрған кесінді сызыңыз.
  9.  Қосымша терезесінде өзінің центірі айналасында айналып тұратын тіктөртбұрыш сызыңыз.
  10.  Қосымша терезесінде өзінің төбелерінің бірінің айналасында айналып тұратын тіктөртбұрыш сызыңыз.
  11.  Қосымша терезесінде өзінің центірі айналасында айналып тұратын әржақты үшбұрыш сызыңыз.

5. Жұмысты тапсыруға қойылатын талаптар

Зертханалық жұмыста:

  •  программа мәтіні;
  •  программа жұмысының нәтижесі болуы керек  




1. Нормативность правовой системы
2. Хлебозаготовки в 1927-1929 годах
3. Сергей Есенин - Не жалею не зову не плач
4. Россия как единое политическое сообщество народов
5. модуль С 13.01 по 23
6. ЭВОЛЮЦИЯИЯ МЕНЕДЖМЕНТА
7. Психологические аспекты анализа категории возраста
8. Задание 1. Разработать технологию изготовления пальца шарового рулевой тяги дорожного катка ДУ54М
9. Налоговые ставки по налогу на доходы физических лиц
10. тема зажигания батареи состоит из двойных регенераторов расположенных под каждой печной камерой.
11. Разнообразие схемных решений оптических приемников относится ко всему фотоприемному устройству в то врем
12. Вариант 3 Содержание
13. О судебной практике по делам о злоупотреблении должностными полномочиями и о превышении должностных полном
14. НИОСТ Ашеров Роман Витальевич 133 5715 245 100 165
15. ПОЯСНИТЕЛЬНАЯ ЗАПИСКА Программа студии Акварелька реализуется в рамках деятельности МОУДОД Центр де
16. Твори добро Актуальность
17. Понятие денежного оборота
18. Лабораторна робота 2 Підготовка зразка грунту до аналізу
19. тема политикоправовых административных экономических и социальных отношений в государстве которая устан
20. Белорусский государственный университет информатики и радиоэлектроники Кафедра иностранных