本文整理汇总了Java中javafx.scene.Node.setTranslateX方法的典型用法代码示例。如果您正苦于以下问题:Java Node.setTranslateX方法的具体用法?Java Node.setTranslateX怎么用?Java Node.setTranslateX使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类javafx.scene.Node
的用法示例。
在下文中一共展示了Node.setTranslateX方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: initTimeline
import javafx.scene.Node; //导入方法依赖的package包/类
private void initTimeline() {
timeline = new Timeline();
timeline.setCycleCount(Timeline.INDEFINITE);
KeyFrame kf = new KeyFrame(Config.ANIMATION_TIME, new EventHandler<ActionEvent>() {
public void handle(ActionEvent event) {
if (state == STATE_SHOW_TITLE) {
stateArg++;
int center = Config.SCREEN_WIDTH / 2;
int offset = (int)(Math.cos(stateArg / 4.0) * (40 - stateArg) / 40 * center);
brick.setTranslateX(center - brick.getImage().getWidth() / 2 + offset);
breaker.setTranslateX(center - breaker.getImage().getWidth() / 2 - offset);
if (stateArg == 40) {
stateArg = 0;
state = STATE_SHOW_STRIKE;
}
return;
}
if (state == STATE_SHOW_STRIKE) {
if (stateArg == 0) {
strike.setTranslateX(breaker.getTranslateX() + brick.getImage().getWidth());
strike.setScaleX(0);
strike.setScaleY(0);
strike.setVisible(true);
}
stateArg++;
double coef = stateArg / 30f;
brick.setTranslateX(breaker.getTranslateX() +
(breaker.getImage().getWidth() - brick.getImage().getWidth()) / 2f * (1 - coef));
strike.setScaleX(coef);
strike.setScaleY(coef);
strike.setRotate((30 - stateArg) * 2);
if (stateArg == 30) {
stateArg = 0;
state = STATE_SUN;
}
return;
}
// Here state == STATE_SUN
if (pressanykey.getOpacity() < 1) {
pressanykey.setOpacity(pressanykey.getOpacity() + 0.05f);
}
stateArg--;
double x = SUN_AMPLITUDE_X * Math.cos(stateArg / 100.0);
double y = SUN_AMPLITUDE_Y * Math.sin(stateArg / 100.0);
if (y < 0) {
for (Node node : NODES_SHADOWS) {
// Workaround RT-1976
node.setTranslateX(-1000);
}
return;
}
double sunX = Config.SCREEN_WIDTH / 2 + x;
double sunY = Config.SCREEN_HEIGHT / 2 - y;
sun.setTranslateX(sunX - sun.getImage().getWidth() / 2);
sun.setTranslateY(sunY - sun.getImage().getHeight() / 2);
sun.setRotate(-stateArg);
for (int i = 0; i < NODES.length; i++) {
NODES_SHADOWS[i].setOpacity(y / SUN_AMPLITUDE_Y / 2);
NODES_SHADOWS[i].setTranslateX(NODES[i].getTranslateX() +
(NODES[i].getTranslateX() + NODES[i].getImage().getWidth() / 2 - sunX) / 20);
NODES_SHADOWS[i].setTranslateY(NODES[i].getTranslateY() +
(NODES[i].getTranslateY() + NODES[i].getImage().getHeight() / 2 - sunY) / 20);
}
}
});
timeline.getKeyFrames().add(kf);
}
示例2: scaleAll
import javafx.scene.Node; //导入方法依赖的package包/类
private static void scaleAll(Scene scene, Node node) {
double translateX = node.getTranslateX();
double translateY = node.getTranslateY();
double baseX = node.getBoundsInParent().getMinX();
double baseY = node.getBoundsInParent().getMinY();
double sceneWidth = scene.getWidth();
double sceneHeight = scene.getHeight();
ChangeListener<Number> widthResizer = (arg0, oldValue, newValue) -> {
node.setScaleX(newValue.doubleValue() / sceneWidth);
node.setTranslateX(translateX + (baseX * newValue.doubleValue() / sceneWidth) - baseX);
};
scene.widthProperty().addListener(widthResizer);
ChangeListener<Number> heightResizer = (arg0, oldValue, newValue) -> {
node.setScaleY(newValue.doubleValue() / sceneHeight);
node.setTranslateY(translateY + (baseY * newValue.doubleValue() / sceneHeight) - baseY);
};
scene.heightProperty().addListener(heightResizer);
}
示例3: zoomInAndCenter
import javafx.scene.Node; //导入方法依赖的package包/类
private static void zoomInAndCenter(Node node, double initialWidth, double initialHeight, boolean preserveRatio) {
Parent parent = node.getParent();
node.toFront();
Bounds parentBoundsInParent = parent.getBoundsInLocal();
double xScaleRatio = parentBoundsInParent.getMaxX() / initialWidth;
double yScaleRatio = parentBoundsInParent.getMaxY() / initialHeight;
if (preserveRatio) {
double bestScaleRatio = Math.min(xScaleRatio, yScaleRatio);
node.setScaleX(bestScaleRatio);
node.setScaleY(bestScaleRatio);
} else {
node.setScaleX(xScaleRatio);
node.setScaleY(yScaleRatio);
}
Bounds boundsInParent = node.getBoundsInParent();
double translateX = -1 * Math.abs(boundsInParent.getMinY());
double translateY = -1 * Math.abs(boundsInParent.getMinY());
node.setTranslateX(translateX);
node.setTranslateY(translateY);
}
示例4: handle
import javafx.scene.Node; //导入方法依赖的package包/类
@Override
public void handle(MouseEvent event) {
if( !enabled) {
return;
}
// all in selection
for( Node node: selectionModel.selection) {
node.setTranslateX( dragContext.x + event.getSceneX());
node.setTranslateY( dragContext.y + event.getSceneY());
}
}
示例5: zoomOutAndReset
import javafx.scene.Node; //导入方法依赖的package包/类
private static void zoomOutAndReset(Node node) {
node.setScaleX(1);
node.setScaleY(1);
node.setTranslateX(0);
node.setTranslateY(0);
}
示例6: handle
import javafx.scene.Node; //导入方法依赖的package包/类
public void handle(MouseEvent event) {
// left mouse button => dragging
if (!event.isPrimaryButtonDown())
return;
double scale = canvas.getScale();
Node node = (Node) event.getSource();
node.setTranslateX(nodeDragContext.translateAnchorX + ((event.getSceneX() - nodeDragContext.mouseAnchorX) / scale));
node.setTranslateY(nodeDragContext.translateAnchorY + ((event.getSceneY() - nodeDragContext.mouseAnchorY) / scale));
event.consume();
}
示例7: fixPosition
import javafx.scene.Node; //导入方法依赖的package包/类
/**
* Set node's layout position to current position, remove translate coordinates.
* @param node
*/
private void fixPosition( Node node) {
double x = node.getTranslateX();
double y = node.getTranslateY();
node.relocate(node.getLayoutX() + x, node.getLayoutY() + y);
node.setTranslateX(0);
node.setTranslateY(0);
}