Point (Component relativeFrom, int x, int y) { Point p = myNativeComponent == relativeFrom ? new Point(x, y) : SwingUtilities.convertPoint(relativeFrom, x, y, myNativeComponent); if (myNativeComponent != relativeFrom && myNativeComponent instanceof ScalableComponent scalableComponent) { double zoom = scalableComponent.getScale(); if (zoom != 1) { p.x /= zoom; p.y /= zoom; } } return p; }