Nominate our 2022 Qt Champions!

QGenericMatrix multiplication order

  • QGenericMatrix<M1, M2, T> operator* ( const QGenericMatrix<N, M2, T> & m1, const QGenericMatrix<M1, N, T> & m2 )

    Hi All,
    that is the multiplication operator signature, but there is something that confuses me.

    if result matrix A is m1 x m2 matrix, a left hand operand should be B m1 x n matrix while the right one C n x m2.
    Why the parameters are inverted in the parameters list?
    In that way I should code A = C * B but really I mean B * C
    This should be related to pre or post multiply a matrix to another one, but it is very counterintuitive

    best regards,

Log in to reply