0001
0002
0003
0004 function [SO] = zStackingOverlap(N1,N2)
0005
0006 switch N1.Code,
0007 case 1,
0008 X = [[ -2.100463 0.000000 4.271447 1.920945 0.230436 -2.100463]; ...
0009 [ 0.447145 -1.009320 1.317924 5.150733 4.699718 0.447145]]';
0010 t = [[ 5 5 5]; ...
0011 [ 2 4 2]; ...
0012 [ 6 3 3]]';
0013 case 2,
0014 X = [[ -2.082733 0.000000 2.269450 1.203833 -0.527970 -2.036772 -2.082733]; ...
0015 [ 0.123632 -1.010259 -0.120783 4.411996 4.602202 2.647095 0.123632]]';
0016 t = [[ 6 6 4 4]; ...
0017 [ 2 2 6 6]; ...
0018 [ 7 3 3 5]]';
0019 case 3,
0020 X = [[ -2.101572 0.000000 4.872516 5.295175 3.613335 1.396986 -0.751391 -2.101572]; ...
0021 [ 0.463584 -1.009529 0.097781 1.782283 3.374547 4.394213 2.120132 0.463584]]';
0022 t = [[ 7 5 5 5 5]; ...
0023 [ 2 7 3 7 3]; ...
0024 [ 8 2 2 6 4]]';
0025 case 4,
0026 X = [[ -2.082780 0.000000 2.292490 2.092152 0.177156 -2.124577 -2.082780]; ...
0027 [ 0.111836 -1.008947 -0.048394 2.445179 4.020060 2.616537 0.111836]]';
0028 t = [[ 4 4 7 7]; ...
0029 [ 5 2 4 4]; ...
0030 [ 6 3 6 2]]';
0031 end
0032
0033 S = N1.Fit(1,:);
0034 R = N1.Rot;
0035 L = length(N2.Fit(:,1));
0036 Y = (N2.Fit - ones(L,1)*S) * R;
0037
0038 warning off
0039
0040 d = tsearch(X(:,1),X(:,2),t,Y(:,1),Y(:,2));
0041
0042 warning on
0043
0044 SO = length(find(d < 100));
0045
0046
0047
0048
0049
0050