summaryrefslogtreecommitdiff
path: root/texmf-dist/scripts/ketpic/ketlib/ketpic2escifiles6/Faceremovaldata0.sci
blob: 7dc8bef146660bf2a2b3686d9085059a768b536b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
//    NEW
// Faceremovaldata
// 09.10.24
// 09.10.26
// 09.10.27

function NohiddenL=Faceremovaldata(FL,CLadd,PT)
  global PHHIDDENDATA VELNO VELHI;
  NohiddenL=list();
  HiddenL=list();
  Eps=10^(-4);
    if mtlb_findstr(PT,'para')~=[]
    Ptype=1;  //para
  else
    Ptype=-1;   //pers
  end;
  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;
  VELNO=list();
  for I=1:length(CrvL)
    Tmp=CrvL(I);
    for J=1:length(Tmp)-1
      Edge=list(Tmp(J),Tmp(J+1));
      VELNO($+1)=list(Edge,0);
    end;
  end;
  VELHI=list();
  Out=MakeveLfaceL(FL);
  FaceL=Out(2);
  for Nf=1:length(FaceL)
    Face=FaceL(Nf);
    Menkakusi(Face,Nf,Ptype);
  end;
  for I=1:length(VELNO)
    Edge=Op(1,VELNO(I));
    if norm(Edge(1)-Edge(2))>Eps
      NohiddenL($+1)=Spaceline(Edge);
    end;
  end;
  for I=1:length(VELHI)
    Edge=Op(1,VELHI(I));
    if norm(Edge(1)-Edge(2))>Eps
      HiddenL($+1)=Spaceline(Edge);
    end;
  end;
  PHHIDDENDATA=HiddenL;
endfunction