matrix
All the SVG transforms are based on the matrix() function. It applies transformation matrix to an element:
Function signature
function matrix(
  a: number = 1, // scaleX
  b: number = 0, // skewY
  c: number = 0, // skewX
  d: number = 1, // scaleY
  e: number = 0, // translateX
  f: number = 0 // translateY
): string;
Usage
Let's set up a local variable m as an object with default matrix values a, b, ... and create a SVG rectangle that we transform with a matrix() function:
<script setup>
  ref: m = {
    a: 1,
    b: 0,
    c: 0,
    d: 1,
    e: 0,
    f: 0
  }
</script>
> <v-slider v-model="m.a" min="-4" max="4" step="any" />
> a / scaleX:
> {{ m.a }}
<!-- ...other matrix parameters... -->
<svg height="400" width="400">
  <rect x="150" y="150" width="100" height="100" fill="black" />
  <rect transform-origin="200 200" x="150" y="150" width="100" height="100" fill="red" opacity="0.5"
    :transform="matrix(m.a,m.b,m.c,m.d,m.e,m.f)"
  />
</svg>
a / scaleX:
1
b / scewY:
0
c / scewX:
0
d / ScaleY:
1
e / translateX:
0
f / translateY:
0
See more
https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/transform#matrix
https://developer.mozilla.org/en-US/docs/Web/CSS/transform-function/matrix()