summaryrefslogtreecommitdiff
path: root/vec.go
diff options
context:
space:
mode:
authoranon5 <anon5clam@protonmail.com>2021-06-21 18:47:26 +0000
committeranon5 <anon5clam@protonmail.com>2021-06-21 18:47:26 +0000
commit425da65ed46061303604610bb539d6495b2b1f3f (patch)
tree10ae3e665132c369ce0207676321cef870679923 /vec.go
parent9f239d341ef46b656dda759020da87bdd0606344 (diff)
Add high-level protocol (de)serialization
Diffstat (limited to 'vec.go')
-rw-r--r--vec.go20
1 files changed, 20 insertions, 0 deletions
diff --git a/vec.go b/vec.go
new file mode 100644
index 0000000..08422c6
--- /dev/null
+++ b/vec.go
@@ -0,0 +1,20 @@
+package mt
+
+// A Vec is a 3D vector in units of 0.1 nodes.
+type Vec [3]float32
+
+// Add returns v+w.
+func (v Vec) Add(w Vec) Vec {
+ for i := range v {
+ v[i] += w[i]
+ }
+ return v
+}
+
+// Sub returns v-w.
+func (v Vec) Sub(w Vec) Vec {
+ for i := range v {
+ v[i] -= w[i]
+ }
+ return v
+}