@Override public Ray2D transform(AffineTransform2D trans) { double[] tab = trans.coefficients(); double x1 = x0 * tab[0] + y0 * tab[1] + tab[2]; double y1 = x0 * tab[3] + y0 * tab[4] + tab[5]; return new Ray2D(x1, y1, dx * tab[0] + dy * tab[1], dx * tab[3] + dy * tab[4]); }