Vous aurez à comprendre les maths correctement, mais quelque chose comme ça est ce que j'avais en tête. Vous pouvez même essayer de simplement laisser le point de contrôle Y au milieu de la ligne, je l'ai déplacé depuis que je me suis dit que c'est plus réaliste, comme il va commencer à se pencher en bas. Vous devez également faire quelques calculs pour déterminer le point final. La longueur ne devrait pas changer.
package curve;
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.Slider;
import javafx.scene.paint.Color;
import javafx.scene.shape.QuadCurve;
import javafx.stage.Stage;
public class Curve extends Application {
@Override
public void start(Stage primaryStage) {
QuadCurve qc = new QuadCurve(100, 500, 100, 250, 100, 0);
qc.setStroke(Color.BLUE);
qc.setStrokeWidth(5);
qc.setFill(Color.TRANSPARENT);
Slider slider = new Slider(0, 200, 0);
qc.endXProperty().bind(slider.valueProperty().add(100));
qc.endYProperty().bind(slider.valueProperty().add(100).divide(1.2));
qc.controlYProperty().bind(slider.valueProperty().multiply(-1).add(500));
Group group = new Group(qc,slider);
Scene scene = new Scene(group, 500,500);
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
J'utiliser https://docs.oracle.com/javase/8/javafx/api/javafx/scene/shape/CubicCurve.html. J'espère que vous ne voulez pas toutes ces bosses dans la ligne, ce serait difficile – brian
J'ai regardé toute la documentation sur leur API, le problème est de savoir où placer les points de contrôle? Et non, les bosses ne sont pas nécessaires –
Désolé, je voulais dire QuadQurve, et vous devrez déplacer à la fois le contrôle et les points de fin lorsque le curseur se déplace. – brian