protected function rotate(Matrix $mA, array $rotationMatrix)
    {
        $a = $rotationMatrix[0][0];
        $b = $rotationMatrix[0][1];
        $c = $rotationMatrix[1][0];
        $d = $rotationMatrix[1][1];
        $f = function($x, $y, $val) use ($a, $b, $c, $d) {
            $nY = $b * $x + $a * $y;
            $nX = $d * $x + $c * $y;
            return [$nX, $nY, $val];
        };

        $vS = new VectorSet();
        return $vS->fromMatrix($mA)->translate($f)->toMatrix();
    }
protected function rotate(Matrix $mA, array $rotationMatrix)
    {
        $a = $rotationMatrix[0][0];
        $b = $rotationMatrix[0][1];
        $c = $rotationMatrix[1][0];
        $d = $rotationMatrix[1][1];
        $f = function($x, $y, $val) use ($a, $b, $c, $d) {
            $nY = $b * $x + $a * $y;
            $nX = $d * $x + $c * $y;
            return [$nX, $nY, $val];
        };

        $vS = new VectorSet();
        return $vS->fromMatrix($mA)->translate($f)->toMatrix();
    }
protected function rotate ( Matrix $ mA , array $ rotationMatrix ) { $ a = $ rotationMatrix [ 0 ] [ 0 ] ; $ b = $ rotationMatrix [ 0 ] [ 1 ] ; $ c = $ rotationMatrix [ 1 ] [ 0 ] ; $ d = $ rotationMatrix [ 1 ] [ 1 ] ; $ f = function ( $ x , $ y , $ val ) use ( $ a , $ b , $ c , $ d ) { $ nY = $ b * $ x + $ a * $ y ; $ nX = $ d * $ x + $ c * $ y ; return [ $ nX , $ nY , $ val ] ; } ; $ vS = new VectorSet ( ) ; return $ vS -> fromMatrix ( $ mA ) -> translate ( $ f ) -> toMatrix ( ) ; }
Rotate the matrix

@param \Chippyash\Matrix\Matrix $mA
@param array $rotationMatrix rotation vector matrix
@return \Chippyash\Matrix\Matrix
Rotate the matrix