VC++开发的立体拧魔方模拟程序+开发文档,我们把魔方的模型建立起来了,但是这样的模型是死的,还不能按照我们的要求进行操作,现在我们就来建立魔方的仿真模型,也就是让它能够和真正的魔方一样转起来。由于我们的仿真模型将会通过VC++在Windows下面来实现,所以首先就要为转动操作建立触发事件,这样就可以利用消息机制对转动操作进行处理。
触发事件借助鼠标左、右键的按下和弹起这两个基本的消息来传递,通过鼠标点击的位置不同产生不同转动操作,而左、右键的使用则可以改变转动的方向。我们规定一个正方向,那么,左键对应正向转动,右键对应反向转动(该功能尚未实现)。
打乱和恢复:
1、打乱
用随机的方式转动N步,每步转动有9(×2=18)种选择。
N可以由用户设置,默认为10步。请不要设置的太大,否则很难恢复,而且执行恢复的函数未采用多线程技术,所以会导致程序无响应。
2、恢复
(尚无好的算法)
触发事件借助鼠标左、右键的按下和弹起这两个基本的消息来传递,通过鼠标点击的位置不同产生不同转动操作,而左、右键的使用则可以改变转动的方向。我们规定一个正方向,那么,左键对应正向转动,右键对应反向转动(该功能尚未实现)。
打乱和恢复:
1、打乱
用随机的方式转动N步,每步转动有9(×2=18)种选择。
N可以由用户设置,默认为10步。请不要设置的太大,否则很难恢复,而且执行恢复的函数未采用多线程技术,所以会导致程序无响应。
2、恢复
(尚无好的算法)
用穷举的方法只能处理很少的有限步数(通常在10步以内),否则时间方面的耗费无法忍受。
源码下载地址:点击下载
备用下载地址:点击下载
