Spec-Zone.ru › OpenJavaFX 8
javafx.scene.paint

Класс LinearGradient

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);

С тех пор:

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.
  • Краткое описание методов

    Все методыСтатические методыМетоды экземпляровКонкретные методы
    Модификатор и тип Метод и описание
    boolean equals(Object obj)
    Указывает, является ли другой объект "равным" этому.
    CycleMethod getCycleMethod()
    Определяет, какой из следующих методов цикла применяется к LinearGradient: CycleMethod.NO_CYCLE, CycleMethod.REFLECT или CycleMethod.REPEAT.
    double getEndX()
    Определяет координату X конечной точки оси градиента.
    double getEndY()
    Определяет координату Y конечной точки оси градиента.
    double getStartX()
    Определяет координату X начальной точки оси градиента.
    double getStartY()
    Определяет координату Y начальной точки оси градиента.
    List<Stop> getStops()
    Последовательность из 2 или более значений Stop, определяющая способ распределения цветов вдоль градиента.
    int hashCode()
    Возвращает код хэша для этого объекта LinearGradient.
    boolean isOpaque()
    Определяет, является ли этот Paint полностью непрозрачным.
    boolean isProportional()
    Указывает, являются ли начальные и конечные расположения пропорциональными или абсолютными.
    String toString()
    Возвращает строковое представление этого объекта LinearGradient.
    static LinearGradient valueOf(String value)
    Создает линейный градиент из строкового представления.
    • Методы, унаследованные от класса java.lang.Object

      clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Подробное описание конструкторов

    • LinearGradient

      public LinearGradient(double startX,
                            double startY,
                            double endX,
                            double endY,
                            boolean proportional,
                            CycleMethod cycleMethod,
                            Stop... stops)
      Создает новый экземпляр LinearGradient.

      Параметры:

      startX - координата X начальной точки оси градиента

    • LinearGradient

      public LinearGradient(double startX,
                            double startY,
                            double endX,
                            double endY,
                            boolean proportional,
                            CycleMethod cycleMethod,
                            List<Stop> stops)
      Создает новый экземпляр LinearGradient.

      Параметры:

      startX - координата X начальной точки оси градиента

  • Подробное описание методов

    • getStartX

      public final double getStartX()
      Определяет координату X начальной точки оси градиента. Если proportional равно true (по умолчанию), это значение определяет точку на единичном квадрате, которая будет масштабироваться для соответствия размеру фигуры, которую заполняет градиент.

      Значение по умолчанию:

      0,0

    • getStartY

      public final double getStartY()
      Определяет координату Y начальной точки оси градиента. Если proportional равно true (по умолчанию), это значение определяет точку на единичном квадрате, которая будет масштабироваться для соответствия размеру фигуры, которую заполняет градиент.

      Значение по умолчанию:

      0,0

    • getEndX

      public final double getEndX()
      Определяет координату X конечной точки оси градиента. Если proportional равно true (по умолчанию), это значение определяет точку на единичном квадрате, которая будет масштабироваться для соответствия размеру фигуры, которую заполняет градиент.

      Значение по умолчанию:

      1,0

    • getEndY

      public final double getEndY()
      Определяет координату Y конечной точки оси градиента. Если proportional равно true (по умолчанию), это значение определяет точку на единичном квадрате, которая будет масштабироваться для соответствия размеру фигуры, которую заполняет градиент.

      Значение по умолчанию:

      1,0

    • isProportional

      public final boolean isProportional()
      Указывает, являются ли начальные и конечные расположения пропорциональными или абсолютными. Если этот флаг установлен в true, две конечные точки определяются в системе координат, где координаты в диапазоне [0..1] масштабируются для отображения на границах фигуры, которую заполняет градиент. Если этот флаг установлен в false, координаты указаны в локальной системе координат узла.

      Значение по умолчанию:

      true

    • 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 — это paint, у которого нет альфа-компонента ни в одном из его цветов. Возможно, что paint будет непрозрачным, но вернёт false, если легко не определить, является ли paint непрозрачным. Например, ImagePattern может не иметь возможности быстро определить свою непрозрачность.

      Определено:

      isOpaque в классе Paint

      Возвращает:

      true, если Paint непрозрачен, false, если он не непрозрачен или если это невозможно определить.

      С тех пор:

      JavaFX 8.0

    • equals

      public boolean equals(Object obj)
      Указывает, является ли другой объект "равным" этому.

      Переопределяет:

      equals в классе Object

      Параметры:

      obj - объект ссылки, с которым нужно сравнить.

      Возвращает:

      true, если этот объект равен аргументу obj; false в противном случае.

    • hashCode

      public int hashCode()
      Возвращает код хэша для этого объекта LinearGradient.

      Переопределяет:

      hashCode в классе Object

      Возвращает:

      код хэша для этого объекта LinearGradient.

    • toString

      public String toString()
      Возвращает строковое представление этого объекта LinearGradient.

      Переопределяет:

      toString в классе Object

      Возвращает:

      строковое представление этого объекта 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

      С тех пор:

      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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API