@willcgage/module-schematic 0.80.0 → 0.82.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +53 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +101 -2
- package/dist/index.d.ts +101 -2
- package/dist/index.js +53 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -1576,10 +1576,52 @@ var FAST_TRACKS_N_ME55 = [
|
|
|
1576
1576
|
substitutionRadius: { inches: subR, source: manufacturer, note: spec }
|
|
1577
1577
|
};
|
|
1578
1578
|
});
|
|
1579
|
+
var FAST_TRACKS_N_ME55_CROSSOVERS = [
|
|
1580
|
+
// [N, angle°, secondFrog°, defaultLength, minLength, trackSpacing]
|
|
1581
|
+
[6, 9.46, 19, 10.07, 9.31, 1.09],
|
|
1582
|
+
[8, 7.13, 14.3, 13.61, 13.07, 1.09]
|
|
1583
|
+
].map(([n, deg, second, dflt, min, spacing]) => {
|
|
1584
|
+
const spec = "handlaidtrack.com Detailed Specifications, read 2026-07-26";
|
|
1585
|
+
const manufacturer = "manufacturer";
|
|
1586
|
+
return {
|
|
1587
|
+
id: `fast-tracks-n-me55-c-${n}`,
|
|
1588
|
+
manufacturer: "Fast Tracks",
|
|
1589
|
+
line: "Code 55",
|
|
1590
|
+
scale: "N",
|
|
1591
|
+
name: `#${n} Double Crossover`,
|
|
1592
|
+
kind: "crossover",
|
|
1593
|
+
partNumbers: { single: `AF-N-C-${n}-ME55` },
|
|
1594
|
+
frogNumber: n,
|
|
1595
|
+
buildable: true,
|
|
1596
|
+
piecesPerAssembly: 2,
|
|
1597
|
+
actualAngle: { deg, source: manufacturer, note: `${spec}. atan(1/${n}) exactly.` },
|
|
1598
|
+
secondaryFrogAngle: {
|
|
1599
|
+
deg: second,
|
|
1600
|
+
source: manufacturer,
|
|
1601
|
+
note: `${spec}. The diamond of a scissors crossover \u2014 2 \xD7 ${deg}\xB0 within the published rounding.`
|
|
1602
|
+
},
|
|
1603
|
+
overallLength: {
|
|
1604
|
+
inches: dflt,
|
|
1605
|
+
source: manufacturer,
|
|
1606
|
+
note: `${spec}. \u26A0\uFE0F ONE HALF, NOT THE FINISHED CROSSOVER \u2014 the fixture builds a symmetrical half, which you build twice and butt together after turning the second 180\xB0. Fast Tracks gloss it as "the length of the turnout on the QuickSticks", i.e. the piece in the jig. The DEFAULT for that piece; it is a fixture, so the builder chooses.`
|
|
1607
|
+
},
|
|
1608
|
+
minimumLength: {
|
|
1609
|
+
inches: min,
|
|
1610
|
+
source: manufacturer,
|
|
1611
|
+
note: `${spec}. The shortest ONE HALF can be built \u2014 see the overall length's note.`
|
|
1612
|
+
},
|
|
1613
|
+
trackSpacing: {
|
|
1614
|
+
inches: spacing,
|
|
1615
|
+
source: manufacturer,
|
|
1616
|
+
note: `${spec}. \u26A0\uFE0F Free-moN \xA72.0 requires ${FREEMO_TRACK_SPACING_INCHES}\u2033 \u2014 this fixture is built to ${spacing}\u2033, ${(FREEMO_TRACK_SPACING_INCHES - spacing).toFixed(3)}\u2033 tighter, and cannot be built to another spacing.`
|
|
1617
|
+
}
|
|
1618
|
+
};
|
|
1619
|
+
});
|
|
1579
1620
|
var DEFAULT_FLEX_PART_ID = "atlas-c55-n-flex";
|
|
1580
1621
|
var BUILT_IN_TRACK_PARTS = [
|
|
1581
1622
|
...ATLAS_CODE55_N,
|
|
1582
1623
|
...FAST_TRACKS_N_ME55,
|
|
1624
|
+
...FAST_TRACKS_N_ME55_CROSSOVERS,
|
|
1583
1625
|
...FLEX_TRACK_PARTS
|
|
1584
1626
|
];
|
|
1585
1627
|
function flexParts(library = BUILT_IN_TRACK_PARTS) {
|
|
@@ -1907,7 +1949,17 @@ function storedPartToTrackPart(row) {
|
|
|
1907
1949
|
if (minimum) part.minimumLength = minimum;
|
|
1908
1950
|
const substitution = dim(row.substitutionRadiusInches, row.substitutionRadiusSource);
|
|
1909
1951
|
if (substitution) part.substitutionRadius = substitution;
|
|
1952
|
+
const spacing = dim(row.trackSpacingInches, row.trackSpacingSource);
|
|
1953
|
+
if (spacing) part.trackSpacing = spacing;
|
|
1954
|
+
if (typeof row.secondaryFrogAngleDeg === "number")
|
|
1955
|
+
part.secondaryFrogAngle = {
|
|
1956
|
+
deg: row.secondaryFrogAngleDeg,
|
|
1957
|
+
source: asSource(row.secondaryFrogAngleSource),
|
|
1958
|
+
...note ? { note } : {}
|
|
1959
|
+
};
|
|
1910
1960
|
if (row.buildable) part.buildable = true;
|
|
1961
|
+
if (typeof row.piecesPerAssembly === "number" && row.piecesPerAssembly > 1)
|
|
1962
|
+
part.piecesPerAssembly = row.piecesPerAssembly;
|
|
1911
1963
|
if (lead) part.lead = lead;
|
|
1912
1964
|
const outer = dim(row.outerRadiusInches, row.radiusSource);
|
|
1913
1965
|
const inner = dim(row.innerRadiusInches, row.radiusSource);
|
|
@@ -2610,6 +2662,7 @@ exports.DEFAULT_FLEX_PART_ID = DEFAULT_FLEX_PART_ID;
|
|
|
2610
2662
|
exports.ENDPLATE_FASCIA_CLEAR_INCHES = ENDPLATE_FASCIA_CLEAR_INCHES;
|
|
2611
2663
|
exports.ENDPLATE_LEAD_INCHES = ENDPLATE_LEAD_INCHES;
|
|
2612
2664
|
exports.FAST_TRACKS_N_ME55 = FAST_TRACKS_N_ME55;
|
|
2665
|
+
exports.FAST_TRACKS_N_ME55_CROSSOVERS = FAST_TRACKS_N_ME55_CROSSOVERS;
|
|
2613
2666
|
exports.FLEX_TRACK_PARTS = FLEX_TRACK_PARTS;
|
|
2614
2667
|
exports.FREEMO_ENDPLATE_TRACK_FASCIA_CLEARANCE_INCHES = FREEMO_ENDPLATE_TRACK_FASCIA_CLEARANCE_INCHES;
|
|
2615
2668
|
exports.FREEMO_ENDPLATE_WIDTH_MIN_INCHES = FREEMO_ENDPLATE_WIDTH_MIN_INCHES;
|