import bpy import mathutils msh = bpy.context.active_object Sx = 1 Sy = 1 Sz = 2 Tx = 1 Ty = 1 Tz = 1 Tmatrix = mathutils.Matrix(( (Sx ,0 , 0 , 0), (0 ,Sy , 0 , 0), (0 ,0 , Sz , 0), (0 ,0 , 0 , 1))) Smatrix = mathutils.Matrix(( (1 ,0 ,0 ,Tx), (0 ,1 ,0 ,Ty), (0 ,0 ,1 ,Tz), (0 ,0 ,0 , 1))) Matrix = Tmatrix @ Smatrix for vt in msh.data.vertices: src = mathutils.Vector((vt.co[0],vt.co[1],vt.co[2],1)) dst = Matrix @ src vt.co[0] = dst[0] vt.co[1] = dst[1] vt.co[2] = dst[2]