summaryrefslogtreecommitdiff
path: root/texmf-dist/scripts/ketcindy/ketlib/ketpicscifiles6/Invperspt.sci
diff options
context:
space:
mode:
Diffstat (limited to 'texmf-dist/scripts/ketcindy/ketlib/ketpicscifiles6/Invperspt.sci')
-rw-r--r--texmf-dist/scripts/ketcindy/ketlib/ketpicscifiles6/Invperspt.sci65
1 files changed, 0 insertions, 65 deletions
diff --git a/texmf-dist/scripts/ketcindy/ketlib/ketpicscifiles6/Invperspt.sci b/texmf-dist/scripts/ketcindy/ketlib/ketpicscifiles6/Invperspt.sci
deleted file mode 100644
index c2c35355..00000000
--- a/texmf-dist/scripts/ketcindy/ketlib/ketpicscifiles6/Invperspt.sci
+++ /dev/null
@@ -1,65 +0,0 @@
-// 08.08.12
-// 09.10.31
-// 09.11.12
-
-function Out=Invperspt(varargin)
- global FocusPoint EyePoint;
- Eps=10^(-4);
- Fk=varargin($);
- NFk=Numptcrv(Fk)
- Tmp=varargin(1);
- if type(Tmp)==1 & length(Tmp)==1
- Ph=varargin(1);
- Fh=varargin(2);
- else
- Fh=Projpers(Fk);
- if NFk>2
- Tmp1=Nearestpt(Tmp,Fh);
- Ph=Tmp1(2);
- else
- Ah=Ptcrv(1,Fh); Bh=Ptcrv(2,Fh);
- V1=Tmp-Ah; V2=Bh-Ah;
- Tmp1=Crossprod(V1,V2);
- if abs(Tmp1)>Eps
- disp('Not on the line');
- Out=[];
- return;
- else
- Ph=Dotprod(V1,V2)/norm(V2)^2+1; // 09.11.12
- end;
- end;
- end;
- if NFk>2
- N=Trunc(Ph);
- S0=Ph-N;
- if Ph>Numptcrv(Fh)-Eps
- Out=list(Ptend(Fk),Numptcrv(Fh));
- return;
- end;
- else
- N=1;
- S0=Ph-1; // 09.11.12
- end;
- Ak=Ptcrv(N,Fk); Bk=Ptcrv(N+1,Fk);
- Ah=Ptcrv(N,Fh); Bh=Ptcrv(N+1,Fh);
- Ph=(1-S0)*Ah+S0*Bh;
- Phc=Cancoordpers([Ph,0]);
- Ahc=Cancoordpers([Ah,0]);
- Bhc=Cancoordpers([Bh,0]);
- Vp=Phc-EyePoint;
- Va=Ak-EyePoint;
- AB=Bk-Ak;
- Cp=Crossprod(Vp,AB);
- Nmr=Crossprod(Va,Vp);
- Mx=max(abs(Cp));
- if abs(Cp(1))==Mx
- T2=Nmr(1)/Cp(1);
- elseif abs(Cp(2))==Mx
- T2=Nmr(2)/Cp(2);
- else
- T2=Nmr(3)/Cp(3);
- end;
- Pk=(1-T2)*Ak+T2*Bk;
- Out=list(Pk,N+T2);
-endfunction
-