Add Files of first version

This commit is contained in:
2025-11-12 22:17:04 +01:00
parent a43b15566b
commit d568231f94
11 changed files with 7294 additions and 0 deletions

32
minpath.go Normal file
View File

@@ -0,0 +1,32 @@
package main
import (
"fmt"
"math"
)
func calcMin(maps []Map) float64 {
var minDist float64 = math.MaxFloat64
for _, m := range maps {
for _, path := range m.paths {
minDist = math.Min(minDist, calcMinPath(path, m.ponds))
}
}
return minDist
}
func calcMinPath(path Path, ponds []Pond) float64 {
var minDist float64 = math.MaxFloat64
for _, pond := range ponds {
for _, vertex := range pond.vertices {
cinitial := path.start.distance(path.end)
ainitial := path.end.distance(vertex)
c := path.start.distance(vertex)
alpha := math.Acos((ainitial*ainitial - cinitial*cinitial - c*c) / (-2 * cinitial * c))
height := math.Sin(alpha) * c
minDist = math.Min(minDist, height)
fmt.Printf("alpha: %f, c: %f, cinital: %f, ainitial: %F, h: %f\n", alpha, c, cinitial, ainitial, height)
}
}
return minDist
}