Mercurial > gemma
changeset 673:9a0246ab3021 octree
octree: simplified vertex interpolation.
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Wed, 19 Sep 2018 11:03:00 +0200 |
parents | 5fa2eaffac84 |
children | 120a82bd9953 |
files | cmd/tin2octree/vertex.go |
diffstat | 1 files changed, 12 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/cmd/tin2octree/vertex.go Wed Sep 19 10:57:37 2018 +0200 +++ b/cmd/tin2octree/vertex.go Wed Sep 19 11:03:00 2018 +0200 @@ -30,12 +30,21 @@ } } +func (v vertex) sub(w vertex) vertex { + return vertex{ + v.x - w.x, + v.y - w.y, + v.z - w.z, + } +} + func interpolate(v1, v2 vertex) func(vertex) vertex { + v2 = v2.sub(v1) return func(s vertex) vertex { return vertex{ - (v2.x-v1.x)*s.x + v1.x, - (v2.y-v1.y)*s.y + v1.y, - (v2.z-v1.z)*s.z + v1.z, + v2.x*s.x + v1.x, + v2.y*s.y + v1.y, + v2.z*s.z + v1.z, } } }