cells2linearcon.m
来自「一个matlab的将军模型」· M 代码 · 共 44 行
M
44 行
List_cells = [];
for i=1:length(GLOBAL_PIHA.Cells)
NOT_END = 1 ;
j = 1 ;
while NOT_END
ADD =1;
if (compvec(GLOBAL_PIHA.Hyperplanes{GLOBAL_PIHA.Cells{i}.boundary(j)}.c,[0 0 1])|...
compvec(GLOBAL_PIHA.Hyperplanes{GLOBAL_PIHA.Cells{i}.boundary(j)}.c,[0 0 -1]))&...
(GLOBAL_PIHA.Hyperplanes{GLOBAL_PIHA.Cells{i}.boundary(j)}.pthb ==-1)
NOT_END = 0;
ADD = 0;
elseif (j==length(GLOBAL_PIHA.Cells{i}.boundary))
NOT_END = 0;
else
j = j+1;
end
end
if ADD
List_cells = [ List_cells i];
end
end
counter = 1;
for i=1:length(List_cells)
V_C = [];
V_d = [];
for j=1:length(GLOBAL_PIHA.Cells{List_cells(i)}.boundary)
if compvec(GLOBAL_PIHA.Hyperplanes{GLOBAL_PIHA.Cells{List_cells(i)}.boundary(j)}.c,[0 0 1])
V_C = V_C;
V_d = V_d;
else
if GLOBAL_PIHA.Cells{List_cells(i)}.hpflags(GLOBAL_PIHA.Cells{List_cells(i)}.boundary(j))
V_C =[V_C;GLOBAL_PIHA.Hyperplanes{GLOBAL_PIHA.Cells{List_cells(i)}.boundary(j)}.c];
V_d =[V_d;GLOBAL_PIHA.Hyperplanes{GLOBAL_PIHA.Cells{List_cells(i)}.boundary(j)}.d];
else
V_C =[V_C;-GLOBAL_PIHA.Hyperplanes{GLOBAL_PIHA.Cells{List_cells(i)}.boundary(j)}.c];
V_d =[V_d;-GLOBAL_PIHA.Hyperplanes{GLOBAL_PIHA.Cells{List_cells(i)}.boundary(j)}.d];
end
end
end
new_cell(i)= linearcon([0 0 1],0,V_C,V_d);
end
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?