public static Point2D_F64 transform ( Se2_F64 se , Point2D_F64 orig , Point2D_F64 result ) { if ( result == null ) { result = new Point2D_F64 ( ) ; } final double c = se . getCosineYaw ( ) ; final double s = se . getSineYaw ( ) ; // copy the values so that no errors happen if orig and result are the same instance double x = orig . x ; double y = orig . y ; result . x = se . getX ( ) + x * c - y * s ; result . y = se . getY ( ) + x * s + y * c ; return result ; }
Applies a 2D special euclidean transform to the point and stores the results in another variable .