Я хочу сделать половину радиальной калибровки. Я попытался наложить дугу на 180 °, и я положил на нее линию, и я попытался переместить эту линию, чтобы использовать ее в качестве индикатора положения. Я попытался переместить линию в другую позицию в Scene Builder, и кажется, что она может работать, но когда я пытался двигаться с кодом, это не так.Изменить положение линии, чтобы сделать датчик javafx
private Scanner sc;
public void deplacement_aiguille(){
sc = new Scanner(System.in);
double angle = sc.nextDouble();
String valangle = Double.toString(angle);
valeur_gisement.setText(valangle);
float xfin = (float) ((Math.cos(angle))*200);
float yfin = (float) ((Math.sin(angle)*200));
if(angle<90){
gisement.relocate(5,10);
gisement.setEndX(xfin);
gisement.setEndY(-yfin);
}
if (angle>90){
gisement.relocate(6,10);
gisement.setEndX(xfin);
gisement.setEndY(yfin);
}
if(angle==90){
gisement.setEndX(0);
gisement.setEndY(200);
}
if(angle==180){
gisement.setEndX(200);
gisement.setEndY(0);
}
if(angle==0){
gisement.relocate(5,10);
gisement.setEndX(-200);
gisement.setEndY(0);
}
}
С помощью этого кода я хочу, чтобы переместить линию в моей gridpane к колонке номер 5 и номер строки 10, когда мой угол меньше 90 и в при изменении угла номер столбца 6 и строка 10 больше, чем 90 Я не уверен, что это хороший способ сделать это. Поэтому, если у вас есть идея, я возьму ее. Но если это хороший способ сделать это, вы поможете мне сделать это. Thanks
Спасибо! Это прекрасно работает, мне нужно найти способ адаптировать эту функцию к моему коду. Я не совсем понимаю все функции, которые вы используете здесь. – David
Я могу применить угол к моей линии, но он не вращается с правой точки (он начинает вращаться, как центр расположен слева от моей дуги, а не от центра моей дуги) – David
@David Just отредактировал код, чтобы показать общую точку «Линия» и «Повернуть». Если у вас есть начальная точка линии, то же самое, что и точка поворота вращения, у вас не должно быть проблем. Вы хотите изменить свой пост, чтобы показать текущий код? – Rupert