public static Point inverseTransform (double x, double y, double sx, double sy, double rotation,
                                          double tx, double ty, Point result) {
        x -= tx; y -= ty; // untranslate
        double sinnega = Math.sin(-rotation), cosnega = Math.cos(-rotation);
        double nx = (x * cosnega - y * sinnega); // unrotate
        double ny = (x * sinnega + y * cosnega);
        return result.set(nx / sx, ny / sy); // unscale
    }
public static Point inverseTransform ( double x , double y , double sx , double sy , double rotation , double tx , double ty , Point result ) { x -= tx ; y -= ty ; double sinnega = Math . sin ( - rotation ) , cosnega = Math . cos ( - rotation ) ; double nx = ( x * cosnega - y * sinnega ) ; double ny = ( x * sinnega + y * cosnega ) ; return result . set ( nx / sx , ny / sy ) ; }
Inverse transforms a point as specified, storing the result in the point provided.
@return a reference to the result point, for chaining.