Save Families from Revit to a Path

A very similar topic was already discussed here:

building up from that example, all you need to do is use the “SaveAs” method of the family document:

Here’s the code:

import clr

clr.AddReference('ProtoGeometry')

from Autodesk.DesignScript.Geometry import *



clr.AddReference('RevitAPI')

import Autodesk



clr.AddReference('RevitServices')

import RevitServices

from RevitServices.Persistence import DocumentManager

from RevitServices.Transactions import TransactionManager

doc = DocumentManager.Instance.CurrentDBDocument



#Close all transactions

trans = TransactionManager.Instance

trans.ForceCloseTransaction()



fams = IN[0]

paths = IN[1]



#unwrap the Dynamo elements

fams = map(UnwrapElement, fams)



for i in xrange(len(fams) ):

    famDoc = doc.EditFamily(fams[i])

    famDoc.SaveAs(paths[i])

    famDoc.Close(False)

OUT = 0
4 Likes