0

如何在 java fx 中旋转线(旋转 360 度)?这里的代码:

package javafxapplication1;

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.paint.Color;
import javafx.scene.shape.Ellipse;
import javafx.scene.shape.EllipseBuilder;
import javafx.scene.shape.LineTo;
import javafx.scene.shape.MoveTo;
import javafx.scene.shape.Path;
import javafx.stage.Stage;
import javafx.scene.transform.Transform;

public class JavaFXApplication1 extends Application { 
  public static void main(String[] args) {
    launch(args);
}



@Override
public void start(Stage primaryStage) {
  Group root = new Group();
  Scene scene = new Scene(root, 800, 600, Color.WHITE);

  Ellipse lingkaran = EllipseBuilder.create()
    .centerX(400)
    .centerY(300)
    .radiusX(210)
    .radiusY(210)   
    .strokeWidth(3)
    .stroke(Color.BLACK)
    .fill(Color.WHITE)
    .build();

  Path path = new Path();
  MoveTo moveTo = new MoveTo();
  moveTo.setX(400);
  moveTo.setY(300);

  LineTo lineTo = new LineTo();
  lineTo.setX(400);
  lineTo.setY(100);

  path.getElements().add(moveTo);
  path.getElements().add(lineTo);
  path.setStrokeWidth(5);
  path.setStroke(Color.BLACK);

  root.getChildren().add(lingkaran);
  root.getChildren().add(path);

  primaryStage.setScene(scene);
  primaryStage.show();
  }
}

我想将线旋转 360 度,但我不知道该怎么做。我一直在谷歌上寻找这个,但我从来没有找到解决方案。有人可以帮我吗?

4

1 回答 1

0

你可以旋转你的圆圈和线条:

root.getChildren().add(lingkaran);
root.getChildren().add(path);

RotateTransition rot = RotateTransitionBuilder.create().node(root)
    .byAngle(360).duration(new Duration(3000)).build();
rot.play();

primaryStage.setScene(scene);
primaryStage.show();

如果您只想旋转线条,请替换.node(root).node(path).. 如果您不想使用动画,您可以设置线条的旋转属性。

于 2012-10-29T14:01:40.223 回答