Вы можете использовать метод localToParent
для преобразования точки из системы координат Rectangle
в систему координат родителя.
Point2D topLeftInParent = shape.localToParent(shape.getX(), shape.getY());
Если вам просто нужен диапазон x / yв родительском элементе, где отображается Rectangle
, вы также можете использовать getBoundsInParent
:
Bounds parentBounds = shape.getBoundsInParent();
Кстати: я не рекомендую добавлять новое преобразование при каждом изменении.Вместо этого я рекомендую настроить существующее вращение:
Rotate rotate = new Rotate(0, shape.getX() + shape.getWidth()/2, shape.getX() + shape.getHeight()/2);
shape.getTransforms().add(rotate);
rotate.angleProperty().bind(this.rotation);