Skip to content

Commit 02fa8d5

Browse files
clarencechenmemo33
authored andcommitted
Test new long-T intersection flags with SAMxSAM intersections
1 parent 93ef9f0 commit 02fa8d5

3 files changed

Lines changed: 26 additions & 26 deletions

File tree

src/main/scala/module/MiscResolver.scala

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -107,10 +107,10 @@ class MiscResolver extends IdResolver {
107107
add(0x5F500600, Street~SE & Street~EN) // DxD
108108
add(0x05005700, Street~NS & Street~CE) // OxO T
109109
add(0x5F500A00, Street~NS & Street~CSE) // OxD T (also has (0,2,11,2) alt implementation)
110-
add(0x5F504000, Street~CS & Street~NE) // DxO T1
111-
add(0x5F504100, Street~CS & Street~WS) // DxO T2
112-
add(0x5F504200, Street~SE & Street~CEN) // DxD T1
113-
add(0x5F504300, Street~WN & Street~CSW) // DxD T2
110+
add(0x5F504000, Street~(0,202,0,2) & Street~NE) // DxO T1
111+
add(0x5F504100, Street~(0,0,0,202) & Street~WS) // DxO T2
112+
add(0x5F504200, Street~SE & Street~(0,1,203,0)) // DxD T1
113+
add(0x5F504300, Street~WN & Street~(203,0,0,0)) // DxD T2
114114
add(0x05000F00, Street~(0,0,2,2)) // 90 curve
115115
add(0x5F500400, Street~(0,0,1,13)) // curve
116116
add(0x5F500500, Street~(0,2,0,11)) // curve

src/main/scala/module/SamResolver.scala

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -105,10 +105,10 @@ class SamResolver extends IdResolver {
105105
add(0x5e574000 + offset, sam~NS & sam~NE) // OxD
106106
add(0x5e579000 + offset, sam~SE & sam~EN) // DxD
107107
add(0x5e575000 + offset, sam~NS & sam~CSE) // OxD T (also 0,2,11,2)
108-
add(0x5e597000 + offset, sam~CS & sam~NE) // DxO T1
109-
add(0x5e598000 + offset, sam~CS & sam~WS) // DxO T2
110-
add(0x5e599000 + offset, sam~SE & sam~CEN) // DxD T1
111-
add(0x5e59a000 + offset, sam~WN & sam~CSW) // DxD T2
108+
add(0x5e597000 + offset, sam~(0,202,0,2) & sam~NE) // DxO T1
109+
add(0x5e598000 + offset, sam~(0,0,0,202) & sam~WS) // DxO T2
110+
add(0x5e599000 + offset, sam~SE & sam~(0,1,203,0)) // DxD T1
111+
add(0x5e59a000 + offset, sam~WN & sam~(203,0,0,0)) // DxD T2
112112

113113
add(0x5e57a000 + offset, sam~(0,0,2,11))
114114
// add(NoIID + offset, sam~(0,0,2,13))

src/main/scala/module/SamRuleGenerator.scala

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -527,29 +527,29 @@ class SamRuleGenerator(var context: RuleTransducer.Context) extends RuleGenerato
527527
Rules += sam~(0,2,11,2) | (Street ~> sam)~(11,3,0,0) // OxD T to orth-diag top
528528

529529
// DxO T (diag thru, orth Terminating)
530-
Rules += sam~WE | (Street ~> sam)~WC & (Street ~> sam)~ES // DxO T from orth
531-
Rules += sam~ES | (Street ~> sam)~NW & (Street ~> sam)~CS // DxO T from diag
532-
Rules += sam~ES | (Street ~> sam)~NW & (Street ~> sam)~CN // DxO T from diag to aux tile
533-
Rules += sam~ES & sam~CW | (Street ~> sam)~WN & (Street ~> sam)~CW // DxO T across
534-
Rules += sam~ES & sam~CE | (Street ~> sam)~WN & (Street ~> sam)~CE // DxO T across
535-
Rules += sam~ES & sam~NC | (Street ~> sam)~WN // DxO T to diag
536-
Rules += sam~ES & sam~SC | (Street ~> sam)~WN // DxO T to diag from aux tile
537-
Rules += sam~SW & sam~EC | (Street ~> sam)~WE // DxO T to orth
530+
Rules += sam~WE | (Street ~> sam)~(2,0,202,0) & (Street ~> sam)~ES // DxO T from orth
531+
Rules += sam~ES | (Street ~> sam)~NW & (Street ~> sam)~(0,202,0,2) // DxO T from diag
532+
Rules += sam~ES | (Street ~> sam)~NW & (Street ~> sam)~(0,202,0,0) // DxO T from diag to aux tile
533+
Rules += sam~ES & sam~(2,0,202,0) | (Street ~> sam)~WN & (Street ~> sam)~(202,0,0,0) // DxO T across
534+
Rules += sam~ES & sam~(0,0,202,0) | (Street ~> sam)~WN & (Street ~> sam)~(202,0,2,0) // DxO T across
535+
Rules += sam~ES & sam~(0,2,0,202) | (Street ~> sam)~WN // DxO T to diag
536+
Rules += sam~ES & sam~(0,0,0,202) | (Street ~> sam)~WN // DxO T to diag from aux tile
537+
Rules += sam~SW & sam~(202,0,2,0) | (Street ~> sam)~WE // DxO T to orth
538538

539539
// DxD
540540
Rules += sam~ES | (Street ~> sam)~NW & (Street ~> sam)~EN // DxD from diag
541541
Rules += sam~ES & sam~EN | (Street ~> sam)~WS & (Street ~> sam)~WN // DxD across
542542
Rules += sam~ES & sam~WS | (Street ~> sam)~WN // DxD to diag
543543

544544
// DxD T
545-
Rules += sam~NE | (Street ~> sam)~CSW & (Street ~> sam)~ES // DxD T from end diag
546-
Rules += sam~ES | (Street ~> sam)~NW & (Street ~> sam)~CNE // DxD T from thru diag
547-
Rules += sam~ES | (Street ~> sam)~NW & (Street ~> sam)~CEN // DxD T from thru diag (aux tile)
548-
Rules += sam~CEN & sam~ES | (Street ~> sam)~CSW & (Street ~> sam)~NW // DxD T across 1
549-
Rules += sam~CNE & sam~ES | (Street ~> sam)~CWS & (Street ~> sam)~NW // DxD T across 2
550-
Rules += sam~CNE & sam~NW | (Street ~> sam)~WS // DxD T to diag from end side
551-
Rules += sam~CSW & sam~ES | (Street ~> sam)~NW // DxD T to diag from thru side
552-
Rules += sam~CWS & sam~ES | (Street ~> sam)~NW // DxD T to diag from aux tile
545+
Rules += sam~NE | (Street ~> sam)~(3,0,0,201) & (Street ~> sam)~ES // DxD T from end diag
546+
Rules += sam~ES | (Street ~> sam)~NW & (Street ~> sam)~(0,201,3,0) // DxD T from thru diag
547+
Rules += sam~ES | (Street ~> sam)~NW & (Street ~> sam)~(0,201,0,0) // DxD T from thru diag (aux tile)
548+
Rules += sam~(0,1,203,0) & sam~ES | (Street ~> sam)~(203,0,0,0) & (Street ~> sam)~NW // DxD T across 1
549+
Rules += sam~(0,0,203,0) & sam~ES | (Street ~> sam)~(203,0,0,1) & (Street ~> sam)~NW // DxD T across 2
550+
Rules += sam~(0,201,3,0) & sam~NW | (Street ~> sam)~WS // DxD T to diag from end side
551+
Rules += sam~(3,0,0,201) & sam~ES | (Street ~> sam)~NW // DxD T to diag from thru side
552+
Rules += sam~(0,0,0,201) & sam~ES | (Street ~> sam)~NW // DxD T to diag from aux tile
553553

554554
// intersections involving the orth-diag curve
555555

@@ -817,8 +817,8 @@ class SamRuleGenerator(var context: RuleTransducer.Context) extends RuleGenerato
817817
Rules += sam~ES & minor~EN | sam~NW & minor~CSW | sam~ES & minor~CEN | % // DxD T 2-1 Alt
818818

819819
// continue
820-
Rules += sam~ES & minor~CSW | (Street ~> sam)~NW // DxD Thru T 1
821-
Rules += sam~ES & minor~CWS | (Street ~> sam)~NW // DxD Thru T 2
820+
Rules += sam~ES & minor~(3,0,0,201) | (Street ~> sam)~NW // DxD Thru T 1
821+
Rules += sam~ES & minor~(0,0,0,201) | (Street ~> sam)~NW // DxD Thru T 2
822822
}
823823
}
824824

0 commit comments

Comments
 (0)