1、拼图涵盖了几乎所有可能的思维模式
·基本逻辑
联系和比较,将独立小块和整幅图做多次比较,确定具体位置。
·分类思考
可以按照三种分类来拆解问题,边缘区域,背·面符号类型,局部整体图案
·精准思考和模糊思考
每一个独立小块的具体位置需要和上下左右精确匹配,图案和形状都不能错。
在搜索阶段则可以按照背面符号类型
·局部思考和整体思考
局部组成了整体,局部最小单位是独立小块
·陶冶情操
拼图一般是自己喜欢的图案,可以陶冶情操

2、如果用代码模拟拼图的过程
2.1、独立小块的特性和模型
·图案即像素加颜色
每一个独立小块由若干有颜色像素组成。
像素可以是上下坐右中五个部分组成,颜色用字母或者数字表示,每个部分可以包含多个像素以模拟不同的图案
·边界类型
像素的五个部门增加标志,即是否为空,为空即表示那一侧为边界
·区分方向
独立小块五个部分为上下左右中,有方向标志
·小块的唯一性:精确比较的实现
可以提供一个hash算法,将独立小块五个部门进行hash运算,比如使用md5(序列化对象)这种简单粗暴的方式
·背面符号
独立小块增加一个背面符号属性
·像素比重:模糊比较的实现
当一个独立小块某像素比重较高,即某字母或者数字较多时,这个独立小块就可以简化为单一色
当局部(局部可大可小)多个小块某像素比重较高,可以把某个区域简化为单一色
拓展下可以包含多个单一色
独立小块单一色和局部单一色比较实现模糊比较的能力
2.2、拼图整体的模型
·位置关系
基于独立小块二维数组
·局部模糊单一色
按照,4块,9块,16块合并多个独立小块为单元小块,提供局部单一色二维数组,所以我们的拼图会有多张
这块也可以按照单一色拓展的模式,比如单一色比重达到80%则扩大单一色的范围
·标记是否找到位置
增加一个符号表示已找到位置,独立小块和独立小块二维数组都需要

3、比较的过程
·模糊比较
使用背景符号,局部单一色,是否边缘来确定尽可能小的范围

·精确比较
按照独立小块hash值比较,然后再进行独立小块hash

·独立小块的局部比较
可以额外提供提供上下左右中5个hash

·同步进行比较
一起搞,这是计算机的优势

4、其它想法
·计算机没有人类的视觉,需要转化为符号
·人眼的计算能力确实强大,尤其在模糊单一色这一块,用代码的话这块会很复杂
·从算法角度看,最暴力的就是精确hash,同时也最低效
·局部单一色可以理解为出现做多的几种元素

关于拼图游戏引发的一些思考相关推荐

  1. 你的时间是如何被谋杀的?---由一款塔防游戏引发的思考

    你的时间是如何被谋杀的? ---由一款塔防游戏引发的思考 文/LL 之前一段时间花了很长时间来玩了一个 Mac OS平台下的塔防游戏<iBomber Defense Pacific>,为此 ...

  2. python拼图游戏代码的理解_有意思的JS(1)拼图游戏 玩法介绍及其代码实现

    我是你们的索儿呀,很幸运我的文章能与你相见,愿萌新能直观的感受到Javascript的趣味性,愿有一定基础者有所收获,愿大佬不吝赐教 拼图游戏是一张图片分为若干块,打乱次序,将其中一块变为空白块,其只 ...

  3. 用Android Studio做一个超好玩的拼图游戏,附送超详细注释的源码

    文章目录 一.项目概述 二.开发环境 三.需求分析 四.实现过程 1.拼图游戏布局绘制 2.拼图游戏时间计时 3.拼图游戏打乱显示 4.拼图游戏碎片位置切换 5.拼图游戏成功的条件 6.拼图游戏重新开 ...

  4. linux编程拼图游戏,cocos2d-x制作拼图游戏

    由于本人最近在学习cocos2d-x,一时手痒,写一个游戏练练手,也是对cocos2d-x进一步的巩固,于是敲了两天,就写了这个拼图游戏,还挺有成就感的,:-),先把我的成果展示如下: 由于cocos ...

  5. java拼图游戏系统总体方案_基于JAVA的拼图游戏的设计与实现(含录像)

    基于的拼图游戏的设计与实现(含录像)(任务书,开题报告,中期检查表,外文翻译,毕业论文15500字,程序代码,答辩PPT,答辩视频录像) 摘  要 在我们日常生活中,有很多的益智类游戏,如七巧板,21 ...

  6. linux 拼图游戏,王牌拼图红包版

    王牌拼图红包版是一款好玩的拼图游戏,在这款王牌拼图红包版游戏中有上千张不同风格的图片等你来选择,有简单的模式也有中等难度和困难模式的等你来挑战!每次的关卡任务完成后都是会有红包奖励的哦!喜欢的玩家们快 ...

  7. 拼图游戏 玩法介绍及其代码实现(有意思的JS 一)

    我是你们的索儿呀,很幸运我的文章能与你相见 愿萌新能直观的感受到Javascript的趣味性,愿有一定基础者有所收获,愿大佬不吝赐教 拼图游戏是一张图片分为若干块,打乱次序,将其中一块变为空白块,其只 ...

  8. java拼图游戏设计文档_基于JAVA的拼图游戏的设计与实现(含录像)

    基于JAVA的拼图游戏的设计与实现(含录像)(任务书,开题报告,中期检查表,外文翻译,毕业论文15500字,程序代码,答辩PPT,答辩视频录像) 摘  要 在我们日常生活中,有很多的益智类游戏,如七巧 ...

  9. 【原创-更新完毕】|日历拼图游戏的解决方案(C语言-进阶应用)-详解连载2

    [原创]|日历拼图游戏的解决方案(C语言-进阶应用)-详解连载1_zhuyi8120的博客-CSDN博客 [原创]|日历拼图游戏的解决方案(C语言-进阶应用)-详解连载3_zhuyi8120的博客-C ...

最新文章

  1. es6学习1: 模拟react Comopnent类的实现
  2. 两款旋转编码器测量LDP3806,BH60
  3. MySQL密码设置和重置,以及远程登入数据库
  4. java中mymaps_Java MyLocationStyle.myLocationType方法代码示例
  5. c#中代码中多线程动态创建progressbar的实例,概念很重要可扩展很多类似概念
  6. tf.reshape()
  7. 别用Excel做数据可视化了!这款报表工具不比它香100倍?
  8. 在linux中怎么装python3环境,在Linux环境下安装Python3
  9. LeetCode(283)——移动零(JavaScript)
  10. zencart后台修改首页meta_title、meta_keywords、meta_description
  11. [Android Pro] 告别编译运行 ---- Android Studio 2.0 Preview发布Instant Run功能
  12. Centos-6.3-x86_64 minimal 迷你版安装笔记 - Java篇
  13. LeetCode之翻转字符串里的单词
  14. 如何阅读Java源码 阅读java的真实体会
  15. MATLAB QPSK调制代码
  16. linux开机不运行桌面快捷方式,Android 开机自动运行和添加删除桌面快捷方式
  17. mysql innerdb 索引,MySQL系列-InnoDB索引优化AHI、Change buffer
  18. u3d联机斗地主(1):出牌规则
  19. 浙大开源快速扩散语音合成模型FastDiff和ProDiff
  20. 关于阿里云ACP认证的那些事儿

热门文章

  1. 【STM32Cube】学习笔记(五):红外避障传感器
  2. 深圳市劳动仲裁案立案及保全
  3. Buuctf (Web)Ping Ping Ping
  4. intel NVME SSD 性能 P5600 P5510 P5520
  5. 利哥测试第2说--软件测试笔试题库
  6. 一文带你深度解析腾讯云直播答题方案
  7. OpenCV中的图像变换——傅里叶变换
  8. 图像3尺度全小波包分解matlab,小波分析理论与图像降噪处理
  9. 名企中无领导小组经典案例分析
  10. ESP8266/ESP32Wi-Fi无线网络介绍