PSEUDO-EDIT: Do you mean "'T'-cells" like in T-intersection or as in the designation command d->T? I assumed the latter and just spent maybe 15 minutes writing the following:
Correct I meant the latter.
The first pass would designate all 'T' track-carving cells just like a normal blueprint.
You mean like moving the cursor on a cell and press Enter twice? Because that won't actually result in any designation (actually logical, a track needs a direction and you don't provide that by just pressing enter twice).
Not quite. If you have something like this:
T T T
. . T
. . T
My idea is to first, have QF plot all the T's like it normally does with no overlap-logic in effect.
Then during a second pass, have QF identify the "intersection points" .. in this case the top-right corner T, identifiable as an intersection point because it has a T to its west and also to its south.
During this pass QF would move the cursor to the top-right corner cell, hit Enter, move left, hit Enter again. Then repeat for the south connection: cursor to the top-right corner, Enter, move down, Enter.
In effect the key sequence would look like
(position cursor at intersection point cell)
{Enter}{Left}{Enter}{Right}{Enter}{Down}{Enter}{Up}
If I understand correctly, that sequence of keystrokes would join up the two straight track segments.
You are correct that "on paper", just doing a bendy track in series as you describe is a pretty obvious approach. The difficulty mainly comes in with how QF does its normal plotting, which up until now has assumed that it will never have to "plot the same cell twice". As it goes along it marks off cells as "plotted" so that it doesn't try to plot them a second time. It's a pretty fundamental aspect of its plotting strategy and it could get rather tricky making it "replot" certain cells in the correct way.
Also, consider this theoretical track layout:
. . . . . . T . . . . . .
T T T T T T T T T T T T T
T . . T . . T . . T . . T
T T T T T T T T T T T T T
. . . . . . T . . . . . .
In this example, we've got 2-, 3- and 4-way intersections, so just going along the track "end to end" doesn't really work out. You could instead go through and plot all continuous vertical straight segments first, then go back and do the horizontal segments overtop second, but this approach would basically constitute a two-pass solution anyway.
So if we do a second pass as I described, just jumping to each intersection-point and (possibly redundantly) joining any adjacent T's up to the N/S/E/W, I think we will get the desired result without having to rework QF's existing plotting strategy. It would entail a few extra keystrokes to do it this way, but I don't think anybody's gonna notice.
Regarding your last example of two adjacent but disconnected straight track segments: yes this is a problem, and it will be a problem just because there's no way (with just putting T's in cells) that QF is going to know whether you mean to have those adjacent track segments be connected or disconnected.
I'm currently leaning towards just not supporting disconnected-but-adjacent-track-carvings in a single blueprint at all ... just have QF assume that if they're adjacent, they should be connected up. If a blueprint author really wants adjacent disconnected tracks, they can use two blueprints, one for each separate track. In my opinion doing such a layout in two separate blueprints would probably be easier to read and layout for the blueprint author anyway (versus using special "track ids" in cells, e.g. T@track1,T@track1,T@track2,T@track2).
Or of course, they could just keep their tracks from being adjacent in the single blueprint
In any case, I don't think the adjacent-and-disconnected tracks scenario is gonna be something that users actually want to do very often, so I'm OK with requiring two blueprints for this odd use-case.