青 青萍 Unregistered / Unconfirmed GUEST, unregistred user! 2003-05-06 #2 我以前的做法: 如果此操作可逆则只记录操作类型和参数 如果不可逆,做一个SnapShot,缓存图像,Undo的时候恢复到原始图像 可是耗存储空间
C cdyxl Unregistered / Unconfirmed GUEST, unregistred user! 2003-05-06 #3 楼上的,有没有QQ讨论一下啊? 我的: 183021114 请加 DFW 字样。谢谢!
C cdyxl Unregistered / Unconfirmed GUEST, unregistred user! 2003-05-06 #5 那用MSN吧。 呵呵! 我的: gz_oscar@msn.com
G giswang Unregistered / Unconfirmed GUEST, unregistred user! 2003-05-07 #8 做缓存呀,保存每个操作以及操作前的对象 我是做矢量图像的,一直在考虑如何做这个东西 一次的Undo/Redo 是没问题的,多次就是缓存的东西太多,每一步都是累加以
C cdyxl Unregistered / Unconfirmed GUEST, unregistred user! 2003-05-08 #9 是啊,所以要来讨论一下,看看谁有好的方法。 GISWANG,你在哪个城市???
C chshanghai Unregistered / Unconfirmed GUEST, unregistred user! 2003-05-08 #10 记下每一个操作的痕迹。n0, N1,n2,n3 ,n4....... no 是工作的开始. 例如 要退到 n2 只要 重复一下 no 到n2 的操作. 只要你把每一个 动作设计好....那保留 痕迹 应该不会占用多大的空间
记下每一个操作的痕迹。n0, N1,n2,n3 ,n4....... no 是工作的开始. 例如 要退到 n2 只要 重复一下 no 到n2 的操作. 只要你把每一个 动作设计好....那保留 痕迹 应该不会占用多大的空间
G giswang Unregistered / Unconfirmed GUEST, unregistred user! 2003-05-08 #11 to cdyxl Shanghai 矢量操作,redo/undo 空间占用不大,就是里面存储的东西有些麻烦。 要有一个好的恢复算法,应为我们要考虑复合对象的操作,删除一个对象可能有连锁反应
C chshanghai Unregistered / Unconfirmed GUEST, unregistred user! 2003-05-09 #12 我以前写了一个小东西. 主要画一些固定图形. 我当时是把这些固定的图形定义成类. 当我画图时,只要他建一个实例。 这些实例保存在一个 队列中 这样就可以做 添加修改删除. 后退了 与操作队列差不多
D DarwinZhang Unregistered / Unconfirmed GUEST, unregistred user! 2003-05-09 #13 保存各个阶段的图形, xor后再压缩,可以节省一部分空间,但要牺牲一部分速度, 可以在线程中实现。