Вот как это решить:
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 и вычтите min из максимумов соответствующих x и y)
ширина и высота - это ширина и высота вашего родительского контейнера.