I found a python script that accurately finds the point of an elevation marker. (For some reason, the scripts that require the active view do not provide the the marker location, just a point that is associated with the view.)
import clr
clr.AddReference('RevitServices')
from RevitServices.Persistence import DocumentManager
doc = DocumentManager.Instance.CurrentDBDocument
clr.AddReference('RevitNodes')
import Revit
clr.ImportExtensions(Revit.GeometryConversion)
em = UnwrapElement(IN[0])
if em.HasElevations:
OUT = doc.GetElement(em.GetViewId(2) ).Origin.ToPoint()
else:
OUT = "this marker has no views"
(My view ID happens to be 2 instead of zero; this was intentional).
The problem is that it doesn’t seem to work very well with lists; I can only feed in one elevation marker.
I am not very familiar with python though and I was wondering if someone could help me out.
Here is a snapshot of the graph:
The python script that accepts a list is displaying points for a bounding box. They are way off.
Get elevation marker location.dyn (14.8 KB)
Thanks