How to Insert an Intermediate Run for Support Placement in an Existing AutoPIPE Segment?


Question:

Is it possible to insert a Run between two existing components so that a support can be attached at that location?

Answer:

Yes, it is possible to insert a Run between two existing components and attach a support to it; however, this requires explicitly rewiring the component chain using link().

By default, when add_run() is called on a component that already has a forward connection, AutoPIPE DataAPI creates a new branch instead of inserting the Run inline. This results in a disconnected topology, and the model fails to save with error E6000: Component disconnected from rest of segment.

Example Scenario

You want to add a support between components A04 and A05.

Initial code (results in E6000)

A04S = A04.add_run(name="A04S", segment=seg, pipe_property=pp, offset=(0,10,0))

A04S.add_support(tag_number="VS-001", type=SupportType.VSTOP)

At this point, A05 becomes disconnected from the main segment, which causes model.save() to fail with E6000.

Required Fix: Rewire the Chain Using link()

To restore segment continuity, you must explicitly reconnect the newly created Run to the downstream component:

A04S.link(A05)  # Reconnect A05 to the segment

Important Notes and Limitations

  • Using link() resolves the E6000 disconnected component error.
  • The resulting geometry may be unexpected if the inserted Run is not colinear with the existing piping.
  • Runs cannot be inserted at Bend sub-locations, such as: Near, Mid, Tangent, Far

See Also