魔方模拟器和解决者

这个程序模拟、操纵和解决所有的魔方。包括摄像头识别。

13 k下载

更新2011年10月23日

查看许可协议

运行:> > digrub

这个程序允许您生成一个随机的排列任意维度的多维数据集,然后可以操纵手动或通过计算机来解决。你也可以输入你自己的状态使用一个摄像头(子集要),或简单地输入每个facelet的颜色(2、3、4 x.x)。

有几个可用的内置的解决机制:

——上帝的算法2 x2x2:这是给定状态的最优解(半圈度量)。

——Thistlethwaite子集要45 (T45):该算法总能找到一个解决方案的45移动或更少,平均31岁。

炉料(初学者)解决方案:这是初学者的常用方法解决多维数据集。比T45更直观,但也更广泛的和不那么有效。

为4 - 423 T45 x4x4(阅读4 - 3,T45):该算法将立方体状态可以处理像这是一个子集要立方体。当这是实现,T45可以应用于解决(~ 180转avg)。

——逆争夺所有的数据集:这就像作弊,但是当的争夺,每个多维数据集可以解决反演序列。

所有上述方法(除了逆争夺,琐碎的)解释了广泛的包括PDF。PDF还包含一个巨大的立方体的理论描述。

/文件:包括函数的描述
algrot。m -估计的算法如何变化在立方体的旋转。
digrub。图-图主程序GUI
digrub。m - GUIDE-generated m文件和digrub.fig一起去。
editstate。图——GUI为手工输入的程序图
editstate。m - GUIDE-generated m文件和editstate.fig一起去。
findpeeks。m - Peek-finder用于发现在摄像头图像立方体的地位。
GetCorners。m -估计的角落排列/方向给定子集要立方体。
GetCorners2。m -计算给定的角落排列/方向2 x2x2立方体。
GetEdges。m -估计的边缘排列/方向给定子集要立方体。
GetFacelets。m -转换状态的取向/置换表示facelet repr。
Ind2State。m -将索引转换为状态
move2rub。m -转换的移动形式的x11魔术代码“B”。
奇偶校验。m -计算排列的平价。
rub2move。m -移动魔方的代码转换为轴的x11的形式。
rubcheck。m -检查的有效性2 x2x2或子集要状态。
rubcross。m -搜索的交叉立方体。
rubgen。m -生成一个多维数据集
rubinfo。m -返回信息多维数据集的状态
rubopt。m -优化move-sequence
ruborient。m -朝向多维数据集
rubplot。m -情节的3 d图像立方体
rubrot。m -应用一个多维数据集
rubrot2。m -旋转整个立方体
rubsolve。m -使用一层一层地解决多维数据集的方法
Solve45。m -使用T45解决多维数据集
Solve222。m -找到神2 x2x2多维数据集的算法
Solve444。m -找到解决任何4 x4x4多维数据集。

感谢下载!所有的反馈都是赞赏!

jorenheit[在]gmail.com

引用作为

Joren海特(2022)。魔方模拟器和解决者(//www.ru-cchi.com/matlabcentral/fileexchange/31672-rubik-s-cube-simulator-and-solver), MATLAB中央文件交换。检索

MATLAB版本兼容性
创建R2010a
兼容任何释放
平台的兼容性
窗户 macOS Linux

世界杯预选赛小组名单社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!世界杯预选赛小组名单

开始狩猎!
版本 发表 发布说明
1.9.0.0

更新截图(Windows版本),轻微的修正

1.8.0.0

奇偶校验。米,我忘了包括过去的版本。

1.6.0.0

大的变化!新的、更有效的解决机制,支持2 x2x2,子集要和4 x4x4立方体。新按钮布局和广泛的解释pdf。

1.5.0.0

添加选项解决多维数据集使用逆争夺(更高的维度数据集可以解决现在)。选择显示一行数据立方体。当手动编辑数据集添加完整的有效性检查。

1.4.0.0

改善步骤1的解决算法,导致了更稳定的解决时间(0 - 2秒)。

1.2.0.0

添加保存/开放功能。
添加手动输入/编辑状态和改进方法Webcam-function使用这种方法(手动校正捕获状态)。

1.1.0.0

删除两个缺陷,提高了输出解决方案的解决方案+动画。添加了“撤销”按钮和选项隐藏当前的混乱。

1.0.0.0

Baidu
map