Как вы окрашиваете определенную часть изображения в JavaFX? [Дубликат]

1

Я провел некоторое исследование по цвету определенных частей изображения с помощью JavaFX, но я не могу найти никакой информации об этом. Я хочу, чтобы цвета различных разделов (каждый с другим цветом) следующего изображения в JavaFX:

Изображение 174551

Это можно сделать легко?

EDIT: эта картина намного ясна, когда я показываю, что я пытаюсь сделать:

изображение с различными разделами http://s12.postimg.org/wofhjvy2h/image_2.jpg

  • 0
    Краткий ответ: да, это можно сделать легко. Есть несколько способов сделать это. Что уместно, во многом зависит от того, зачем вам это нужно.
  • 0
    Ну, у меня есть изображение с круглым объектом, и я хочу иметь возможность image.setFill(Color.RED, region3) это изображение между границами линий чем-то вроде image.setFill(Color.RED, region3)
Теги:
javafx
image
javafx-8
javafx-2

1 ответ

2
Лучший ответ

Для этого вы можете использовать Group и Rectangles с разными цветами и позициями.

Вот пример:

Изображение 174551

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.paint.Color;
import javafx.scene.shape.Rectangle;
import javafx.stage.Stage;


public class Main extends Application {

    public static void main(String[] args) {
        launch(args);
    }

    @Override
    public void start(Stage primaryStage) {
        Group root = new Group();

        Rectangle rect1 = new Rectangle(400,100);
        Rectangle rect2 = new Rectangle(400,125);
        Rectangle rect3 = new Rectangle(400,175);
        Rectangle rect4 = new Rectangle(200,250);

        rect1.setFill(Color.BLUE);
        rect2.setFill(Color.RED);
        rect3.setFill(Color.YELLOW);
        rect4.setFill(Color.GREEN);

        rect2.setLayoutY(100);
        rect3.setLayoutY(225);
        rect4.setLayoutX(200);
        rect4.setLayoutY(150);

        root.getChildren().addAll(rect1,rect2,rect3,rect4);


        primaryStage.setScene(new Scene(root, 400, 400));
        primaryStage.show();
    }
}
  • 2
    Не могли бы вы привести пример, как это сделать? Если нет, ваш ответ должен быть представлен в виде комментария, а не полного ответа.
  • 0
    Можете ли вы сделать то же самое с данным изображением? Так не создавая изображение в коде? А как насчет круга, разделенного на три региона? Я ищу способ автоматического определения линий на изображении и установки этих линий в качестве границ региона.
Показать ещё 6 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню