diff options
Diffstat (limited to 'texmf-dist/scripts/ketpic/ketlib/ketpicscifiles6/Rotatedata.sci')
-rwxr-xr-x | texmf-dist/scripts/ketpic/ketlib/ketpicscifiles6/Rotatedata.sci | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/texmf-dist/scripts/ketpic/ketlib/ketpicscifiles6/Rotatedata.sci b/texmf-dist/scripts/ketpic/ketlib/ketpicscifiles6/Rotatedata.sci new file mode 100755 index 00000000..845cac17 --- /dev/null +++ b/texmf-dist/scripts/ketpic/ketlib/ketpicscifiles6/Rotatedata.sci @@ -0,0 +1,39 @@ +// 08.05.23 Koshikawa +// 08.09.20 +// 15.04.12 + +function OutL=Rotatedata(varargin) + Nargs=length(varargin); + ML=varargin(1); + ML=Flattenlist(ML); + Theta=varargin(2); + if Nargs==2, + Pt=[0,0] + else + Pt=varargin(3); + end + Cx=Pt(1);Cy=Pt(2); + OutL=[]; + for N=1:length(ML) + GL=Op(N,ML); + Out=[]; + for I=1:size(GL,1) + Tmp=GL(I,:); + X1=Tmp(1); + Y1=Tmp(2); + if Tmp==[%inf,%inf] + X2=X1; + Y2=Y1; + else + X2=Cx+(X1-Cx)*cos(Theta)-(Y1-Cy)*sin(Theta); + Y2=Cy+(X1-Cx)*sin(Theta)+(Y1-Cy)*cos(Theta); + end; + Out=[Out;X2,Y2]; + end; + OutL=Mixadd(OutL,Out); + end; + if length(OutL)==1 + OutL=Op(1,OutL); + end; +endfunction + |