On Mon, 12 Oct 2020 03:23:29 GMT, Arun Joseph <ajos...@openjdk.org> wrote:
>> modules/javafx.web/src/main/java/com/sun/javafx/webkit/prism/WCGraphicsPrismContext.java >> line 790: >> >>> 788: Affine3D at = new Affine3D(); >>> 789: at.translate(phase.getX(), phase.getY()); >>> 790: at.concatenate(m[0], -m[1], m[4], -m[2], m[3], >>> m[5]); >> >> Can you explain why the matrix is transformed in this way (specifically the >> negation of elements 1 and 2)? A code >> comment would be helpful since it is non-obvious. > > Instead of negation, it should have been at the opposite positions. I have > fixed this in the latest commit. The arg > list order for > [`concatenate`](https://github.com/openjdk/jfx/blob/a56ba63bef9b33c4ad5cc9e05ae5bdb0ee480a3f/modules/javafx.graphics/src/main/java/com/sun/javafx/geom/transform/AffineBase.java#L2849) > is different compared to the constructor of Affine2D. With your latest change, the call looks like what I would expect now. I suspect a shear transform would have been broken before this last fix, but I didn't try it. ------------- PR: https://git.openjdk.java.net/jfx/pull/190