魔方吧·中文魔方俱乐部

 找回密码
 注册
搜索
热搜: 魔方
楼主: 拼音佳佳
打印 上一主题 下一主题

乌木试下5阶用这个公式... [复制链接]

Rank: 8Rank: 8

积分
18019
帖子
16458
精华
9
UID
449
性别

魔方理论探索者 论坛建设奖 爱心大使 十年元老

11#
发表于 2007-8-15 23:51:46 |只看该作者

顺便看看这种情况:

       

使用道具 举报

Rank: 2

积分
452
帖子
38
精华
0
UID
10589
性别
12#
发表于 2007-8-25 16:28:22 |只看该作者

关于6楼代码的研究:
乌木使用的如下的代码:
<applet code="ProfessorPlayer.class" archive="professorplayer.jar" width="300" height="300">
  <param name="scriptLanguage" value="PirzerENG">
  <param name="script" value="TR2 TF2 U2 MRR2 U2 TF2 TR2">
  <param name="scriptProgress" value="0">
  <param name="stickersFront" value="0,3,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0">
  <param name="stickersBack" value="3,0,3,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3">
</applet>
其中代码中着色使用了“stickersFront”和“stickersBack”,其实不比如此麻烦的,因为代码的最终结果是还原,所以只要设置一个初始状态就可以了,初始状态(initscript)就是脚本(script)的逆操作,所以只要加入下面这行代码就可以了,和脚本只有一处需要修改,MRR2变为MRR2'
  <param name="initScript" value="TR2 TF2 U2 MRR2' U2 TF2 TR2">
修改后的完整代码变成:
<applet code="ProfessorPlayer.class" archive="professorplayer.jar" width="300" height="300">
  <param name="scriptLanguage" value="PirzerENG">
  <param name="script" value="TR2 TF2 U2 MRR2 U2 TF2 TR2">
  <param name="scriptProgress" value="0">
  <param name="initScript" value="TR2 TF2 U2 MRR2' U2 TF2 TR2">
</applet>

乌木使用的是PirzerENG语言,我通常使用SupersetENG,如果改成SupersetENG语言,那么脚本为下面两种:
第一种:乌木着色的方法
<applet code="ProfessorPlayer.class" archive="professorplayer.jar" width="300" height="300">
  <param name="scriptLanguage" value="SupersetENG">
  <param name="script" value="TR2 TF2 U2 M1R2 U2 TF2 TR2">
  <param name="scriptProgress" value="0">
  <param name="colorTable" value="0x003373,0x8c000f,0xf8f8f8,0x00732f,0xff4600,0xffd200">
  <param name="stickersFront" value="0,3,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0">
  <param name="stickersBack" value="3,0,3,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3">
</applet>
第二种:纯脚本方法
<applet code="ProfessorPlayer.class" archive="professorplayer.jar" width="300" height="300">
  <param name="scriptLanguage" value="SupersetENG">
  <param name="script" value="TR2 TF2 U2 M1R2 U2 TF2 TR2">
  <param name="scriptProgress" value="0">
  <param name="initScript" value="TR2 TF2 U2 M1R2 U2 TF2 TR2">
  <param name="colorTable" value="0x003373,0x8c000f,0xf8f8f8,0x00732f,0xff4600,0xffd200">
</applet>
我在代码中还加入了颜色修正,以符合Rubik魔方的实际情况。

上面的代码中的professorplayer.jar需要根据实际的路径进行修改,我通常直接引用官方的链接:
http://www.randelshofer.ch/professorplayer/professorplayer.jar

[此贴子已经被作者于2007-8-25 16:40:54编辑过]

使用道具 举报

Rank: 8Rank: 8

积分
18019
帖子
16458
精华
9
UID
449
性别

魔方理论探索者 论坛建设奖 爱心大使 十年元老

13#
发表于 2007-8-25 18:44:21 |只看该作者

您楼上说得这些我将继续看的。你这是深入的、介入法做java图吧?

发java图时,那些代码之类,我不去插手的,我要的初态只是用鼠标点击java助手(论坛页面顶部的“魔方吧”--“魔方吧java助手”--……)的左边的展开图来填色,提交后核实一下。要执行的步骤也是用鼠标点击进去的,演示无误后,复制代码待用即可。代码是它自动生成的,正常时我从不插手干涉、修改什么的。所以,“麻烦不麻烦”的,都是它的事,我真是浑然不知啊!

曾经在论坛的java功能不正常时,利用别人或自己以前发java 未成功而留在帖子内的代码的具体内容加以改写后,发成java图,我把那叫做“废物利用”。

也曾经对别人未成功的、做坏了的代码,倒推法理出他的填色,另外帮他发java的。

[此贴子已经被作者于2007-8-25 19:30:43编辑过]

使用道具 举报

Rank: 8Rank: 8

积分
18019
帖子
16458
精华
9
UID
449
性别

魔方理论探索者 论坛建设奖 爱心大使 十年元老

14#
发表于 2007-8-25 19:24:28 |只看该作者

此外,楼上说的第一段代码不是6楼的,而是9楼的。我现在再重新做一次,获得的代码如下:

<applet code="de.pirzer.rubik.ProfessorPlayerApp.class" codebase=5 width="300" height="300">
  <param name="scrptLanguage" value="PirzerENG">
  <param name="scrpt" value="TR2 TF2 U2 MRR2 U2 TF2 TR2 ">
  <param name="stickersFront" value="0,3,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0">
  <param name="stickersBack" value="3,0,3,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3">
</applet>

*  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *

而12楼您说我的代码如下:

<applet code="ProfessorPlayer.class" archive="professorplayer.jar" width="300" height="300">
  <param name="scriptLanguage" value="PirzerENG">
  <param name="script" value="TR2 TF2 U2 MRR2 U2 TF2 TR2">
  <param name="scriptProgress" value="0">
  <param name="stickersFront" value="0,3,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0">
  <param name="stickersBack" value="3,0,3,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3">
</applet>

两者怎么会不尽相同的?

使用道具 举报

Rank: 8Rank: 8

积分
18019
帖子
16458
精华
9
UID
449
性别

魔方理论探索者 论坛建设奖 爱心大使 十年元老

15#
发表于 2007-8-25 19:39:17 |只看该作者

再用您12楼说的、我用的代码发个java 图看看:

       

啊,不对了,这不是我用的代码呀!

使用道具 举报

Rank: 2

积分
452
帖子
38
精华
0
UID
10589
性别
16#
发表于 2007-8-26 01:03:13 |只看该作者
QUOTE:
以下是引用乌木在2007-8-25 19:24:28的发言:

此外,楼上说的第一段代码不是6楼的,而是9楼的。我现在再重新做一次,获得的代码如下:

<applet code="de.pirzer.rubik.ProfessorPlayerApp.class" codebase=5 width="300" height="300">
  <param name="scrptLanguage" value="PirzerENG">
  <param name="scrpt" value="TR2 TF2 U2 MRR2 U2 TF2 TR2 ">
  <param name="stickersFront" value="0,3,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0">
  <param name="stickersBack" value="3,0,3,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3">
</applet>

*  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *

而12楼您说我的代码如下:

<applet code="ProfessorPlayer.class" archive="professorplayer.jar" width="300" height="300">
  <param name="scriptLanguage" value="PirzerENG">
  <param name="script" value="TR2 TF2 U2 MRR2 U2 TF2 TR2">
  <param name="scriptProgress" value="0">
  <param name="stickersFront" value="0,3,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0">
  <param name="stickersBack" value="3,0,3,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3">
</applet>

两者怎么会不尽相同的?

确实是9楼,呵呵,看差了!两段代码是完全一样的,只不过你引用的是论坛的Java脚本,我引用的是官方的链接,“  <param name="scriptProgress" value="0">”这段其实只是一个进程的说明,0表示是解决问题,-1表示演示步骤,这里你最终的结果是复原魔方,所以这个值设不设置效果都是一样的!

QUOTE:
 <applet code="ProfessorPlayer.class" archive="http://www.randelshofer.ch/professorplayer/professorplayer.jar" width="300" height="300">
  <param name="scriptLanguage" value="PirzerENG">
  <param name="script" value="TR2 TF2 U2 MRR2 U2 TF2 TR2">
  <param name="scriptProgress" value="0">
  <param name="stickersFront" value="0,3,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0">
  <param name="stickersBack" value="3,0,3,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3">
</applet>

 

代码效果:

实际Rubik魔方颜色设置效果:

[此贴子已经被作者于2007-8-26 1:19:01编辑过]

使用道具 举报

Rank: 8Rank: 8

积分
18019
帖子
16458
精华
9
UID
449
性别

魔方理论探索者 论坛建设奖 爱心大使 十年元老

17#
发表于 2007-8-26 09:40:34 |只看该作者

噢,也就是说,从别处来的代码本来就是不能直接用于本论坛的,对吗?

此外,用论坛的java助手时,好像不必深入考虑那么多我们一般用户搞不懂的东西的吧?反正出来的魔方图及其演示效果符合我要求就可以了。是这样吗?如果不去考虑你说的那些东西(你说的那些我还未明白,以后再说吧,大概是搞软件的人才清楚吧?),会有什么问题吗?我一直如此干来着,如果会有问题,那倒要改的啊。

所谓“一直如此干”,主要是指“script类型”、“scriptProgress”之类的值一直不去动它,它取的值大概就是所谓“默认值”吧?这类设置大概与您说的事情有关吧?比如有的值改了之后,魔方图就先显示结果态。演示时迅速跳到初态再走到结果态。但再点击复原按钮时却又显示初态。蛮复杂,好像不大合乎一般人的思路。

[此贴子已经被作者于2007-8-26 9:56:25编辑过]

使用道具 举报

Rank: 2

积分
452
帖子
38
精华
0
UID
10589
性别
18#
发表于 2007-8-26 10:12:18 |只看该作者

从别的地方来的代码可以转换成论坛使用的,只要第一段代码引用的地址正确就可以了,我之所以使用官方的链接是怕本地链接会出问题,而且官方的链接总是最新版的Java。那天我弄代码的时候发现了颜色问题,所以才试着把代码改了改,让他更符合Rubik魔方的风格,我研究代码和你使用助手是一个效果,不过我可以通过代码更好的了解公式的精髓在哪里,而且可以方便的对代码进行一些逆操作,这样可以举一反三。

使用道具 举报

Rank: 8Rank: 8

积分
18019
帖子
16458
精华
9
UID
449
性别

魔方理论探索者 论坛建设奖 爱心大使 十年元老

19#
发表于 2007-8-26 10:39:50 |只看该作者

噢,您这是玩到家了!

那么,我目前这样原始地用论坛的java助手没问题吧?至于颜色,论坛的java助手也是可以在一定范围内由用户随意设置的,但仅有7种颜色可选,它也不会检查颜色设置是否合法,以致有人会填错颜色等等。

此外,有人问过能否在自己电脑中转java魔方,别非上魔方吧不可。比如,把魔方吧内的某一java魔方图下载到自己电脑中,随时可在屏幕上玩,就像一般的gif动画或者“Puzzler”中的魔方那样。这里顺便问问您,这可能吗?如果行,您倒可以另发一话题介绍的。

使用道具 举报

Rank: 2

积分
452
帖子
38
精华
0
UID
10589
性别
20#
发表于 2007-8-26 22:27:22 |只看该作者
QUOTE:
以下是引用乌木在2007-8-26 10:39:50的发言:

噢,您这是玩到家了!

那么,我目前这样原始地用论坛的java助手没问题吧?至于颜色,论坛的java助手也是可以在一定范围内由用户随意设置的,但仅有7种颜色可选,它也不会检查颜色设置是否合法,以致有人会填错颜色等等。

此外,有人问过能否在自己电脑中转java魔方,别非上魔方吧不可。比如,把魔方吧内的某一java魔方图下载到自己电脑中,随时可在屏幕上玩,就像一般的gif动画或者“Puzzler”中的魔方那样。这里顺便问问您,这可能吗?如果行,您倒可以另发一话题介绍的。

当然可以啦,我都是在电脑上弄好了公式才粘过来的,你可以直接下载官方的Java程序,里面二阶、三阶、四阶、五阶的都有,其中的parameters.html就是参数设置页,点其中的Generate and Show就可以生成演示用的Java程序了,非常的方便,而且修改也很方便。
我把官方Java的下载地址贴出来吧,你们直接下载后解压缩到一个目录下就可以使用了,记住一定要先装Java呦,否则就没显示啦!哈哈!
http://www.randelshofer.ch/pocketplayer/files/pocketplayer-6.1.zip
http://www.randelshofer.ch/pocketplayer/files/pocketplayer-6.0.zip
http://www.randelshofer.ch/rubikplayer/files/rubikplayer-5.2.1.zip
http://www.randelshofer.ch/revengeplayer/files/revengeplayer-0.2.1.zip
http://www.randelshofer.ch/professorplayer/files/professorplayer-3.2.1.zip

[此贴子已经被作者于2007-8-26 22:32:43编辑过]

使用道具 举报

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

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

GMT+8, 2024-4-26 23:55

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部