Get clone of group and keep links
-
Hello,
for example I have a null object with 2 children, one child is a rectangleSpline and the other is a sphere. The sphere has an align-to-spline-tag with the rectangle as spline-path source. If I clone the null with null.GetClone() the new spline-path links to the old rectangle, but I want it to link to the new rectangle. So, how can I get the behavior alike copy paste groups in OM?
Thx for any hints
rownn -
Hello and welcome to the PluginCafe,
Please post your questions regarding the Cinema 4D API in the "Cinema 4D Development" forum.
Also, please use tags and the Q&A system to mark questions. Please read "Read Before Posting".
To handle links when coping objects one can use a AliasTrans object. This object allows to fix links after objects are copied.
trans = c4d.AliasTrans() if trans is None or trans.Init(doc) is False: return False objects = doc.GetActiveObjects(c4d.GETACTIVEOBJECTFLAGS_0) for obj in objects: clone = obj.GetClone(c4d.COPYFLAGS_0, trans) if clone is not None: clone.SetName(obj.GetName() + " clone") doc.InsertObject(clone, None, None) c4d.EventAdd()
You find more information in the C4DAtom Manual or the AliasTrans Python documentation.
Best wishes,
Sebastian -
Very cool, thx alot Sebastian
rownn