summaryrefslogtreecommitdiff
path: root/texmf-dist/scripts/ketpic/ketlib/ketpic2escifiles6/Cancoordpers.sci
diff options
context:
space:
mode:
Diffstat (limited to 'texmf-dist/scripts/ketpic/ketlib/ketpic2escifiles6/Cancoordpers.sci')
-rwxr-xr-xtexmf-dist/scripts/ketpic/ketlib/ketpic2escifiles6/Cancoordpers.sci22
1 files changed, 22 insertions, 0 deletions
diff --git a/texmf-dist/scripts/ketpic/ketlib/ketpic2escifiles6/Cancoordpers.sci b/texmf-dist/scripts/ketpic/ketlib/ketpic2escifiles6/Cancoordpers.sci
new file mode 100755
index 00000000..b63aba5c
--- /dev/null
+++ b/texmf-dist/scripts/ketpic/ketlib/ketpic2escifiles6/Cancoordpers.sci
@@ -0,0 +1,22 @@
+// 08.08.12
+
+function Out=Cancoordpers(P)
+ global EyePoint FocusPoint;
+ Tmp=EyePoint-FocusPoint;
+ E1=Tmp(1); F1=Tmp(2); G1=Tmp(3);
+ Ca=E1/sqrt(E1^2+F1^2);
+ Sa=F1/sqrt(E1^2+F1^2);
+ E2=E1*Ca+F1*Sa; F2=-E1*Sa+F1*Ca; G2=G1;
+ Cb=E2/sqrt(E2^2+G2^2);
+ Sb=G2/sqrt(E2^2+G2^2);
+ E3=E2*Cb+G2*Sb; F3=F2; G3=-E2*Sb+G2*Cb;
+ Xz=P(3); Yz=P(1); Zz=P(2);
+ X3=Xz; Y3=Yz*(E3-Xz)/E3; Z3=Zz*(E3-Xz)/E3;
+ X2=X3*Cb-Sb*Z3; Y2=Y3; Z2=Cb*Z3+Sb*X3;
+ X1=X2*Ca-Sa*Y2; Y1=Ca*Y2+Sa*X2; Z1=Z2;
+ X=X1+FocusPoint(1);
+ Y=Y1+FocusPoint(2);
+ Z=Z1+FocusPoint(3);
+ Out=[X,Y,Z];
+endfunction
+