Moving Block-Instance By Transform matrix (RhinoCommon)

I’d like to move InstanceObject by Using Transform matrix from Original Block.
Using RhinoCommon / Rhino8

My code below does not work. What am I missing ?
(matrix is only move and rotate and their combination so that Inverse matrix can be computed)

    var obj = doc.Objects.Find(id);
    if (obj is InstanceObject inst)
    {
        Transform oldXform = inst.InstanceXform;
        if (oldXform.TryGetInverse(out Transform invXfom))
        {
            var tf= newXform * invXfom;
            inst.Geometry.Transform(tf);
            obj.CommitChanges();
        }
    }

Hi @k.saegusa,

Try using ObjectTable.Transform.

doc.Objects.Transform(inst, tf, true);

– Dale

1 Like

Thank you, it worked well !