Author Topic: CT: I-691 new exit numbers  (Read 886 times)

0 Members and 1 Guest are viewing this topic.

Offline rickmastfan67

  • TM Collaborator (A)
  • Hero Member
  • *****
  • Posts: 1855
  • Gender: Male
  • Last Login:Today at 02:28:32 am
CT: I-691 new exit numbers
« on: May 14, 2023, 12:39:31 pm »

Offline yakra

  • TM Collaborator
  • Hero Member
  • *****
  • Posts: 4234
  • Last Login:May 18, 2024, 01:08:49 am
  • I like C++
Re: CT: I-691 new exit numbers
« Reply #1 on: September 17, 2023, 02:34:30 pm »
Seems they reversed the route for the exit number renumbering.
*headdesk*
Anyway...

This leads us to a couple oddities in the manual.



First, looking at CT66, there are two separate interchanges numbered 1. This begs for the 2nd one to be renumbered 1A.
Then, we have exits 1A & 1B in one interchange. With both 1 & 1A already being taken, this begs for 1B here.
I suppose this kicks us into "two separate interchanges numbered 1A" territory, we pick the next available letter, and squeak by on a technicality. Moving on...

Looking at I-691, we start out with exits 1A & 1B in one interchange. Suffixless 1 is in use, so to avoid breaking .list files we invoke "If there is another interchange with the same number and different letters, optionally keep the A."
Then there's Exits 1B & 1C in one interchange.
This yields 1A & 1B.

Looking at both as a single corridor, a continuous 1 - 1A - 1B - 1C would be nice, but this runs afoul of that last rule.
Going the letter of the manual now, the biggest evil we'd have is two adjacent 1A points on CT66 & I-691, at different locations. No biggie?
CT66 & I-691 are separate routes. With separate files, and separate .list entries.

OTOH, Adding the word "usually" to https://travelmapping.net/devel/manual/wayptlabels.php#lowerletter (as in the next 2 rules below it) could neatly clear this up.
Nothing comes to mind other than TX US54Elp 21A & 21B, but I'm sure there are oodles of places in TX where I've by necessity broken this rule.
We could even add in something like "If the lower letter is needed for a point at another location, you can use the higher letter."



Old exits 5 & 6 are renumbered to 2 halves of new exit 3, leading us to 3 & 3A.
Except, old exit 3 is in use. Thanks to the alphabet soup at exit 1, no other new exit numbers are in use. We could avoid breaking .list files altogether if we could go with 3A and 3B here.

When the manual says "the next available letter suffix", that could be interpreted a bit wibbly-wobbly.

Does "available" mean, after the previous suffixes have been used at their proper locations as signed?
ISTR a few years back this led to Markkos1992 adding new point somewhere along the lower Schuylkill resulting in an A-D-C-B or A-C-D-B sequence or something. Mark, maybe you remember better than I do?

Or does it mean, what's "available" after accounting for any in-use labels?

There is this one little-used part of the manual that I forgot about when doing the Massachusetts conversions:
Sometimes in the latter case, a second option can be chosen for the duplicated point (76) that causes the small problem. If new interchange 76 is in use has A and B exits, then this is preferable:
New file: 76A +74, 77, 78 +76.
What does "has" mean? It has exits 76A & 76B signed in the field? Or it has A & B suffixes on waypoint labels added per #nextsuffix?
Sri Syadasti Syadavaktavya Syadasti Syannasti Syadasti Cavaktavyasca Syadasti Syannasti Syadavatavyasca Syadasti Syannasti Syadavaktavyasca

Offline Duke87

  • TM Collaborator
  • Hero Member
  • *****
  • Posts: 967
  • Last Login:May 21, 2024, 09:33:22 pm
Re: CT: I-691 new exit numbers
« Reply #2 on: September 17, 2023, 06:35:31 pm »
I'd go with 3A and 3B to avoid breaking list files. Seems the common sense approach, I'll let others lawyer how it fits the manual. :)


The exit numbers are "reversed", by the way, because the mile markers on I-691 always have gone east to west and ConnDOT just followed the existing ones rather than redoing this.



Offline rickmastfan67

  • TM Collaborator (A)
  • Hero Member
  • *****
  • Posts: 1855
  • Gender: Male
  • Last Login:Today at 02:28:32 am
Re: CT: I-691 new exit numbers
« Reply #3 on: September 18, 2023, 01:31:59 am »
I honestly think that if a route is completely renumbered (and not just a segment), breaking list files is ok if necessary (meaning if a number needs to change locations, it may without you needing to resort to alphabet soup to prevent list breakage).

Just add an update entry in this case, and save what can be saved so that the route can have the proper numbering scheme.

But yeah, since we can get away with using '1A' for the new start instead of '1' & split 3 into 3A/3B (so '3' can stay as-is) to prevent list breakage, go for it.

=

As for CT-66, I'd do the following:
I-91 (keep as-is since this is technically an I-691 posted exit number) OR go with either "1A(691)"/"1(691)". ;)  I bet you didn't think about this option. ;)
12 -> 1A
13 -> 1

Clean, and simple.

Offline yakra

  • TM Collaborator
  • Hero Member
  • *****
  • Posts: 4234
  • Last Login:May 18, 2024, 01:08:49 am
  • I like C++
Re: CT: I-691 new exit numbers
« Reply #4 on: October 01, 2023, 04:56:45 pm »
I honestly think that if a route is completely renumbered (and not just a segment), breaking list files is ok if necessary (meaning if a number needs to change locations, it may without you needing to resort to alphabet soup to prevent list breakage).

Just add an update entry in this case, and save what can be saved so that the route can have the proper numbering scheme.
Certainly the approach I took with Massachusetts. It's easier & cleaner-looking to be sure.
And .lists were broken all over the place anyway.

How much of this breakage was necessary; how much avoidable?
Finding an answer to that would be a PitA, but I-290 is one extreme example. All 91 entries in all 89 .list files were broken.
Well OK, make that 89 or 90 in 88 files; master_son.list proactively had the new numbers. But anyway.
Only 2 exits could have gotten an 'A' to avoid breakage: 12 and 26.
  • Looking at the .list lines using exit 12, the only other labels in those lines were 15 & 19, which were both broken. Thus all lines using old exit 12 were broken anyway, so we may as well break exit 12 itself.
  • Then there's exit 26, which was paired with exits 7 & 18. Exit 18 was broken, so those are another "may as well break" scenario. But what about exit 7?
    Forgetting the manual rule, I thought everything 7 was paired with broken, so what I did was break 7 itself.
    What I could have done was relabel 26 to 26A, keep 7 as an AltLabel for the new 12, and avoid breaking 78 .list entries (give or take master_son). That's a big percentage.
A lot of clinchers for I-290, which stands to reason. The purpose of Clinched Highway Mapping is, well... you know. And it's easy to clinch short routes in a small state like MA, compared to, say, TX.
Taking that idea and running with it, endpoints are probably less likely to have exit renumbering conflicts, being more likely to be labeled after a border or intersecting route. Those travelers clinching other routes could be a small proportion of the labels causing relabeling monkey business.
The amount of necessary vs avoidable breakage remains an open question. Outside of I-290, the amount of breakage that could be avoided using the 'A' trick may (or may not) be comparatively small. Arguably not enough to justify the ugliness of using unexpected and otherwise-unnecessary suffixes.
But what's done is done.
(LOL, or is it? I could use the git blame feature to see if everyone using 26 (or whatever other exit numbers) edited those .list lines before the renumbering, and from there do what I can. But the new numbers have been in place for 2 years now, what's done is done literally speaking, and I don't feel like going down that rabbit hole of busy work now. :) )

But yeah, since we can get away with using '1A' for the new start instead of '1' & split 3 into 3A/3B (so '3' can stay as-is) to prevent list breakage, go for it.

Right. It's not really any less clean than using 3 & 3A.



As for CT-66, I'd do the following:
I-91 (keep as-is since this is technically an I-691 posted exit number) OR go with either "1A(691)"/"1(691)". ;)  I bet you didn't think about this option. ;)
HA! Correct, I did not think of that! Maybe just keep as-is, I'm thinking...

Another little wrinkle maybe neither of us thought of...
It could be that CT66, also being converted to mileage-based, also got its own separate set of mileage-based numbers, going W->E (it's exit 1, not 37 or whatever) & confusingly starting at the same point that I-691's start, going E->W.
It could be that unlike before, there's no longer one continuous numbering sequence for both routes, just that it's harder to spot with no exit 2 on CT66. If such existed, it'd be a convenient smoking gun.
If there were one continuous sequence, one would think it'd more likely start at 1A than plain 1, and then 1A/B/C on I-691 would become 1B/C/D.

As far as mileage starting before I-691, where the exits do, I don't see anything definitive one way or the other. If mileage is truncated to yield the exit number, a little playing with Google Maps suggests exits 5 & 7 ought to be a mile lower if starting at the I-91 median, or a mile higher if starting at the easternmost Exit 1 gores on CT66. Shrug.

For the sake of Getting On With It And Just Making A Damn Decision, I'll make the call that the 2 routes have 2 separate mileage-based sequences starting at one point & heading out in opposite directions, and that'll let me label stuff in conformity with #lowerletter without feeling pressured to questionably fit the numbers into a single sequence.

12 -> 1A
13 -> 1
Except that, CT66 still being W->E, 12 & 13 -> 1 & 1A respectively. :)

Taking one more quick look at pointsinuse.log since it's been a couple weeks. Don't need any more new labels popping into use & gumming things up...
K, good. Here goes! https://github.com/TravelMapping/HighwayData/pull/6860
Sri Syadasti Syadavaktavya Syadasti Syannasti Syadasti Cavaktavyasca Syadasti Syannasti Syadavatavyasca Syadasti Syannasti Syadavaktavyasca