Hi there, i’m getting some information of link files and it seems that something i’m doing wrong because i have to rellinquish some data every time i run the script.
First i get the link doc throw @Konrad_K_Sobon node and then feed into that code:
> import clr
> import math
> # import Document Manager
> clr.AddReference("RevitServices")
> from RevitServices.Persistence import DocumentManager
>
> clr.AddReference("RevitNodes")
> import Revit
> clr.ImportExtensions(Revit.Elements)
> clr.ImportExtensions(Revit.GeometryConversion)
> clr.AddReference("RevitAPI")
> from Autodesk.Revit.DB import *
>
> docs = IN[0]
> outData = []
> ft2m = 0.3048
> if isinstance(IN[0], list):
> docs = IN[0]
> else:
> docs = [(IN[0])]
>
> for doc in docs:
> if doc == None:
> continue
> name = doc.Title
> coll = FilteredElementCollector(doc)
> basePts = coll.OfClass(BasePoint).ToElements()
> projBasePt = None
> basePt = []
> survPt = []
> loc = []
> for e in basePts:
> a = e.Category.Name
> if a == "Project Base Point":
> pbpEW = e.LookupParameter("E/W")
> pbpNS = e.LookupParameter("N/S")
> pbpElev = e.LookupParameter("Elev")
> pbpAngle = e.LookupParameter("Angle to True North")
> basePt.append(round(pbpNS.AsDouble()*ft2m,20))
> basePt.append(round(pbpEW.AsDouble()*ft2m,20))
> basePt.append(round(pbpElev.AsDouble()*ft2m,20))
> basePt.append(round(pbpAngle.AsDouble()*180/math.pi,20))
> elif a == "Survey Point":
> pspEW = e.LookupParameter("E/W")
> pspNS = e.LookupParameter("N/S")
> pspElev = e.LookupParameter("Elev")
> survPt.append(round(pspNS.AsDouble()*ft2m,20))
> survPt.append(round(pspEW.AsDouble()*ft2m,20))
> survPt.append(round(pspElev.AsDouble()*ft2m,20))
>
> projLoc = doc.ActiveProjectLocation
> origin = XYZ(0.0,0.0,0.0)
>
> projPos = projLoc.get_ProjectPosition(origin)
> if projPos == None:
> loc.append("No Project Position at origin point")
> else:
> loc.append(round(projPos.EastWest * ft2m,6))
> loc.append(round(projPos.NorthSouth * ft2m,6))
> projData = [name] + [basePt] + [survPt]# + [loc] #for Active Location
> outData.append(projData)
>
> OUT = outData
This code is taking some worksets or elements in the linked files?
Thanks in advance