www.gusucode.com > 三维模仿源码程序 > 三维模仿源码程序/MathRubik2/MakeFullCube.m
function Cube=MakeFullCube(Cube) %MakeFullCube - Makes the cube "full" (mid cubes orientation dependent % Cube=MakeFullCube(Cube) Cube.bFullCube=true; for i=1:6 k=Cube.iExtraFaces(i,:); ccc=Cube.Color(Cube.iMidInd(k)); if Cube.Color(k(1),Cube.iMid(i)) if ~isempty(setdiff(ccc,Cube.Color(k,Cube.iMid(i)))) Cube.Color(k,Cube.iMid(i))=0; end % (!!?check for the right order?!!) end if Cube.Color(k(1),Cube.iMid(i))==0 Cube.Color(k,Cube.iMid(i))=ccc; end end