|
Spec-Zone .ru
спецификации, руководства, описания, API
|
Java 2D™ API обеспечивает несколько классов, которые определяют общие геометрические объекты, такие как точки, строки, кривые, и прямоугольники. Эти классы геометрии являются частью java.awt.geom пакет.
интерфейс определяет методы для того, чтобы получить элементы от пути.
интерфейс обеспечивает ряд методов для описания и осмотра геометрических объектов пути. Этот интерфейс реализуется class и другие классы геометрии.
Все примеры, представленные в этом разделе, создают конфигурации при использовании java.awt.geom пакет и затем представляет их при использовании class. Чтобы начать Вы получаете a Graphics2D объект, например бросая Graphics параметр paint() метод.
public void paint (Graphics g) {
Graphics2D g2 = (Graphics2D) g;
...
}
class создает точку, представляющую расположение в (x, y)
//Create Point2D.Double Point2D.Double point = new Point2D.Double(x, y);
Чтобы создать точку с координатами 0,0, Вы используете конструктора по умолчанию, Point2D.Double().
Можно использовать setLocation метод, чтобы установить позицию точки следующим образом:
setLocation(double x, double y) – Установить расположение точки - определяющие координаты как двойные значения.setLocation(Point2D p) – Установить расположение точки, используя координаты другой точки.Кроме того, Point2D У class есть методы, чтобы вычислить расстояние между текущей точкой и точкой с данными координатами, или расстояние между двумя точками.
Line2D class представляет линейный сегмент в (x, y) координатное пространство. Line2D. Float и Line2D.Double подклассы определяют строки в и двойной точности плавающей. Например:
// draw Line2D.Double g2.draw(new Line2D.Double(x1, y1, x2, y2));
![]()
Этот class включает несколько setLine() методы, чтобы определить конечные точки строки.
Aternatively, конечные точки строки могли быть определены при использовании конструктора для Line2D.Float class следующим образом:
Line2D.Float(float X1, float Y1, float X2, float Y2)Line2D.Float(Point2D p1, Point2D p2)Используйте
java.awt.geom пакет позволяет Вам создать квадратный или кубический сегмент кривой.
QuadCurve2D class реализует Shape интерфейс. Этот class представляет квадратный параметрический сегмент кривой в (x, y) координатное пространство. QuadCurve2D.Float и QuadCurve2D.Double подклассы определяют квадратную кривую в и двойной точности плавающей.
Несколько setCurve методы используются, чтобы определить две конечных точки и контрольную точку кривой, координаты которой могут быть определены непосредственно координатами других точек и при использовании данного массива.
Очень полезный метод, setCurve(QuadCurve2D), устанавливает квадратную кривую с теми же самыми конечными точками и контрольной точкой как предоставленная кривая. Например:
// create new QuadCurve2D.Float QuadCurve2D q = new QuadCurve2D.Float(); // draw QuadCurve2D.Float with set coordinates q.setCurve(x1, y1, ctrlx, ctrly, x2, y2); g2.draw(q);

class также реализует интерфейс. Этот class представляет кубический параметрический сегмент кривой в (x, y) координатное пространство. CubicCurve2D.Float и CubicCurve2D.Double подклассы определяют кубическую кривую в и двойной точности плавающей.
CubicCurve2D У class есть подобные методы для того, чтобы установить кривую как QuadraticCurve2Dclass, кроме со второй контрольной точкой. Например:
// create new CubicCurve2D.Double
CubicCurve2D c = new CubicCurve2D.Double();
// draw CubicCurve2D.Double with set coordinates
c.setCurve(x1, y1, ctrlx1,
ctrly1, ctrlx2, ctrly2, x2, y2);
g2.draw(c);

Классы, которые определяют примитивы, представленные в следующем примере, расширяются RectangularShape class, который реализует Shape взаимодействуйте через интерфейс и добавляет несколько собственных методов.
Эти методы позволяют Вам получить информацию о расположении формы и размере, исследовать центральную точку прямоугольника, и установить границы формы.
class представляет прямоугольник, определенный расположением (x, y) и размерность (w x h). Rectangle2D.Float и Rectangle2D.Double подклассы определяют прямоугольник в и двойной точности плавающей. Например:
// draw Rectangle2D.Double
g2.draw(new Rectangle2D.Double(x, y,
rectwidth,
rectheight));
![]()
class представляет прямоугольник с закругленными углами, определенными расположением (x, y), размерность (w x h), и width и height угловой дуги. RoundRectangle2D.Float и RoundRectangle2D.Double подклассы определяют круглый прямоугольник в и двойной точности плавающей.
Округленный прямоугольник определяется со следующими параметрами:
Установить расположение, размер, и дуги a RoundRectangle2D объект, используйте метод setRoundRect(double a, double y, double w, double h, double arcWidth, double arcHeight). Например:
// draw RoundRectangle2D.Double
g2.draw(new RoundRectangle2D.Double(x, y,
rectwidth,
rectheight,
10, 10));
![]()
class представляет эллипс, определенный ограничительным прямоугольником. Ellipse2D.Float и Ellipse2D.Double подклассы определяют эллипс в и двойной точности плавающей.
Эллипс полностью определяется расположением, width и height. Например:
// draw Ellipse2D.Double
g2.draw(new Ellipse2D.Double(x, y,
rectwidth,
rectheight));
![]()
Чтобы потянуть часть эллипса, Вы используете class. Этот class представляет дугу, определенную ограничительным прямоугольником, углом запуска, угловой степенью, и типом закрытия. Arc2D.Float и Arc2D.Double подклассы определяют эллипс в и двойной точности плавающей.
Arc2D class определяет следующие три типа дуг, представленных соответствующими константами в этом class: ОТКРЫТЫЙ, КРУГ и АККОРД.

Несколько наборов методов размер и параметры дуги:
Point2D и Dimension2DArc2DКроме того, можно использовать setArcByCenter метод, чтобы определить дугу от центральной точки, данной ее координатами и радиусом.
// draw Arc2D.Double
g2.draw(new Arc2D.Double(x, y,
rectwidth,
rectheight,
90, 135,
Arc2D.OPEN));

спецификация.