我在这个网站上看到过关于javafx中旋转的问题,但我似乎不太明白。下面是一些代码:
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.paint.Color;
import javafx.scene.shape.Rectangle;
import javafx.scene.transform.Rotate;
import javafx.scene.transform.Scale;
import javafx.scene.transform.Translate;
import javafx.stage.Stage;
public class TransformationsExample extends Application {
@Override
public void start(Stage stage) {
Rectangle rectangle = new Rectangle(50, 50, 100, 75);
rectangle.setFill(Color.BURLYWOOD);
rectangle.setStroke(Color.BLACK);
Rotate rotate = new Rotate();
rotate.setAngle(90);
rotate.setPivotX(150);
rotate.setPivotY(225);
rectangle.getTransforms().addAll(rotate);
Group root = new Group(rectangle);
Scene scene = new Scene(root, 1400, 780);
stage.setTitle("Transformations");
stage.setScene(scene);
stage.show();
}
public static void main(String args[]){
launch(args);
}
}
为什么当我改变角度时,矩形开始出现在随机位置?例如,当我将角度设置为 180 时,矩形出现在中间。我的理解是,矩形围绕 X:150 和 Y:225 以指定的角度移动。但是,当我将角度设置为180时,我完全错了。你们能帮帮我吗?
编辑:在阅读和看到回答这个问题的代码时,我想我发现了一个新问题。如何设置pivotX和pivotY的枢轴距离?
如果替换该行
Group root = new Group(rectangle);
用以下两行
Circle pivot = new Circle(150, 225, 5, Color.BLACK);
Group root = new Group(rectangle, pivot);
然后以0,10,45,90度的小步长增加您的角度,我认为行为变得更加清晰,这正是我所期望的。
在Javafx中旋转图像? 我正在写 但是图像不会相对于图像的中心旋转。
我正在玩JavaFX,在类开始(阶段阶段)我有以下代码: 我如何在不旋转轴的情况下旋转它?我发现并尝试了以下方法: 然而,当我使用改变位置x移动图像时,它也会变换轴 它可能与BuffereImage一起工作,但他们使用不同的图形类绘制它,我不知道如何使它一起工作。 编辑:好的,如何只旋转图像而不旋转整个图形上下文? 已解决:谢谢大家的帮助:))我已经用这个解决了它
问题内容: 我想-使用Python和Qt4– 旋转QPushButton(或至少它的文本),使其可以垂直站立。我在网上看过一些文档,但是我从中没多大意义- 它在C语言中,而且我是C文盲。 根据我的阅读,需要重新实现paintEvent()处理程序,实例化和旋转QPainter()。但是我不知道怎么为我只需要的一个QString或QPushButton做到这一点。我假设QPaintEvent会像信号
我在Procesisng中编写了一个程序,它以随机的颜色和旋转来呈现不透明的立方体,但我希望在程序运行的同时连续地旋转每个立方体。这是我目前的代码,
问题内容: 我试图了解四元数旋转的工作原理,我发现了这个迷你教程http://www.julapy.com/blog/2008/12/22/quaternion- rotation/, 但是他做出了一些我不能锻炼的假设,就像我如何“ 简单地通过绕轴旋转矢量来计算绕轴的旋转矢量 ” 。 他如何计算angleDegreesX,angleDegreesY和angleDegreesZ? 有人可以提供可行的
我试着绕着它的中心旋转一个矩形。使用GraphicsContext ie gc将旋转绘制到画布上。这是我的绘图代码。 这会将矩形移动到其中心,然后围绕其左上角点旋转矩形。我试着把两边的长度和宽度减半,但那只会让它飞得到处都是。我数学不好也许这里有更好的人能告诉我我做错了什么。 如果需要的话,我还存储了矩形的所有四个点(角)。 谢了乔