我有三个物体
var triangle1 = new Path(new MoveTo(0, 400), new LineTo(0, 300), new LineTo(100, 300), new LineTo(0, 400));
var triangle2 = new Path(new MoveTo(0, 400), new LineTo(0, 300), new LineTo(100, 300), new LineTo(0, 400));
var triangle3 = new Path(new MoveTo(0, 400), new LineTo(0, 300), new LineTo(100, 300), new LineTo(0, 400));
进行此转换。
triangle2.getTransforms().add(new Rotate(30, 540, 540));
triangle3.getTransforms().add(new Rotate(115, 540, 540));
但是,当我打电话
System.out.println(((MoveTo)triangle1.getElements().get(0)).getX());
System.out.println(((MoveTo)triangle2.getElements().get(0)).getX());
System.out.println(((MoveTo)triangle3.getElements().get(0)).getX());
在所有情况下都将返回0。
但是,随着旋转,triangle2
和triangle3
的位置发生了变化。
请问如何计算新坐标?
谢谢
更新:
只需使用localToParent
System.out.println(triangle2.localToParent(0, 400).getX());
System.out.println(triangle3.localToParent(0, 400).getX());