あなたは正しく数学を理解する必要がありますが、このようなものは私が気にしていたものです。コントロールポイントYをラインの真ん中に残してみることもできます。私はそれがもっと現実的だと思ってから移動しました。それは、底部で曲がり始めるようです。あなたはまた、終点を理解するためにいくつかの計算をしなければなりません。長さは変わるべきではありません。
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);
}
}
私はhttps://docs.oracle.com/javase/8/javafx/api/javafx/scene/shape/CubicCurve.htmlを使用します。私はあなたがその行のすべてのバンプを望んでいないことを願って、それは難しいでしょう – brian
私はAPIのすべてのドキュメントを見てきました、問題はちょうどコントロールポイントを設定する場所ですか?そして、いいえ、バンプは必要ありません。 –
申し訳ありませんが、私はQuadQurveを意味し、スライダが動いたときにコントロールとエンドポイントの両方を移動する必要があります。 – brian