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();
    }