main
1package main
2
3import (
4 "fmt"
5 "math"
6
7 "gonum.org/v1/gonum/spatial/kdtree"
8)
9
10func main() {
11 var g galaxy = make([]Location, 1000)
12 for range 100 {
13 l := NewLocation()
14 fmt.Println(l)
15 g = append(g, l)
16 }
17 t := kdtree.New(g, false)
18 me := NewLocation()
19 keep := kdtree.NewNKeeper(5)
20 t.NearestSet(keep, me)
21
22 fmt.Println(me)
23 for _, l := range keep.Heap {
24 system := l.Comparable.(Location)
25 fmt.Printf("\t%s: %0.3f\n", system.String(), math.Sqrt(system.Distance(me)))
26 }
27}