Spec-Zone.ru › OpenJavaFX 11
Модуль javafx.graphics
Пакет javafx.scene.paint

Класс ImagePattern

  • java.lang.Object
    • javafx.scene.paint.Paint
      • javafx.scene.paint.ImagePattern
  • public final class ImagePattern
    extends Paint

    Класс ImagePattern заполняет фигуру образцом изображения. Пользователь может указать прямоугольник якоря, который определяет положение, ширину и высоту изображения относительно левого верхнего угла фигуры. Если фигура выходит за пределы прямоугольника якоря, изображение будет повторяться.

    Если переменная proportional установлена в true (по умолчанию), то прямоугольник якоря должен быть задан относительно единичного квадрата (0.0->1.0) и будет растянут по всей фигуре. Если переменная proportional установлена в false, то прямоугольник якоря должен быть задан в локальной системе координат фигуры, и изображение будет растянуто, чтобы подойти под прямоугольник якоря. Прямоугольник якоря не будет растянут по всей фигуре.

    Пример ниже демонстрирует использование переменной proportional. Фигуры в верхней строке используют пропорциональные координаты (по умолчанию) для задания прямоугольника якоря. Фигуры в нижней строке используют абсолютные координаты. Изображение цветка растягивается, чтобы заполнить всю треугольную фигуру, в то время как изображение с точками повторяется внутри круговой фигуры.

    
    import javafx.scene.Scene;
    import javafx.scene.image.Image;
    import javafx.scene.paint.ImagePattern;
    import javafx.scene.shape.Circle;
    import javafx.scene.shape.Polygon;
    import javafx.stage.Stage;
    
    public class HelloImagePattern extends Application {
    
        private static final String flowerURL = "file:flower.png";
        private static final String dotsURL = "file:dots.png";
    
        @Override public void start(Stage stage) {
            stage.setTitle("Image Pattern");
            Group root = new Group();
            Scene scene = new Scene(root, 600, 450);
    
            Image dots = new Image(dotsURL);
            Image flower = new Image(flowerURL);
    
            Polygon p = new Polygon();
    
            p.setLayoutX(10);
            p.setLayoutY(10);
            p.getPoints().add(50.0);
            p.getPoints().add(0.0);
            p.getPoints().add(100.0);
            p.getPoints().add(100.0);
            p.getPoints().add(0.0);
            p.getPoints().add(100.0);
    
            p.setFill(new ImagePattern(flower, 0, 0, 1, 1, true));
    
            root.getChildren().add(p);
    
            Polygon p2 = new Polygon();
    
            p2.setLayoutX(10);
            p2.setLayoutY(120);
            p2.getPoints().add(50.0);
            p2.getPoints().add(0.0);
            p2.getPoints().add(100.0);
            p2.getPoints().add(100.0);
            p2.getPoints().add(0.0);
            p2.getPoints().add(100.0);
    
            p2.setFill(new ImagePattern(flower, 0, 0, 100, 100, false));
    
            root.getChildren().add(p2);
    
            Circle circ = new Circle(50);
            circ.setTranslateX(120);
            circ.setTranslateY(10);
            circ.setCenterX(50);
            circ.setCenterY(50);
            circ.setFill(new ImagePattern(dots, 0.2, 0.2, 0.4, 0.4, true));
    
            root.getChildren().add(circ);
    
            Circle circ2 = new Circle(50);
            circ2.setTranslateX(120);
            circ2.setTranslateY(10);
            circ2.setCenterX(50);
            circ2.setCenterY(50);
            circ2.setFill(new ImagePattern(dots, 20, 20, 40, 40, false));
    
            root.getChildren().add(circ2);
            stage.setScene(scene);
            stage.show();
        }
    

    Код выше создаёт следующее:

    A visual rendering of the
 HelloImagePattern example

    С тех пор:
    JavaFX 2.2
  • Краткое описание конструкторов

    Конструкторы
    Конструктор Описание
    ImagePattern​(Image image)
    Создаёт новый экземпляр ImagePattern из указанного изображения.
    ImagePattern​(Image image, double x, double y, double width, double height, boolean proportional)
    Создаёт новый экземпляр ImagePattern.
  • Краткое описание методов

    Все методыМетоды экземпляраКонкретные методы
    Модификатор и тип Метод Описание
    double getHeight()
    Возвращает высоту прямоугольника якоря.
    Image getImage()
    Возвращает изображение, используемое в качестве заливки.
    double getWidth()
    Возвращает ширину прямоугольника якоря.
    double getX()
    Возвращает координату x начала прямоугольника якоря.
    double getY()
    Возвращает координату y начала прямоугольника якоря.
    boolean isOpaque()
    Возвращает, является ли эта заливка полностью непрозрачной.
    boolean isProportional()
    Возвращает булевое значение, указывающее, являются ли начальные и конечные точки пропорциональными или абсолютными.
    • Методы, унаследованные от класса javafx.scene.paint.Paint

      valueOf
    • Методы, унаследованные от класса java.lang.Object

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

    • ImagePattern

      public ImagePattern​(Image image)
      Создаёт новый экземпляр ImagePattern из указанного изображения. Используются значения по умолчанию для всех других параметров.
      Параметры:
      image - изображение, используемое в качестве заливки.
      Исключения:
      NullPointerException - если изображение равно null.
      IllegalArgumentException - если изображение не загружено полностью, то есть если прогресс меньше 1.
    • ImagePattern

      public ImagePattern​(Image image,
                          double x,
                          double y,
                          double width,
                          double height,
                          boolean proportional)
      Создаёт новый экземпляр ImagePattern.
      Параметры:
      image - изображение, используемое в качестве заливки.
      x - координата x начала прямоугольника якоря.
      y - координата y начала прямоугольника якоря.
      width - ширина прямоугольника якоря.
      height - высота прямоугольника якоря.
      proportional - указывает, являются ли координаты пропорциональными фигуре, которую заполняет ImagePattern
      Исключения:
      NullPointerException - если изображение равно null.
      IllegalArgumentException - если изображение не загружено полностью, то есть если прогресс меньше 1.
  • Подробное описание методов

    • getImage

      public final Image getImage()
      Возвращает изображение, используемое в качестве заливки.
      Возвращает:
      Изображение, используемое в качестве заливки.
    • getX

      public final double getX()
      Возвращает координату x начала прямоугольника якоря.
      Значение по умолчанию:
      0.0
      Возвращает:
      Координата x начала прямоугольника якоря.
    • getY

      public final double getY()
      Возвращает координату y начала прямоугольника якоря.
      Значение по умолчанию:
      0.0
      Возвращает:
      Координата y начала прямоугольника якоря.
    • getWidth

      public final double getWidth()
      Возвращает ширину прямоугольника якоря.
      Значение по умолчанию:
      1.0
      Возвращает:
      Ширина прямоугольника якоря.
    • getHeight

      public final double getHeight()
      Возвращает высоту прямоугольника якоря.
      Значение по умолчанию:
      1.0
      Возвращает:
      Высота прямоугольника якоря.
    • isProportional

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

      public final boolean isOpaque()
      Описание скопировано из класса: Paint
      Возвращает, является ли эта заливка полностью непрозрачной. Непрозрачная заливка — это заливка, у которой в любом цвете нет альфа-компонента. Возможно, для заливки может быть непрозрачной и при этом вернуть false, если легко определить, является ли заливка непрозрачной. Например, ImagePattern не может быстро определить свою непрозрачность.
      Определено в:
      isOpaque в классе Paint
      Возвращает:
      true, если заливка непрозрачна, false, если нет, или если определить нельзя.

© 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