JavaFx中的转换

时间:2015-06-03 07:00:08

标签: javafx

如果我希望将Node翻译一个位移(10,10),那么做什么有区别

#1。

myNode.setTranslateX (10); 
myNode.setTranslateY (10); 

并且正在做

#2。

Translate translateNode = new Translate (10,10);
myNode.getTransforms.add(translateNode);

2 个答案:

答案 0 :(得分:1)

$emadding a Translate都做同样的事情。唯一需要注意的是,如果您指定setting a translate,则在设置翻译/比例因子之前应用已添加的变换。

来自getTransforms的JavaDocs:

  

这个Observable变换列表在translateX,translateY,scaleX和scaleY之前应用,旋转变换。

答案 1 :(得分:0)

第一种方法将转换设置为绝对值,无论您的节点位于何处,在此之后,它将是@ x:10,y:10。

另一方面,第二种方法尊重节点上的当前转换,例如eN myNode。因此,如果您的节点是@ x:23,y:52,那么它将是33,62。