Языки программирования
<<  Введение в JAVA ООП на Delphi  >>
Inheritance Hierarchy of Geometric Shape Classes
Inheritance Hierarchy of Geometric Shape Classes
Line Example
Line Example
New Display
New Display
Arc Display
Arc Display
New Arc Display
New Arc Display
Картинки из презентации «Java Graphics» к уроку информатики на тему «Языки программирования»

Автор: Christopher. Чтобы познакомиться с картинкой полного размера, нажмите на её эскиз. Чтобы можно было использовать все картинки для урока информатики, скачайте бесплатно презентацию «Java Graphics.ppt» со всеми картинками в zip-архиве размером 269 КБ.

Java Graphics

содержание презентации «Java Graphics.ppt»
Сл Текст Сл Текст
1Java Graphics. CS 2511 Spring 2012. 14an abstract class with two concrete
2Swing Graphics. Empty Swing containers subclasses that are also inner classes:
have no visual appearance except for a Line2D.Double Line2D.Float A Line2D object
background color Every JComponent must represents a line segment in (x,y)
have a paintComponent method that is coordinate space. To create a line
called when the component is first made segment, first create its endpoints using
visible or needs to be redrawn for some the java.awt.geom.Point2D class.
reason The JPanel component is a 15Line Example. import java.awt.geom.*;
lightweight container, making it suitable ... public void paintComponent(Graphics g)
as a drawing area A common way to do { super.paintComponent(g); Graphics2D g2D
graphics is to extend the JPanel class and = (Graphics2D)g; Point2D.Double corner1 =
override the paintComponent method. new Point2D.Double(100, 50);
3The paintComponent Method. Called by Point2D.Double corner2 = new
the JVM when this component needs to be Point2D.Double(50, 150); Point2D.Double
redrawn A single argument, the component's corner3 = new Point2D.Double(150, 150);
graphics context (class: Graphics), is Line2D.Double side1 = new
passed when paintComponent is called A Line2D.Double(corner1, corner2);
Graphics object contains: the component on Line2D.Double side2 = new
which it draws the current color and font Line2D.Double(corner2, corner3);
location origin clipping information and Line2D.Double side3 = new
more. Line2D.Double(corner3, corner1);
4Graphics vs. Graphics2D. The Graphics g2D.draw(side1); g2D.draw(side2);
class has limitations: Cannot use real g2D.draw(side3); } ...
number coordinates Cannot draw dotted, 16An Easier Way: Polygons.
dashed, or variable-width lines Cannot java.awt.Polygon implements the Shape
easily draw complex curves or fill complex interface. Specify the x and y coordinates
shapes Cannot use textures or gradient of a closed polygon's vertices with the
colors to fill shapes The newer Graphics2D following constructor: Polygon(int[]
class extends Graphics and provides these xpoints, int[] ypoints, int npoints).
capabilities All GUI components use a import java.awt.*; ... public void
Graphics2D object but paintComponent paintComponent(Graphics g) {
passes a Graphics object for backward super.paintComponent(g); Graphics2D g2D =
compatibility. (Graphics2D)g; Polygon triangle = new
5General Approach. public class MyPanel Polygon(new int[] {100, 50, 150}, new
extends JPanel { // instance variables int[] {50, 150, 150}, 3);
public MyPanel() { // public constructor } g2D.draw(triangle); // produces same
// public methods // private helper triangles as before } ...
methods public void 17Rectangular Shapes. Abstract
paintComponent(Graphics g) { subclasses of RectangularShape:
super.paintComponent(g); Graphics2D g2d = Rectangle2D, RoundRectangle2D Ellipse2D,
(Graphics2D)g; // drawing messages sent to Arc2D Each has concrete .Double and .Float
g2d ... } }. subclasses Each constructor requires x,y
6The paintComponent Method. coordinate of upper left corner of
super.paintComponent(g) is called first to bounding rectangle, and also the
ensure that painting responsibilities rectangle's width and height Use draw to
defined in JPanel are carried out You draw an outline of the shape in the
should not call paintComponent directly; current color. Use fill to fill the shape
it is called by the JVM when it needs to with the current color.
You can indirectly call paintComponent on 18Additional Parameters for Rounded
a component by using component.repaint(). Rectangles. arcWidth. (x,y). arcHeight.
7Some Basic Graphics Methods. void height. width.
setColor(Color color) void setFont(Font 19Example. public void
font) void drawString(String text, int x, paintComponent(Graphics g) {
int y) (x,y)is the coordinate of the lower super.paintComponent(g); Graphics2D g2D =
left corner of the drawn string's leftmost (Graphics2D)g; Rectangle2D.Double rect1 =
character. new Rectangle2D.Double(25,25,100,100);
8Graphics Example. import g2D.setColor(Color.black);
javax.swing.*; import java.awt.*; public g2D.draw(rect1); RoundRectangle2D.Double
class GraphicsPanel extends JPanel { rect2 = new
public GraphicsPanel() { RoundRectangle2D.Double(50,50,100,100,80,3
setPreferredSize(new Dimension(200,200)); ); g2D.setColor(Color.green);
setBackground(Color.magenta); // panel g2D.fill(rect2); Ellipse2D.Double rect3 =
color } public void new Ellipse2D.Double(75,75,100,80);
paintComponent(Graphics g) { g2D.setColor(Color.blue); g2D.fill(rect3);
super.paintComponent(g); Graphics2D g2D = }.
(Graphics2D)g; g2D.setColor(Color.blue); 20New Display.
// drawing color g2D.setFont(new 21Additional Parameters for Arcs.
Font("Helvetica", Font.BOLD, Closure type for the arc: OPEN, CHORD, or
24)); g2D.drawString("Hello PIE. width. -270 90. (x,y). height. 0.
World", 25, 25); } }. ±180. 270 -90. angularExtent. startAngle.
9Graphics Example (cont'd). import 22Arc Example. public void
javax.swing.*; import java.awt.*; import paintComponent(Graphics g) {
java.awt.event.*; public class MainFrame super.paintComponent(g); Graphics2D g2D =
extends JFrame { public MainFrame() { (Graphics2D)g; Arc2D.Double arc = new
setSize(new Dimension(500,300)); Arc2D.Double(25,25,150,100,0,120,Arc2D.PIE
setLocation(100,100); ; g2D.setColor(Color.black);
addWindowListener(new WindowAdapter () { g2D.fill(arc); arc = new
public void windowClosing(WindowEvent e) { Arc2D.Double(25,25,150,100,120,120,Arc2D.P
dispose(); System.exit(0); } }); E); g2D.setColor(Color.green);
getContentPane().setLayout( new g2D.fill(arc); arc = new
FlowLayout(FlowLayout.CENTER)); Arc2D.Double(25,25,150,100,240,120,Arc2D.P
GraphicsPanel gp = new GraphicsPanel(); E); g2D.setColor(Color.orange);
getContentPane().add(gp); g2D.fill(arc); }.
setVisible(true); } public static void 23Arc Display.
main(String[] args) { new MainFrame(); } 24Arc Example Modified. public void
}. paintComponent(Graphics g) {
10Display. super.paintComponent(g); Graphics2D g2D =
11Notes On The Example. GraphicsPanel (Graphics2D)g; Arc2D.Double arc = new
extends JPanel so that the paintComponent Arc2D.Double(25,25,150,100,0,120,Arc2D.CHO
method can be overridden If you forget to D); g2D.setColor(Color.black);
call super's paintComponent method, you g2D.fill(arc); arc = new
can get pixels from another desktop frame Arc2D.Double(25,25,150,100,120,120,Arc2D.C
as background garbage The background color ORD); g2D.setColor(Color.green);
is associated with the panel; the paint g2D.fill(arc); arc = new
color with the Graphics2D object The Arc2D.Double(25,25,150,100,240,120,Arc2D.C
MainFrame class extends JFrame and an ORD); g2D.setColor(Color.orange);
instance of it is created in the main g2D.fill(arc); }.
method. 25New Arc Display.
12Drawing Shapes. You can draw any 26More Features. Other things you can do
object that implements the java.awt.Shape with Shapes: Check for containment of
interface. Example: suppose g2D is a points and rectangles Get bounding
Graphics2D object: Shape s = ...; rectangle Check for intersection with
g2D.draw(s); The Java library supplies a another bounding rectangle Other things
number of classes that implement the Shape you can do with 2D graphics contexts:
interface type. Change stroke properties Draw images
13Inheritance Hierarchy of Geometric Perform rotations, scalings, and
Shape Classes. translations.
14Line Shapes. java.awt.geom.Line2D is
Java Graphics.ppt
cсылка на страницу

Java Graphics

другие презентации на тему «Java Graphics»

«Библиотека шаблонов» - Итераторы ввода (input iterator). Что дает применение функторов. Общие свойства итераторов. Различают 5 типов итераторов. Основные концепции стандартной библиотеки шаблонов. Использование алгоритма. Пример использования итератора вывода. Адаптеры. Основные виды алгоритмов. Контейнеры. Реверсивные итераторы (reverse iterator).

«Построение диаграмм и графиков» - Рассмотреть пример. Отображение простейших геометрических фигур на форме обеспечивает компонент Shape. Рассмотреть пример построения графика функции y = Sin(x). Выбор типа диаграммы: Основные свойства компонента Shape: Перейти на пример. «Отображение графической информации в Delphi» План темы: Пример.

«Delphi» - Итак, начнем: Итак, мы создали свой простой, но работоспособный калькулятор. Edit для ввода и отображения цифр. Форма 3 (Вызов справки). Кнопка умножения. При нажатии на кнопку к тексту Edit-а прибавляется (приписывается) символ 1. Смотрим ->. Разместим на форме нужные нам компоненты: Кнопка сложения.

«Обработка событий в «Lazarus»» - Программное управление компонентом. Процедурно-ориентированные языки. Создайте приложение с меткой Label. Обработка события OnClick. Проанализируйте фрагмент программного кода. Обработчик события. Обработка событий. Работа с компонентом. Задание по созданию приложения. Рекомендации к оформлению кода программы.

«Классы объектов C» - Средства форматирования строк в С#. Length; x++) {. Ввод и вывод. Разрядность всех встроенных типов фиксирована и постоянна. Структурные типы. Для создания объекта используется слово «new». WnteLine(“'Arg: {0}", args[x]): } Console. System Object. Память для структурных типов выделяется из стека.

«Языки програмирования» - Общеобразовательная школа. Ассемблер. Основные системы программирования. Алгол. Визуальные среды быстрого проектирования. Языки программирования баз данных. Бейсик. Ошибки. Уровни языков программирования. Структурированный язык запросов SQL. Си++. Си Шарп. Машинный код. Расмус. Создание. Кобол. Языки программирования высокого уровня.

Языки программирования

23 презентации о языках программирования


130 тем