Arkance Systems Node Library Feedback Thread

That is a situation I actually don’t know how to improve. Creating a Connected Alignment is a bit unfathomable, things go a bit different than expected at first glance.

The manual function in Civil 3D asks a direction point too, but internally, in code, you need to enter two stations along the both Alignments. So, with the selected direction point I can calculate the nearest stations and use that in the code (just as the manual Civil 3D function works).

There might be some clever mathematical function to find the desired quad automatically but probably the offset values must be seen from the stations along the selected Alignments, which must be before or after the intersection, and has nothing to do with the direction of the Alignments (what I would expect).

The stations could be found programmatically from the intersection point (if the offset is given according to the both Alignments and not seen from the stations), but how to solve a situation where the Alignments cross each other multiple times?

So, a lot of challenges to deal with, and I am not sure what is the best path to follow. Do some clever things that break the way Civil 3D does? Or just as it is like now? That being said, here is an example how it works now:

The point is projected on both Alignments. the first Alignment is the horizontal one (direction does not matter), the second is the vertical one.

In case you give another direction point, but do not change the sign of the offset, the Connected Alignment can fall on the ‘wrong’ side (but it could be the desired situation of course).

Here you use the negative offset to get the new Alignment on the inner quad.

But how can you calculate if you need a negative or positive offset? I don’t know. Seen from the stations, in both cases the projected station along Alignment 1 is before the intersection, and along Alignment 2 it is once before and once after. So mathematically I would say: offset value for Alignment 1 would switch from positive (right) to negative (left) and the offset value for Alignment 2 should be negative (left) in both cases. But it is not how it works. It is trial and error (just like the manual function). Always a positive value for an inner Alignment would have been a good choice too, but that is also how it not works.

So, if you or anyone has a brilliant idea how to solve this with some undoubtable construction, please let me know :slight_smile:

1 Like