diff options
author | Norbert Preining <norbert@preining.info> | 2017-09-04 09:45:51 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2017-09-04 09:45:51 +0900 |
commit | 138f77fe71e43adc24ecb030d73df81cc5c4eb7e (patch) | |
tree | cd2d906c634149bbecd2f4bad3d540c16b23befa /texmf-dist/scripts/ketpic/ketlib/ketpic2escifiles6/Xyzaxpersname.sci | |
parent | 37bfdbee2c91bab6f0abd54503a0b9c669c9109e (diff) |
add ketpic
Diffstat (limited to 'texmf-dist/scripts/ketpic/ketlib/ketpic2escifiles6/Xyzaxpersname.sci')
-rwxr-xr-x | texmf-dist/scripts/ketpic/ketlib/ketpic2escifiles6/Xyzaxpersname.sci | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/texmf-dist/scripts/ketpic/ketlib/ketpic2escifiles6/Xyzaxpersname.sci b/texmf-dist/scripts/ketpic/ketlib/ketpic2escifiles6/Xyzaxpersname.sci new file mode 100755 index 00000000..d9c1c7df --- /dev/null +++ b/texmf-dist/scripts/ketpic/ketlib/ketpic2escifiles6/Xyzaxpersname.sci @@ -0,0 +1,72 @@ +// 08.08.14 +// 08.08.15 +// 09.09.18 + +function Kekka=Xyzaxpersname(varargin) + global MilliIn; + Eps=10.0^(-6); + Nargs=length(varargin); + Dr=0.19*1000/2.54/MilliIn; + Tmp=varargin(Nargs); + if Nargs>1 & type(Tmp)==1 + Dr=Dr*Tmp; + Nargs=Nargs-1; + end; + if type(varargin(1))==10 + Xrange=varargin(1); Yrange=varargin(2); Zrange=varargin(3); + J=mtlb_findstr(Xrange,'='); + Xname=part(Xrange,1:J-1); + Tmp=evstr(part(Xrange,J+1:length(Xrange))); + Px=[Tmp(1),0,0]; Qx=[Tmp(2),0,0]; + J=mtlb_findstr(Yrange,'='); + Yname=part(Yrange,1:J-1); + Tmp=evstr(part(Yrange,J+1:length(Yrange))); + Py=[0,Tmp(1),0]; Qy=[0,Tmp(2),0]; + J=mtlb_findstr(Zrange,'='); + Zname=part(Zrange,1:J-1); + Tmp=evstr(part(Zrange,J+1:length(Zrange))); + Pz=[0,0,Tmp(1)]; Qz=[0,0,Tmp(2)]; + else + Data=varargin(1); + Xname='x'; Yname='y'; Zname='z'; + if Nargs>1 + if varargin(2)~='' + Xname=varargin(2); + end; + if varargin(3)~='' + Yname=varargin(3); + end; + if varargin(4)~='' + Zname=varargin(4); + end; + end; + Tmp=Mixop(1,Data); + Px=Tmp(1,:); Qx=Tmp(2,:); + Tmp=Mixop(2,Data); + Py=Tmp(1,:) ; + Qy=Tmp(2,:); + Tmp=Mixop(3,Data); + Pz=Tmp(1,:); + Qz=Tmp(2,:); + end; + Ph=Perspt(Px); Qh=Perspt(Qx); R=Vecnagasa(Ph,Qh); + Kekka=[]; + if R>Eps + Ch=Qh+Dr/R*(Qh-Ph); + Kekka=Mixadd(Kekka,Pointdata(Ch)); + Expr(Ch,'c',Xname); + end + Ph=Perspt(Py); Qh=Perspt(Qy); R=Vecnagasa(Ph,Qh); + if R>Eps + Ch=Qh+Dr/R*(Qh-Ph); + Kekka=Mixadd(Kekka,Pointdata(Ch)); + Expr(Ch,'c',Yname); + end; + Ph=Perspt(Pz); Qh=Perspt(Qz); R=Vecnagasa(Ph,Qh); + if R>Eps + Ch=Qh+Dr/R*(Qh-Ph); + Kekka=Mixadd(Kekka,Pointdata(Ch)); + Expr(Ch,'c',Zname); + end; +endfunction + |