Spec-Zone.ru › OpenJavaFX 11
Модуль javafx.graphics
Пакет 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);
    
    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.
  • Краткое описание методов

    Все методыСтатические методыМетодыКонкретные методы
    Модификатор и тип Метод Описание
    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 точки начала оси градиента
      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 может не быть в состоянии быстро определить свою непрозрачность.
      Указано в:
      isOpaque в классе Paint
      Возвращает:
      true, если Paint непрозрачен, false, если непрозрачен или если это невозможно определить.
      С:
      JavaFX 8.0
    • equals

      public boolean equals​(Object obj)
      Указывает, равен ли данный объект другому объекту.
      Переопределяет:
      equals в классе Object
      Параметры:
      obj - объект-ссылка для сравнения.
      Возвращает:
      true, если этот объект равен аргументу; 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
      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.

Spec-Zone.ru

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