summaryrefslogtreecommitdiff
path: root/transform.py
diff options
context:
space:
mode:
Diffstat (limited to 'transform.py')
-rw-r--r--transform.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/transform.py b/transform.py
new file mode 100644
index 0000000..4e5eb9c
--- /dev/null
+++ b/transform.py
@@ -0,0 +1,10 @@
+import numpy as np
+
+def rotate(x, phi, n):
+ x = np.asarray(x)
+ n = np.asarray(n)
+
+ r = np.cos(phi)*np.identity(3) + (1-np.cos(phi))*np.outer(n,n) + \
+ np.sin(phi)*np.array([[0,n[2],-n[1]],[-n[2],0,n[0]],[n[1],-n[0],0]])
+
+ return np.inner(x,r)