Missing Element.CopyFromViewToView node in Rhythm 2024

Hi Johnp
@johnpTSSXV

I noticed that Element.CopyFromViewToView is missing in the latest 2024 version of the Rhythm package. Could you let me know why it was removed? Or Do we have any alternate node in latest version to copy paste tags to multiple views?
Also, if possible, could you share the Python script for that node functionality?

Thanks in advance!

Best regards,
Harshini R

This was removed a few years ago, and there was this message on the forum about it.

The Spring Nodes version has this python (thanks to Dimitar Venkov)

Hope that helps,

Mark

import clr

clr.AddReference('RevitServices')
from RevitServices.Persistence import DocumentManager
from RevitServices.Transactions import TransactionManager
doc = DocumentManager.Instance.CurrentDBDocument

clr.AddReference('RevitAPI')
from Autodesk.Revit.DB import *

from System.Collections.Generic import List

clr.AddReference('RevitNodes')
import Revit
clr.ImportExtensions(Revit.Elements)
clr.ImportExtensions(Revit.GeometryConversion)

def singleton(x):
	if hasattr(x,'__iter__'): return x[0]
	else : return x

def tolist(x):
	if hasattr(x,'__iter__'): return x
	else : return [x]


source = UnwrapElement(singleton(IN[0]) )
dest = UnwrapElement(singleton(IN[1]) )
elements = UnwrapElement(tolist(IN[2]) )
tf1 = singleton(IN[3])

if tf1 is not None:
	tf1 = tf1.ToTransform(True)

eId = List[ElementId](e.Id for e in elements if hasattr(e, "Id") )

TransactionManager.Instance.EnsureInTransaction(doc)
copy = ElementTransformUtils.CopyElements(source, eId, dest, tf1, None)
TransactionManager.Instance.TransactionTaskDone()

OUT = [doc.GetElement(i).ToDSType(False) for i in copy]
2 Likes