У меня проблема с рисованием линий в JavaFx. Мы делаем приложение, имитирующее трафик, - есть 16 улиц, и каждая улица имеет другой цвет, зависящий от трафика. Существует очень простая картина: http://img546.imageshack.us/img546/9949/uliceu.jpgСтроки рисования javafx и текст
Моя первая мысль о том, как это сделать, заключалась в том, чтобы нарисовать улицы как линии и просто изменить их цвета. Но я не могу наложить текст на строку (я хочу текст с названием улицы). Поэтому я попытался поместить строку и текст в StackPane. Затем я добавил, что StackPanes на BorderPane центре ... Но это не сработало. Кажется, что StackPane не учитывает начало строки x, запускает y ... Линии перекрываются друг с другом.
Главное окно приложения - BorderPane, и я хочу поместить карту в центр. Он не требует динамического изменения размера, у нас есть только одна карта, поэтому он может быть установлен статическим образом.
мне нужно что-то вроде этого: http://img834.imageshack.us/img834/1157/ulicac.jpg Но улицы должны соединяться друг с другом ... как на первой картинке
Есть ли у вас какие-либо предложения о том, как сделать это? Любые советы будут оценены :)
Как что:
Group gr = new Group();
Text text = new Text("1st Street");
text.setFill(Color.web("fabbff"));
Line line = new Line(0, 150, 200,150);
line.setStrokeWidth(20);
line.setStroke(Color.web("000000"));
gr.getChildren().addAll(line, text);
group.getChildren().addAll(gr, //and every other street);
На каждой улице должна быть своя группа (улица + текст), не так ли? И чем мне нужно собрать эти группы в другую большую группу и поместить эту группу в пограничную панель? Но когда я попробовал это, текст был в другом месте, чем в строке ... Я добавил код в первом сообщении - это то, что вы имеете в виду? – damian
Обновленный ответ для дальнейшего объяснения некоторых из этих концепций. – jewelsea
Спасибо !!! Хорошо, я попробую это. Но когда я рисую строку, я могу указать позицию x, y, но я не могу установить позицию текста или метки ... или я могу? Я попробовал это: group.getChildren(). AddAll (текст, строка \t \t // и любая другая улица \t \t} и текст находится в другом месте, кроме улицы – damian