added segment convertion to mapfmt
This commit is contained in:
18
internal/mapfmt/toseg.go
Normal file
18
internal/mapfmt/toseg.go
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
package mapfmt
|
||||||
|
|
||||||
|
import "bspviz/internal/geom" // anpassen
|
||||||
|
|
||||||
|
func LinedefsToSegs(verts []Vertex, lines []Linedef) []geom.Seg {
|
||||||
|
segs := make([]geom.Seg, 0, len(lines))
|
||||||
|
for _, L := range lines {
|
||||||
|
a := verts[L.V1]
|
||||||
|
b := verts[L.V2]
|
||||||
|
A := geom.V(float64(a.X), float64(a.Y))
|
||||||
|
B := geom.V(float64(b.X), float64(b.Y))
|
||||||
|
if geom.Len(geom.Sub(B, A)) < 1e-9 {
|
||||||
|
continue // degenerat
|
||||||
|
}
|
||||||
|
segs = append(segs, geom.Seg{A: A, B: B})
|
||||||
|
}
|
||||||
|
return segs
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user