Same-row belt feed into an uphill low end draws as two capped ends (t67)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-27 14:30:02 -04:00
co-authored by Claude Opus 5.5
parent 45538cc18e
commit 02e338a46f
7 changed files with 45 additions and 44 deletions
+4 -4
View File
@@ -123,15 +123,15 @@ check('a flat belt picks the same-row uphill inlet before the below-low-end exce
for(const n of [b,b+1,b-BW+1]){blockP[n]=n===b?BP_BELT:BP_BELT_UP;blockV[n]=1;}
return endJoin(10,10,1)===(b+1)*2&&endJoin(11,9,0)===-1;
})()`));
check('same-row uphill low end draws the drop in placed and planned geometry',run(`(()=>{
check('same-row uphill low end draws as two capped ends in placed and planned geometry',run(`(()=>{
blockP.fill(0);blockV.fill(0);const b=10*BW+10;
const p=new Map([[b,[BP_BELT_UP,1]],[b-1,[BP_BELT,1]]]);
const j=slopeBeltConnections(10,10,BP_BELT_UP,p);
return j===129&&slopeBeltShape(40.5,43,b,j,BP_BELT_UP)<0&&flatBeltCaps(b-1,p)===1;
return j===0&&endJoin(10,10,0,p)>=0&&flatBeltCaps(b-1,p)===3;
})()`));
check('uphill same-row slope joins draw a high elbow and a low drop',run(`(()=>{
check('uphill slopes side by side on one row are joined but drawn as two capped ends',run(`(()=>{
blockP.fill(0);blockV.fill(0);const b=10*BW+10,p=new Map([[b,[BP_BELT_UP,1]],[b+1,[BP_BELT_UP,1]]]);
return slopeBeltConnections(10,10,BP_BELT_UP,p)===2&&slopeBeltConnections(11,10,BP_BELT_UP,p)===129;
return endJoin(10,10,1,p)>=0&&slopeBeltConnections(10,10,BP_BELT_UP,p)===0&&slopeBeltConnections(11,10,BP_BELT_UP,p)===0;
})()`));
// Downhill face-to-face transfers (screens always travel downhill when placed).
for(const grade of [-1,1])for(const filter of [false,true])for(const outgoing of [false,true])for(const joined of [false,true]) {