question: public void rotate ( double theta , Point2D from ) { AffineTransform rotate = AffineTransform . getRotateInstance ( theta , from . getX ( ) , from . getY ( ) ) ; inverse = null ; transform . preConcatenate ( rotate ) ; fireStateChanged ( ) ; }
target:  preconcatenates the rotation at the supplied point with the current transform