Spec-Zone .ru
спецификации, руководства, описания, API
|
public final class LinearGradientPaint extends MultipleGradientPaint
LinearGradientPaint
класс обеспечивает способ заполнить a Shape
с линейным цветным образцом градиента. Пользователь может определить два или больше цвета градиента, и эта краска обеспечит интерполяцию между каждым цветом. Пользователь также определяет, запускаются и конечные точки, которые определяют, где в пространстве пользователя цветной градиент должен начаться и закончиться. Пользователь должен предоставить массиву плаваний, определяющих, как распределить цвета вдоль градиента. Эти значения должны колебаться от 0.0 до 1.0 и действие как ключевые кадры вдоль градиента (они отмечают, где градиент должен быть точно определенным цветом).
Когда пользователь не устанавливает первое значение ключевого кадра, равное 0, и/или последний ключевой кадр оценивают равный 1, ключевые кадры будут создаваться в этих позициях, и первые и последние цвета будут тиражированы там. Так, если пользователь определяет следующие массивы, чтобы создать градиент:
{Color.BLUE, Color.RED}, {.3f, .7f}это будет преобразовано в градиент со следующими ключевыми кадрами:
{Color.BLUE, Color.BLUE, Color.RED, Color.RED}, {0f, .3f, .7f, 1f}
Пользователь может также выбрать что действие LinearGradientPaint
объект берет, когда он заполняет пространство вне запуска и конечных точек, устанавливая CycleMethod
к также REFLECTION
или REPEAT
. Расстояния между любыми двумя цветами в любой из отраженных или повторных копий градиента являются тем же самым как расстоянием между теми теми же самыми двумя цветами между запуском и конечными точками. Отметьте, что некоторые незначительные изменения в расстояниях могут произойти из-за выборки при гранулярности пикселя. Если никакой метод цикла не определяется, NO_CYCLE
будет выбран по умолчанию, что означает, что цвета конечной точки будут использоваться, чтобы заполнить остающуюся область.
colorSpace параметр позволяет пользователю определять, в котором colorspace интерполяция должна быть выполнена, значение по умолчанию sRGB или линеаризовавший RGB.
Следующий код демонстрирует типичное использование LinearGradientPaint
:
Point2D start = new Point2D.Float(0, 0); Point2D end = new Point2D.Float(50, 50); float[] dist = {0.0f, 0.2f, 1.0f}; Color[] colors = {Color.RED, Color.WHITE, Color.BLUE}; LinearGradientPaint p = new LinearGradientPaint(start, end, dist, colors);
Этот код создаст a LinearGradientPaint
который интерполирует между красным и белым для первых 20 % градиента и между белым и синим для остающихся 80 %.
Это изображение демонстрирует пример кода выше для каждого из трех методов цикла:
Paint
, Graphics2D.setPaint(java.awt.Paint)
MultipleGradientPaint.ColorSpaceType, MultipleGradientPaint.CycleMethod
BITMASK, OPAQUE, TRANSLUCENT
Конструктор и Описание |
---|
LinearGradientPaint(float startX, float startY, float endX, float endY, float[] fractions, Color[] colors)
Конструкции a
LinearGradientPaint со значением по умолчанию NO_CYCLE повторение метода и SRGB цветовое пространство. |
LinearGradientPaint(float startX, float startY, float endX, float endY, float[] fractions, Color[] colors, MultipleGradientPaint.CycleMethod cycleMethod)
Конструкции a
LinearGradientPaint со значением по умолчанию SRGB цветовое пространство. |
LinearGradientPaint(Point2D start, Point2D end, float[] fractions, Color[] colors)
Конструкции a
LinearGradientPaint со значением по умолчанию NO_CYCLE повторение метода и SRGB цветовое пространство. |
LinearGradientPaint(Point2D start, Point2D end, float[] fractions, Color[] colors, MultipleGradientPaint.CycleMethod cycleMethod)
Конструкции a
LinearGradientPaint со значением по умолчанию SRGB цветовое пространство. |
LinearGradientPaint(Point2D start, Point2D end, float[] fractions, Color[] colors, MultipleGradientPaint.CycleMethod cycleMethod, MultipleGradientPaint.ColorSpaceType colorSpace, AffineTransform gradientTransform)
Конструкции a
LinearGradientPaint . |
Модификатор и Тип | Метод и Описание |
---|---|
PaintContext |
createContext(ColorModel cm, Rectangle deviceBounds, Rectangle2D userBounds, AffineTransform transform, RenderingHints hints)
Создает и возвращает a
PaintContext используемый, чтобы генерировать линейный цветной образец градиента. |
Point2D |
getEndPoint()
Возвращает копию конечной точки оси градиента.
|
Point2D |
getStartPoint()
Возвращает копию стартовой точки оси градиента.
|
getColors, getColorSpace, getCycleMethod, getFractions, getTransform, getTransparency
public LinearGradientPaint(float startX, float startY, float endX, float endY, float[] fractions, Color[] colors)
LinearGradientPaint
со значением по умолчанию NO_CYCLE
повторение метода и SRGB
цветовое пространство.startX
- X координат стартовой точки оси градиента в пространстве пользователяstartY
- координата Y стартовой точки оси градиента в пространстве пользователяendX
- X координат конечной точки оси градиента в пространстве пользователяendY
- координата Y конечной точки оси градиента в пространстве пользователяfractions
- числа в пределах от 0.0 к 1.0 определениям распределения цветов вдоль градиентаcolors
- массив цветов, соответствующих каждому дробному значениюNullPointerException
- если fractions
массив является нулем, или colors
массив является нулем,IllegalArgumentException
- если запускаются, и конечные точки являются теми же самыми точками, или fractions.length != colors.length
, или colors
меньше чем 2 в размере, или a fractions
значение - меньше чем 0.0 или больше чем 1.0, или fractions
не обеспечиваются в строго увеличивающемся порядкеpublic LinearGradientPaint(float startX, float startY, float endX, float endY, float[] fractions, Color[] colors, MultipleGradientPaint.CycleMethod cycleMethod)
LinearGradientPaint
со значением по умолчанию SRGB
цветовое пространство.startX
- X координат стартовой точки оси градиента в пространстве пользователяstartY
- координата Y стартовой точки оси градиента в пространстве пользователяendX
- X координат конечной точки оси градиента в пространстве пользователяendY
- координата Y конечной точки оси градиента в пространстве пользователяfractions
- числа в пределах от 0.0 к 1.0 определениям распределения цветов вдоль градиентаcolors
- массив цветов, соответствующих каждому дробному значениюcycleMethod
- также NO_CYCLE
, REFLECT
, или REPEAT
NullPointerException
- если fractions
массив является нулем, или colors
массив является нулем, или cycleMethod
нульIllegalArgumentException
- если запускаются, и конечные точки являются теми же самыми точками, или fractions.length != colors.length
, или colors
меньше чем 2 в размере, или a fractions
значение - меньше чем 0.0 или больше чем 1.0, или fractions
не обеспечиваются в строго увеличивающемся порядкеpublic LinearGradientPaint(Point2D start, Point2D end, float[] fractions, Color[] colors)
LinearGradientPaint
со значением по умолчанию NO_CYCLE
повторение метода и SRGB
цветовое пространство.start
- ось градиента запускается Point2D
в пространстве пользователяend
- конец оси градиента Point2D
в пространстве пользователяfractions
- числа в пределах от 0.0 к 1.0 определениям распределения цветов вдоль градиентаcolors
- массив цветов, соответствующих каждому дробному значениюNullPointerException
- если одна из точек является нулем, или fractions
массив является нулем, или colors
массив является нулемIllegalArgumentException
- если запускаются, и конечные точки являются теми же самыми точками, или fractions.length != colors.length
, или colors
меньше чем 2 в размере, или a fractions
значение - меньше чем 0.0 или больше чем 1.0, или fractions
не обеспечиваются в строго увеличивающемся порядкеpublic LinearGradientPaint(Point2D start, Point2D end, float[] fractions, Color[] colors, MultipleGradientPaint.CycleMethod cycleMethod)
LinearGradientPaint
со значением по умолчанию SRGB
цветовое пространство.start
- ось градиента запускается Point2D
в пространстве пользователяend
- конец оси градиента Point2D
в пространстве пользователяfractions
- числа в пределах от 0.0 к 1.0 определениям распределения цветов вдоль градиентаcolors
- массив цветов, соответствующих каждому дробному значениюcycleMethod
- также NO_CYCLE
, REFLECT
, или REPEAT
NullPointerException
- если одна из точек является нулем, или fractions
массив является нулем, или colors
массив является нулем, или cycleMethod
нульIllegalArgumentException
- если запускаются, и конечные точки являются теми же самыми точками, или fractions.length != colors.length
, или colors
меньше чем 2 в размере, или a fractions
значение - меньше чем 0.0 или больше чем 1.0, или fractions
не обеспечиваются в строго увеличивающемся порядке@ConstructorProperties(value={"startPoint","endPoint","fractions","colors","cycleMethod","colorSpace","transform"}) public LinearGradientPaint(Point2D start, Point2D end, float[] fractions, Color[] colors, MultipleGradientPaint.CycleMethod cycleMethod, MultipleGradientPaint.ColorSpaceType colorSpace, AffineTransform gradientTransform)
LinearGradientPaint
.start
- ось градиента запускается Point2D
в пространстве пользователяend
- конец оси градиента Point2D
в пространстве пользователяfractions
- числа в пределах от 0.0 к 1.0 определениям распределения цветов вдоль градиентаcolors
- массив цветов, соответствующих каждому дробному значениюcycleMethod
- также NO_CYCLE
, REFLECT
, или REPEAT
colorSpace
- какое цветовое пространство использовать для интерполяции, также SRGB
или LINEAR_RGB
gradientTransform
- преобразуйте, чтобы примениться к градиентуNullPointerException
- если одна из точек является нулем, или fractions
массив является нулем, или colors
массив является нулем, или cycleMethod
нуль, или colorSpace
нуль, или gradientTransform
нульIllegalArgumentException
- если запускаются, и конечные точки являются теми же самыми точками, или fractions.length != colors.length
, или colors
меньше чем 2 в размере, или a fractions
значение - меньше чем 0.0 или больше чем 1.0, или fractions
не обеспечиваются в строго увеличивающемся порядкеpublic PaintContext createContext(ColorModel cm, Rectangle deviceBounds, Rectangle2D userBounds, AffineTransform transform, RenderingHints hints)
PaintContext
используемый, чтобы генерировать линейный цветной образец градиента. См. specification
из метода в Paint
интерфейс для информации о нулевой обработке параметра.cm
- привилегированное ColorModel
который представляет самый удобный формат для вызывающей стороны, чтобы получить пиксельные данные, или null
если нет никакого предпочтения.deviceBounds
- ограничивающий прямоугольник пространства устройства представляемого графического примитива.userBounds
- ограничивающий прямоугольник пространства пользователя представляемого графического примитива.transform
- AffineTransform
от пространства пользователя в пространство устройства.hints
- набор подсказок, что объект контекста может использовать, чтобы выбрать между рендерингом альтернатив.PaintContext
для того, чтобы генерировать цветные узоры.Paint
, PaintContext
, ColorModel
, Rectangle
, Rectangle2D
, AffineTransform
, RenderingHints
public Point2D getStartPoint()
Point2D
объект, который является копией точки, которая привязывает первый цвет этого LinearGradientPaint
public Point2D getEndPoint()
Point2D
объект, который является копией точки, которая привязывает последний цвет этого LinearGradientPaint
Для дальнейшей ссылки API и документации разработчика, см.
Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.