第082讲:提高游戏的颜值2:设计裁剪功能
在小甲鱼设计需求的基础上,丰富自己的想法。
功能:
1. 能够进行区域选择
2. 能够对选择的区域进行多次拖拽
3. 能够重置到初始状态(F5)
基本设计原理:
内部使用状态机制
状态:
-1需要初始化,
0安全,
1无选择时左键按下,
2无选择时左键拖拽,
3无选择时左键抬起,
4有选择时左键按下,
5拖拽选择,
6拖拽时左键抬起,
7更新画布(为了避免多次绘制导致内存溢出,选择更新画面内容到本地文件,而后在读取作为背景,以此循环操作).
状态转换:
-1 > 0 初始化完成转换
0 > 1 左键按下
1 > 2 左键拖拽
2 > 3 拖拽过程左键抬起, 计算范围
3 > 0, 4 抬起后拖拽范围小>0,范围大>4
4 > 2, 5 有选择时,左键按下区域在选择区域内>5,否则>2
5 > 6 拖拽过程左键抬起, 计算范围
6 > 5, 7 左键按下,在区域内>5, 否则>7
7 > -1 更新画布
展示
已有 1 人购买 本主题需向作者支付 2 鱼币 才能浏览 购买主题
帮顶在小甲鱼设计需求的基础上,丰富自己的想法。
功能:
1. 能够进行区域选择
2. 能够对选择的区域进行多次拖拽
3. 能够重置到初始状态(F5)
基本设计原理:
内部使用状态机制
状态:
-1需要初始化,
0安全,
1无选择时左键按下,
2无选择时左键拖拽,
3无选择时左键抬起,
4有选择时左键按下,
5拖拽选择,
6拖拽时左键抬起,
7更新画布(为了避免多次绘制导致内存溢出,选择更新画面内容到本地文件,而后在读取作为背景,以此循环操作).
状态转换:
-1 > 0 初始化完成转换
0 > 1 左键按下
1 > 2 左键拖拽
2 > 3 拖拽过程左键抬起, 计算范围
3 > 0, 4 抬起后拖拽范围小>0,范围大>4
4 > 2, 5 有选择时,左键按下区域在选择区域内>5,否则>2
5 > 6 拖拽过程左键抬起, 计算范围
6 > 5, 7 左键按下,在区域内>5, 否则>7
7 > -1 更新画布
展示
顶 楼主帮你顶了{:10_256:}
帮顶 顶 帮你顶.
帮你顶. 厉害.. {:5_106:} 可以可以{:10_256:}{:10_256:} 顶
页:
[1]