Get Detail Line Line Pattern

@Steven its possible, you have to get the graphics style element from the curve using the LineStyle property. With the GraphicsStyle, get the category and type properties, and use those with the GetLinePatternId method

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

clr.AddReference("RevitNodes")
import Revit
clr.ImportExtensions(Revit.Elements)

clr.AddReference("RevitServices")
import RevitServices
from RevitServices.Persistence import DocumentManager

doc = DocumentManager.Instance.CurrentDBDocument

curves = IN[0]
if not isinstance(curves,list):
	curves = [curves]
patterns = []
for curve in curves:
	curve = UnwrapElement(curve)
	gscat = curve.LineStyle.GraphicsStyleCategory
	gstype = curve.LineStyle.GraphicsStyleType
	patterns.append(doc.GetElement(gscat.GetLinePatternId(gstype)))

OUT = patterns

PS it appears solid returns null

4 Likes