- java.lang.Object
-
- javafx.scene.paint.Paint
-
- javafx.scene.paint.LinearGradient
-
public final class LinearGradient extends Paint
Класс
LinearGradientзаполняет фигуру линейным градиентом цветов. Пользователь может указать два или более цвета градиента, и эта Paint обеспечит интерполяцию между каждым цветом.Приложение предоставляет массив
Stop, определяющий, как распределить цвета вдоль градиента. ПеременнаяStop#offsetдолжна принимать значения в диапазоне от 0,0 до 1,0 и работать как ключевые кадры вдоль градиента. Смещения обозначают точки, где градиент должен иметь точно определенный цвет.Если пропорциональная переменная установлена в true, то начальная и конечная точки градиента должны быть указаны относительно единичного квадрата (0,0->1,0) и будут растянуты по форме. Если пропорциональная переменная установлена в false, то начальные и конечные точки должны быть указаны в локальной системе координат фигуры, и градиент не будет растягиваться.
Два заполненных прямоугольника в примере ниже будут отображаться одинаково. Левый прямоугольник использует пропорциональные координаты для определения конечных точек градиента. Правый прямоугольник использует абсолютные координаты. Оба из них заполняют указанный прямоугольник горизонтальным градиентом, изменяющимся от черного до красного.
// object bounding box relative (proportional = true) Stop[] stops = new Stop[] { new Stop(0, Color.BLACK), new Stop(1, Color.RED)}; LinearGradient lg1 = new LinearGradient(0, 0, 1, 0, true, CycleMethod.NO_CYCLE, stops); Rectangle r1 = new Rectangle(0, 0, 100, 100); r1.setFill(lg1); // user space relative (proportional: = false) LinearGradient lg2 = new LinearGradient(125, 0, 225, 0, false, CycleMethod.NO_CYCLE, stops); Rectangle r2 = new Rectangle(125, 0, 100, 100); r2.setFill(lg2);- Since:
- JavaFX 2.0
-
Краткое описание конструкторов
Конструкторы Конструктор Описание LinearGradient(double startX, double startY, double endX, double endY, boolean proportional, CycleMethod cycleMethod, List<Stop> stops)Создает новый экземпляр LinearGradient.LinearGradient(double startX, double startY, double endX, double endY, boolean proportional, CycleMethod cycleMethod, Stop... stops)Создает новый экземпляр LinearGradient.
-
Краткое описание методов
Все методыСтатические методыМетодыКонкретные методы Модификатор и тип Метод Описание booleanequals(Object obj)Определяет, равен ли данный объект другому объекту.CycleMethodgetCycleMethod()Определяет, какой из методов цикла применяется кLinearGradient:CycleMethod.NO_CYCLE,CycleMethod.REFLECTилиCycleMethod.REPEAT.doublegetEndX()Определяет координату X конечной точки оси градиента.doublegetEndY()Определяет координату Y конечной точки оси градиента.doublegetStartX()Определяет координату X начальной точки оси градиента.doublegetStartY()Определяет координату Y начальной точки оси градиента.List<Stop>getStops()Последовательность из 2 или более значенийStop, определяющая, как распределить цвета по градиенту.inthashCode()Возвращает хеш-код для этого объектаLinearGradient.booleanisOpaque()Возвращает значение, указывающее, является ли этот Paint полностью непрозрачным.booleanisProportional()Указывает, являются ли начальные и конечные местоположения пропорциональными или абсолютными.StringtoString()Возвращает строковое представление этого объектаLinearGradient.static LinearGradientvalueOf(String value)Создает значение линейного градиента из строкового представления.
-
Подробное описание конструкторов
-
LinearGradient
public LinearGradient(double startX, double startY, double endX, double endY, boolean proportional, CycleMethod cycleMethod, Stop... stops)Создаёт новый экземпляр LinearGradient.- Параметры:
-
startX- координата X точки начала оси градиента -
startY- координата Y точки начала оси градиента -
endX- координата X точки конца оси градиента -
endY- координата Y точки конца оси градиента -
proportional- указывают ли координаты пропорциональность форме, которую заполняет этот градиент -
cycleMethod- метод циклирования, применяемый к градиенту -
stops- спецификация цвета градиента
-
LinearGradient
public LinearGradient(double startX, double startY, double endX, double endY, boolean proportional, CycleMethod cycleMethod, List<Stop> stops)Создаёт новый экземпляр LinearGradient.- Параметры:
-
startX- координата X точки начала оси градиента -
startY- координата Y точки начала оси градиента -
endX- координата X точки конца оси градиента -
endY- координата Y точки конца оси градиента -
proportional- указывают ли координаты пропорциональность форме, которую заполняет этот градиент -
cycleMethod- метод циклирования, применяемый к градиенту -
stops- спецификация цвета градиента
-
-
Подробное описание методов
-
getStartX
public final double getStartX()
Определяет координату X точки начала оси градиента. Если proportional равно true (по умолчанию), это значение задаёт точку на единичном квадрате, которая будет масштабироваться в соответствии с размером формы, которую заполняет градиент.- Значение по умолчанию:
- 0.0
- Возвращает:
- координату X точки начала оси градиента
-
getStartY
public final double getStartY()
Определяет координату Y точки начала оси градиента. Если proportional равно true (по умолчанию), это значение задаёт точку на единичном квадрате, которая будет масштабироваться в соответствии с размером формы, которую заполняет градиент.- Значение по умолчанию:
- 0.0
- Возвращает:
- координату Y точки начала оси градиента
-
getEndX
public final double getEndX()
Определяет координату X точки конца оси градиента. Если proportional равно true (по умолчанию), это значение задаёт точку на единичном квадрате, которая будет масштабироваться в соответствии с размером формы, которую заполняет градиент.- Значение по умолчанию:
- 1.0
- Возвращает:
- координату X точки конца оси градиента
-
getEndY
public final double getEndY()
Определяет координату Y точки конца оси градиента. Если proportional равно true (по умолчанию), это значение задаёт точку на единичном квадрате, которая будет масштабироваться в соответствии с размером формы, которую заполняет градиент.- Значение по умолчанию:
- 1.0
- Возвращает:
- координату Y точки конца оси градиента
-
isProportional
public final boolean isProportional()
Указывает, являются ли начальные и конечные точки пропорциональными или абсолютными. Если этот флаг равен true, две конечные точки определены в пространстве координат, где координаты в диапазоне[0..1]масштабируются для отображения на границах формы, которую заполняет градиент. Если этот флаг равен false, тогда координаты заданы в локальной системе координат узла.- Значение по умолчанию:
- true
- Возвращает:
- true, если начальные и конечные точки пропорциональны, иначе false
-
getCycleMethod
public final CycleMethod getCycleMethod()
Определяет, какой из следующих методов циклирования применяется кLinearGradient:CycleMethod.NO_CYCLE,CycleMethod.REFLECTилиCycleMethod.REPEAT.- Значение по умолчанию:
- NO_CYCLE
- Возвращает:
- метод циклирования, применяемый к этому линейному градиенту
-
getStops
public final List<Stop> getStops()
Последовательность из 2 или болееStopзначений, определяющих, как распределять цвета вдоль градиента. Эти значения должны быть в диапазоне от 0,0 до 1,0. Они действуют как ключевые кадры вдоль градиента: они отмечают, где градиент должен быть точно определённого цвета.Каждое значение в последовательности должно быть больше предыдущего.
Список неизменяемый и вызовет
UnsupportedOperationExceptionпри каждой попытке изменения.- Значение по умолчанию:
- пустой
- Возвращает:
- список значений остановок
-
isOpaque
public final boolean isOpaque()
Определяет, является ли этот объект Paint полностью непрозрачным. Непрозрачный объект Paint — это объект, у которого нет компонента альфа в ни одном из цветов. Возможно, для объекта Paint будет непрозрачным и при этом вернуть false, если нельзя легко определить, действительно ли Paint непрозрачный. Например, ImagePattern может не быть в состоянии быстро определить свою непрозрачность.
-
equals
public boolean equals(Object obj)
Указывает, равен ли данный объект другому объекту.
-
hashCode
public int hashCode()
Возвращает хэш-код для этого объектаLinearGradient.
-
toString
public String toString()
Возвращает строковое представление этого объектаLinearGradient.
-
valueOf
public static LinearGradient valueOf(String value)
Создаёт значение линейного градиента из строкового представления.Формат строкового представления основан на спецификации JavaFX CSS для линейного градиента, которая выглядит так:
linear-gradient( [ [from <point> to <point>| [ to <side-or-corner>], ]? [ [ repeat | reflect ], ]? <color-stop>[, <color-stop>]+)
, где<side-or-corner> = [left | right] || [top | bottom] <point> = [ [ <length> <length> ] | [ <percentage> | <percentage> ] ] <color-stop> = [ <color> [ <percentage> | <length>]? ]
В настоящее время длина может быть указана только в px, указание единицы может быть опущено. Формат представления цвета совпадает с тем, что используется в
Примеры:Color.web(String color). Ключевое слово linear-gradient может быть опущено. Дополнительную информацию о формате строкового представления см. в Руководстве по CSS.LinearGradient g = LinearGradient.valueOf("linear-gradient(from 0% 0% to 100% 100%, red 0% , blue 30%, black 100%)"); LinearGradient g = LinearGradient.valueOf("from 0% 0% to 100% 100%, red 0% , blue 30%, black 100%"); LinearGradient g = LinearGradient.valueOf("linear-gradient(from 0px 0px to 200px 0px, #00ff00 0%, 0xff0000 50%, 0x1122ff40 100%)"); LinearGradient g = LinearGradient.valueOf("from 0px 0px to 200px 0px, #00ff00 0%, 0xff0000 50%, 0x1122ff40 100%");- Параметры:
-
value- строка для преобразования - Возвращает:
- объект
LinearGradient, содержащий значение, представленное строковым аргументом. - Исключения:
-
NullPointerException- еслиvalueявляетсяnull -
IllegalArgumentException- еслиvalueне может быть разобран - С:
- JavaFX 2.1
-
© 2008, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from JavaFX API Documentation.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Java, JavaFX and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.