将javafx中的多边形缩放到其父级

问题描述 投票:-2回答:1

假设您在容器中有一个多边形,并且您希望在创建该容器时将其缩放到容器中。您可以为该容器创建宽度和高度,并且已经有一个已定义的多边形。现在,您希望该多边形始终具有与其所在容器相同的宽度和高度。

java javafx scale polygon javafx-11
1个回答
0
投票

这就是你解决它的方法:

private void makePolyScale(int height, int width) {

    Scale scale = new Scale ();
    scale.setX(width/BASE_WIDTH);
    scale.setY(height/BASE_HEIGHT);

    scale.setPivotX(this.body.getBoundsInParent().getCenterX());
    scale.setPivotY(this.body.getBoundsInParent().getCenterY());

    body.getTransforms().addAll(scale);
}

基本宽度和基本高度是您的多边形高度和宽度。您可以从双点数组中计算出来(只需找到minmax x / y并从相应的x和y的最大值中减去min)

width和height是父容器的宽度和高度。

© www.soinside.com 2019 - 2024. All rights reserved.