day19

package
v0.0.0-...-b64f895 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 4, 2022 License: BSD-3-Clause Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Distance

func Distance(b1 *Vector, b2 *Vector) float64

func FindRotation

func FindRotation(s1 *Scanner, s2 *Scanner) (mat.Matrix, [][]*Vector)

func FindTransform

func FindTransform(v0 *Vector, v1 *Vector) (mat.Matrix, bool)

Find the orientation vector and rotation matrix from v1 -> v0

func Main

func Main()

func TraverseScannerTree

func TraverseScannerTree(seen mapset.Set, node *ScannerNode)

func VectorPairs

func VectorPairs(s1 *Scanner, s2 *Scanner) [][][]*Vector

Types

type Scanner

type Scanner struct {
	// contains filtered or unexported fields
}

func (Scanner) String

func (s Scanner) String() string

func (*Scanner) VectorDistances

func (s *Scanner) VectorDistances() map[float64][]*Vector

type ScannerNode

type ScannerNode struct {
	// contains filtered or unexported fields
}

func BuildScannerTree

func BuildScannerTree(scanners []*Scanner, graph map[string][]string) *ScannerNode

type Vector

type Vector struct {
	// contains filtered or unexported fields
}

func Rotate

func Rotate(rotation mat.Matrix, vector *Vector) Vector

func TransformBeacons

func TransformBeacons(s1 *Scanner, s2 *Scanner) (mat.Matrix, *Vector)

func (*Vector) Add

func (v *Vector) Add(v2 *Vector) Vector

func (*Vector) Equals

func (v *Vector) Equals(v2 *Vector) bool

func (*Vector) Multiply

func (v *Vector) Multiply(v2 *Vector) Vector

func (Vector) String

func (v Vector) String() string

func (*Vector) Subtract

func (v *Vector) Subtract(v2 *Vector) Vector

func (*Vector) ToMatrixVector

func (v *Vector) ToMatrixVector() mat.Vector

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL