This workflow does not return me the centreline as a curve. Please suggest.
@theshysnail Try Element.GetLocation
Basic question: Is there quick way I could segregate the lines and points (acquired by fittings) output of Element.GetLocation?
I can only remember the string.contains method.
Still I’m facing this warning while creating a polycurve.
your way of filtering is already pretty straightforward. you can create a Python Node and throw the following into it if you consider it a “quicker” way, one node only:
import clr clr.AddReference('ProtoGeometry') from Autodesk.DesignScript.Geometry import * OUT = [item for item in IN if isinstance(item, Line)]
Thanks again. That’s a pretty neat code.
Could you also please look at the warning I’m getting in my previous reply?
@theshysnail very informative post, that tolerance input is for gaps. Try setting it larger than the maximum gap (gap due to fitting).
There is a discussion on this issue here.
@theshysnail 2nd input to the rescue.
Yes. I was using Dynamo 1.3.4.
Seems like I need to upgrade my 2.0.1 version to 2.0.3 to get this working as my 2.0.1 throws a warning on Element.GetLocation.
What is the warning? It may just be a scale/units issue which means you’d only need to update a setting.
Warning: Element.GetLocation operation failed.
The type initializer for ‘Autodesk.LibG.LibGPINVOKE’ threw an exception.
Ah. I recall hearing this recently in another thread. Likely an install issue to fix it, but shouldn’t be too tough to do.
I got Dynamo for Revit 2.0.3 installed and this workflow works fine for getting the pipe network centreline as a curve.
However, there are two problems with the workflow when:
The piping is not drawn at one go i.e. continuous element IDs of pipes are not there in Dynamo workflow and a polycurve could not be formed.
joinTolerance (for the gaps between two pipes due to pipe fitting) is greater than a (short) pipe piece length.
Both of these are rather separate issues from your prior topic which has a solution which others will likely be able to learn from.
Can you start a new thread and be specific about what you are after in the end (ie: I want to build a polyline from all my pipe systems so I can __________.)?
New Topic is created at PolyCurve from a Pipe Network