I am iterating through vertices and applying `bpy.ops.transform.skin_resize" to each vertex.
In the info panel, I can see that the correct value is being applied to each vertex, but in the viewport, I see something very different. The two branches on this structure should have an equal skin radius, but they do not. I can see in the info panel that the values being applied are 0.75
, 0.5
, 0.25
, 0.25
, where the bottom vertex is 0.75
and each branch vertex is 0.25
.
This is exactly how I want my script to execute. However, I can see in the viewport that a very different scale is being applied to the vertices. I have attached the code block responsible for the skin resize operation and a snapshot of my info panel after running the script.
It seems as if the scale is being applied cumulatively, even though the skin_resize
transform values are not accumulating.
# Iterate over each vertex and set its skin size
for i, vert in enumerate(bm.verts):
# Select the vertex
bm.select_flush(False)
vert.select = True
bpy.ops.transform.skin_resize(value=((size-sizes[i])/size, (size-sizes[i])/size, (size-sizes[i])/size))
vert.select = False