рефераты рефераты
Главная страница > Курсовая работа: Простейшие часы на Java  
Курсовая работа: Простейшие часы на Java
Главная страница
Банковское дело
Безопасность жизнедеятельности
Биология
Биржевое дело
Ботаника и сельское хоз-во
Бухгалтерский учет и аудит
География экономическая география
Геодезия
Геология
Госслужба
Гражданский процесс
Гражданское право
Иностранные языки лингвистика
Искусство
Историческая личность
История
История государства и права
История отечественного государства и права
История политичиских учений
История техники
История экономических учений
Биографии
Биология и химия
Издательское дело и полиграфия
Исторические личности
Краткое содержание произведений
Новейшая история политология
Остальные рефераты
Промышленность производство
психология педагогика
Коммуникации связь цифровые приборы и радиоэлектроника
Краеведение и этнография
Кулинария и продукты питания
Культура и искусство
Литература
Маркетинг реклама и торговля
Математика
Медицина
Реклама
Физика
Финансы
Химия
Экономическая теория
Юриспруденция
Юридическая наука
Компьютерные науки
Финансовые науки
Управленческие науки
Информатика программирование
Экономика
Архитектура
Банковское дело
Биржевое дело
Бухгалтерский учет и аудит
Валютные отношения
География
Кредитование
Инвестиции
Информатика
Кибернетика
Косметология
Наука и техника
Маркетинг
Культура и искусство
Менеджмент
Металлургия
Налогообложение
Предпринимательство
Радиоэлектроника
Страхование
Строительство
Схемотехника
Таможенная система
Сочинения по литературе и русскому языку
Теория организация
Теплотехника
Туризм
Управление
Форма поиска
Авторизация




 
Статистика
рефераты
Последние новости

Курсовая работа: Простейшие часы на Java

throws IncorrectParametersException {

//проверяем диаметр

if(diam <= 0)

throw new IncorrectParametersException();

this.diam = diam;

this.dialColor = dialColor;

this.hairLineColor = hairLineColor;

//создаем рисунок

dial = new BufferedImage((int)diam, (int)diam,

BufferedImage.TYPE_INT_ARGB);

//создаем черточку на циферблате

Rectangle2D.Double r = new Rectangle2D.Double(-diam/40, -diam/60, diam/20, diam/30);

AffineTransform at = new AffineTransform();

//смещаем начало координат в центр циферблата

at.translate(diam/2, diam/2);

//сохраняем текущее преобразование

AffineTransform prev = (AffineTransform)at.clone();

//получаем графический контекст

Graphics2D g2 = dial.createGraphics();

//закрашиваем все заданным цветом

g2.setBackground(dialColor);

g2.clearRect(0, 0, (int)diam, (int)diam);

//устанавливаем цвет черточек

g2.setColor(hairLineColor);

//рисуем 12 штрихов

for(int i = 0; i < 12; i++)

{

//смещаем центр координат к краю циферблата (туда,

//где должен быть расположен штрих)

at.translate(-(diam/2 - r.width), 0);

//поворачиваем штрих относительно центра циферблата

at.rotate(Math.toRadians(30*i), diam/2 - r.width, 0);

//устанавливаем текущее преобразование

g2.setTransform(at);

//рисуем штрих

g2.fill(r);

//восстанавливаем начальное преобразование

at.setTransform(prev);

}

}

/**

* Возвращает изображение циферблата.

*

* @return BufferedImage рисунок, содержащий изображение циферблата

*/

public BufferedImage getClockDial() {

return dial;

}

}

// реализация класса IncorrectParametersException

package clock;

/*

* IncorrectParameters.java

*

* Created on май 2009 г.

* */

/**

*

* @author Бочкарева Мария

*/

public class IncorrectParametersException extends java.lang.Exception {

/**

          *

          */

         private static final long serialVersionUID = 1L;

         /**

* Creates a new instance of <code>IncorrectParameters</code> without detail message.

*/

public IncorrectParametersException() {

this("IncorrectParameters");

}

/**

* Constructs an instance of <code>IncorrectParameters</code> with the specified detail message.

* @param msg the detail message.

*/

public IncorrectParametersException(String msg) {

super(msg);

}

}

// реализация класса Needle

package clock;

/*

* Needle.java

*

* Created on май 2009 г.

*/

import java.awt.*;

import java.awt.geom.*;

/**

* Этот класс предназначен для создания стрелки часов

*

* @author Бочкарева Мария

*/

public class Needle {

private GeneralPath shape;

private double length, width;

/** Создает экземпляры класса <code>Needle</code>.

* При создании необходимо указать длину и ширину стрелки.

* Длина должна быть больше ширины.

*

* @param length длина стрелки

* @param width длина стрелки

*

* @exception IncorrectParametersException - если длина меньше или

* равна нулю, если ширина меньше или равна нулю, если длина

* меньше или равна ширине.

*/

public Needle(double length, double width)

throws IncorrectParametersException

/**

* Возвращает стрелку в виде объекта типа <code>Shape</code>.

* @return Shape - фигура, содержащая изображение стрелки

*/

public Shape getNeedle() {

return shape;

}

/**

* Возвращает центр вращения стрелки (точку, вокруг которой

* стрелка будет вращаться)

* @return Point2D.Double - точка, содержащая координаты центра вращения

* стрелки

*/

public Point2D.Double getRotationCenter() {

Point2D.Double rc = new Point2D.Double();

rc.x = rc.y = width/2;

return rc;

}

}


Страницы: 1, 2, 3, 4, 5

рефераты
Новости