魔方吧·中文魔方俱乐部

 找回密码
 注册
搜索
热搜: 魔方
查看: 3096|回复: 7
打印 上一主题 下一主题

联动转面五魔方java助手及其仿真软件 [复制链接]

Rank: 8Rank: 8

积分
8156
帖子
3086
精华
81
UID
4618
性别

论坛建设奖 十年元老

跳转到指定楼层
1#
发表于 2013-1-14 17:49:34 |只看该作者 |倒序浏览
本帖最后由 hubo5563 于 2013-1-17 11:51 编辑

      联动转面五魔方java助手及其仿真软件


    联动魔方有可能做成实物,请看Timur的四阶联动魔方:

http://bbs.mf8-china.com/forum.p ... &extra=page%3D2

   这个魔方叫做Clockwork 4x4x4 Cube,意思是像钟表那样转动的四阶魔方。我把他的思路推广到五魔方上了,由于不只是像钟表那样转动,这里也定义了对面同向和对面反向的转动,因此起名为联动转面五魔方。
   本程序支持所有可能的一、二层切割的转面五魔方,一层7个,2层58个共65个。
   特征面用6个数表示,因为五魔方共12个面,对面的特征和本身相同,所以只需定义6个面的特征即可。
   特征为0,对面和本面不联动;
   特征为1,对面和本面联动,转动方向相反
   特征为2,对面和本面联动,转动方向相同
   特征为3,对面和本面都不能转动。

   这类魔方难度很大。




程序下载:
联动转面五魔方.rar (51.07 KB, 下载次数: 73)

java助手截图:
0002.JPG

仿真软件截图:
0001.JPG

Rank: 7Rank: 7Rank: 7

积分
10342
帖子
3379
精华
18
UID
101905
性别
兴趣爱好
收藏

收藏爱好者 十年元老

2#
发表于 2013-1-14 20:41:32 |只看该作者
很可怕的魔方......程序!

使用道具 举报

Rank: 2

积分
221
帖子
210
精华
0
UID
1249419
性别
3#
发表于 2013-1-14 22:38:16 |只看该作者
谢谢楼主分享。

使用道具 举报

Rank: 4

积分
1668
帖子
988
精华
8
UID
82833
性别
保密

魔方破解达人 六年元老

4#
发表于 2013-1-15 14:06:04 |只看该作者
好东西!

一个挺特别的魔方是 全2面的六色联动五魔方。下载以后,选配色方案为六色,然后定义面特征为222222即可。

特别之处:由于它的配色方案,相反的两个点永远是同样颜色的。而且旋转规则也保证了不管怎么转动,相反的两个点永远同色。所以所有的角块和棱块都会成对出现。但是解的时候就会发现,有的角块会显得“镜像”了,其实这只是这个角块组的“前后”反了。而且这个魔方上可以单独旋转一个角块组。至于怎么做大家仔细想,呵呵。

数学:普通的五魔方在拓扑上讲就是个球。但是这个魔方上,可以认为相反的两点“完全一样”。如果认为这两点是等同的,那么这个东西的拓扑结构就不是球了,而叫射影平面:
http://zh.wikipedia.org/zh/%E5%AE%9E%E5%B0%84%E5%BD%B1%E5%B9%B3%E9%9D%A2
所以这个魔方可以叫做 “射影平面上的五魔方”。它有和莫比乌斯带类似的性质:一个图形可以光靠移动就被镜像。之前说过的镜像角块的事情也可以这样从数学上解释。这个把相对的点等同后得到的十二面体也叫半十二面体:
http://en.wikipedia.org/wiki/Hemi-dodecahedron
有比较丰富的数学背景。

不过即使不管数学,这个魔方也是个挺有意思的魔方,因为要处理镜像角块,单转角块的情况。我觉得这个魔方是熟悉射影平面的一个很好的例子。最早是在magictile里支持的 (http://www.gravitation3d.com/magictile/). 那里除了这个,还支持许多其它的射影平面里的魔方,还有克莱因瓶上的魔方等等。

使用道具 举报

Rank: 4

积分
1668
帖子
988
精华
8
UID
82833
性别
保密

魔方破解达人 六年元老

5#
发表于 2013-1-15 14:11:55 |只看该作者
胡波老师,我有个编程方面的建议。

我以前跟您提过,你发的html文件,我在chrome和firefox直接打开显示不了魔方。原因后来我搞明白了,就是一些 html 元素 比如
<SELECT onchange=init(); name="order"> ..... </SELECT>
里定义了 name, 但是没定义 id

然后javascript代码中 var order=document.getElementById("order");
原则上是按 id 来取数,在许多浏览器里就会出错或者返回空值。IE里好像默认没有 id 的用 name 来,所以就通过了。但是这个好像属于不标准的做法。
您最好把html的模板里这种情况,加个 id, 成为这样:
<SELECT onchange=init(); name="order"; id="order"> ..... </SELECT>
这样所有浏览器就都可以看到了,兼容性更好。

使用道具 举报

Rank: 8Rank: 8

积分
8156
帖子
3086
精华
81
UID
4618
性别

论坛建设奖 十年元老

6#
发表于 2013-1-15 15:40:26 |只看该作者
schuma 发表于 2013-1-15 14:11
胡波老师,我有个编程方面的建议。

我以前跟您提过,你发的html文件,我在chrome和firefox直接打开显示不 ...

我按你说的发了一个全2面六色的联动五魔方。
chrome显示不了java助手的错误一直不知道原因,谢谢你给指出,晚上回家改过来试试。

使用道具 举报

Rank: 8Rank: 8

积分
8156
帖子
3086
精华
81
UID
4618
性别

论坛建设奖 十年元老

7#
发表于 2013-1-20 18:21:56 |只看该作者
schuma 发表于 2013-1-15 14:11
胡波老师,我有个编程方面的建议。

我以前跟您提过,你发的html文件,我在chrome和firefox直接打开显示不 ...

是你说的,今天在chrome上能显示了。

使用道具 举报

Rank: 1

积分
57
帖子
58
精华
0
UID
1329682
性别
保密
兴趣爱好
其它
8#
发表于 2013-12-10 19:23:07 |只看该作者
看看五魔是如何联动的O(∩_∩)O

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

Archiver|手机版|魔方吧·中文魔方俱乐部

GMT+8, 2024-11-24 07:20

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部