@Neilw_05
Good questions, as I have a long way to go on these pipe routines (dreams?).
My pipe tools have actually evolved way beyond simple display of alignment geometry as a 3d pline.
They have lots of hidden data as xrecords, containing the last used horizontal/vertical geometry, display style, and alignment names they are hooked to, if hooked. They can also be unhooked so only the pline has the data, which is what feature lines wish they were, but instead are "hub and spoke" architecture which forces elevations at segment start/ends and so on as mentioned in the article.
Anyway, I do not yet have what I consider decent pipe crossing labeling or even reporting. I started on a tool to do sections of pipes along some line, but want it to work on xreffed pipes too so need to work that out. In general, I use my "ID" command which reports deltaz between any two points, so I pick two nearby points on the 3d plines and subtract the dia to get distance between (horrible, I know). I have many plans to get that in order.
As for labels, we have plan and profile labeling tools with styles that allow formulas and generally what we need. They are not dynamic, but could be. I could write a couple pages on why we do that.
The thing about all this is, if I want to make a pipe crossing label/info tool, I can any time. I have the code and know how to make lisp and .net work together to do all this. This post might trigger me to finally do that. What you don't want is a set of tools totally controlled by a team buried in a large company. Dave Simeone and team simply do not control their destiny anymore. The infraworks team is hindered also, as the items they would like to deal with (alignments, surfaces...) are stuck in drawings, not an external database. They need to redo that, and have drawing objects just be display/edit tools, not the original data. Then other progs can access the data. We do that now, it works and worked for LDT and many other civil progs. Peter Funk asked me about that before c3d was written, which option was better. Well, now I know having written our own civil program. We are just starting though. Civil software is like 2 out of 10 IMO. We could do so much more but finding investors for software development is tricky, so my development is funded by our design teams' billing. The vacuum is huge though, someone has to fill it.
internal protected virtual unsafe Human() : mostlyHarmless
I'm just here for the Shelties