65 lines
1.0 KiB
Go
65 lines
1.0 KiB
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"s.mcquay.me/dm/rect"
|
|
)
|
|
|
|
func main() {
|
|
r := rect.Rectangle{
|
|
P1: rect.Point{1, 1},
|
|
P2: rect.Point{1, 2},
|
|
P3: rect.Point{2, 1},
|
|
P4: rect.Point{2, 2},
|
|
}
|
|
|
|
fmt.Println(r.IsRect())
|
|
|
|
r1 := rect.Rectangle{
|
|
P1: rect.Point{1, 1},
|
|
P2: rect.Point{1, 2},
|
|
P3: rect.Point{2, 1},
|
|
P4: rect.Point{2, 2},
|
|
}
|
|
r2 := rect.Rectangle{
|
|
P1: rect.Point{2, 2},
|
|
P2: rect.Point{2, 3},
|
|
P3: rect.Point{3, 2},
|
|
P4: rect.Point{3, 3},
|
|
}
|
|
|
|
fmt.Println(rect.Intersection(r1, r2))
|
|
|
|
r3 := rect.Rectangle{
|
|
P1: rect.Point{0, 0},
|
|
P2: rect.Point{0, 3},
|
|
P3: rect.Point{3, 0},
|
|
P4: rect.Point{3, 3},
|
|
}
|
|
r4 := rect.Rectangle{
|
|
P1: rect.Point{2, 2},
|
|
P2: rect.Point{2, 3},
|
|
P3: rect.Point{3, 2},
|
|
P4: rect.Point{3, 3},
|
|
}
|
|
|
|
fmt.Println(rect.Adjacency(r3, r4))
|
|
|
|
r5 := rect.Rectangle{
|
|
P1: rect.Point{0, 0},
|
|
P2: rect.Point{0, 3},
|
|
P3: rect.Point{3, 0},
|
|
P4: rect.Point{3, 3},
|
|
}
|
|
r6 := rect.Rectangle{
|
|
P1: rect.Point{1, 1},
|
|
P2: rect.Point{1, 2},
|
|
P3: rect.Point{2, 1},
|
|
P4: rect.Point{2, 2},
|
|
}
|
|
|
|
fmt.Println(rect.Containment(r5, r6))
|
|
|
|
}
|