From 138f77fe71e43adc24ecb030d73df81cc5c4eb7e Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 4 Sep 2017 09:45:51 +0900 Subject: add ketpic --- .../ketpic/ketlib/ketpicscifiles6/Facesdata.sci | 154 +++++++++++++++++++++ 1 file changed, 154 insertions(+) create mode 100755 texmf-dist/scripts/ketpic/ketlib/ketpicscifiles6/Facesdata.sci (limited to 'texmf-dist/scripts/ketpic/ketlib/ketpicscifiles6/Facesdata.sci') diff --git a/texmf-dist/scripts/ketpic/ketlib/ketpicscifiles6/Facesdata.sci b/texmf-dist/scripts/ketpic/ketlib/ketpicscifiles6/Facesdata.sci new file mode 100755 index 00000000..0ed2f249 --- /dev/null +++ b/texmf-dist/scripts/ketpic/ketlib/ketpicscifiles6/Facesdata.sci @@ -0,0 +1,154 @@ +///////// +// 09.10.29 +// 11.01.13 (HiddenL) remodified 110122 +// 13.03.30 (HiddenL) debugged 140330 + +function NohiddenL=Facesdata(varargin) + global PHHIDDENDATA VELNO VELHI; + Nargs=length(varargin); + FL=varargin(1); + PT=varargin($); + if mtlb_findstr(PT,'para')~=[] + Ptype=1; //para + else + Ptype=-1; //pers + end; + if Nargs==2 + CLadd=list(); + else + CLadd=varargin(2); + end; + NohiddenL=list(); + HiddenL=list(); + Eps=10^(-4); + if length(CLadd)>0 + if type(CLadd)==1 + C=list(); + if size(CLadd,1)>1 + for I=1:size(CLadd,1) + C($+1)=CLadd(I,:); + end; + else + for I=1:3:size(CLadd,2) + C($+1)=CLadd(1,I:I+2); + end; + end; + CrvL=list(C); + elseif type(CLadd(1))==1 + CrvL=list(); + for J=1:length(CL) + Ctmp=CLadd(J); + C=list(); + if size(Ctmp,1)>1 + for I=1:size(Ctmp,1) + C($+1)=Ctmp(I,:); + end; + else + for I=1:3:size(Ctmp,2) + C($+1)=Ctmp(1,I:I+2); + end; + end; + CrvL($+1)=C; + end; + else + CrvL=CLadd; + end; + else + CrvL=list(); + end; + Out=MakeveLfaceL(FL); + VELNO=Out(1); + VELHI=list(); + for I=1:length(CrvL) + Tmp=CrvL(I); + for J=1:length(Tmp)-1 + Edge=list(Tmp(J),Tmp(J+1)); + Ntmp=length(VELNO); // + VELNO(Ntmp+1)=list(Edge,0,Ntmp+1); // + end; + end; + FaceL=Out(2); + if mtlb_findstr(PT,'raw')==[] + for Nf=1:length(FaceL) + Face=FaceL(Nf); + Menkakusi2(Face,Nf,Ptype); + end; + end; + for I=1:length(VELNO) + Edge=Op(1,VELNO(I)); + if norm(Edge(1)-Edge(2))>Eps + NohiddenL($+1)=Spaceline(Edge); + end; + end; + EdgeL=list(); // from 13.03.30 + for K=1:length(VELHI) + Edge=Op(1,VELHI(K)); + P=Edge(1); Q=Edge(2); + if norm(P-Q)>Eps then + EdgeL($+1)=Edge; + end + end + for K=1:length(EdgeL) + Edge=EdgeL(K); // + P=Edge(1); Q=Edge(2); + Cflg=0; + for J=K+1:length(EdgeL) + Ej=EdgeL(J); // + Pj=Ej(1); Qj=Ej(2); + if norm(Crossprod(Q-P,Qj-Pj))>Eps then + continue + end + if norm(Q-Pj)0 +// Lr=[]; +// Edge=Op(1,VELHI(L(1))); // +// P=Edge(1); +// Q=Edge(2); +// +// disp([293,P,Q]) +// +// if norm(P-Q)>Eps +// for J=2:length(L) +// Rflg=0; +// Ej=Op(1,VELHI(L(J))); // +// Pj=Ej(1); +// Qj=Ej(2); +// if norm(Crossprod(Q-P,Qj-Pj))>Eps +// Lr=[Lr,J]; +// continue; +// end; +// if norm(Q-Pj)