blob: bbe28c12891eafd1488bdc315d05a6d361984a11 (
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
|
// 08.07.11
// 08.10.07
// 09.06.02
// 09.08.23
function AnsL=ProjCurve(Curve)
global PHI THETA;
Eps=10^(-6);
AnsL=[]; // Added
SP=sin(PHI); CP=cos(PHI);
ST=sin(THETA); CT=cos(THETA);
for I=1:size(Curve,1)
P=Curve(I,:);
x=P(1); y=P(2); z=P(3);
if x~=%inf
Xz=-x*SP+y*CP;
Yz=-x*CP*CT-y*SP*CT+z*ST;
Tmp=[Xz,Yz];
if I==1
AnsL=[Tmp];
else
Tmp1=AnsL(size(AnsL,1),:);
if Tmp1(1)==%inf | norm(Tmp-Tmp1)>Eps
AnsL=[AnsL;Tmp];
end;
end;
else
AnsL=[AnsL;%inf,%inf];
end;
end;
endfunction
|