本文主要讨论游戏规则逻辑,具体绘制技术请参看相关文章: gomoblie flappy 源码分析:图片素材和大小的处理 http://www.cnblogs.com/ghj1976/p/5222289.html 绘制时间间隔控制 绘制是按照 60 FPS 的节奏绘制的(即每秒钟 60 帧),  FPS : frames per second(帧率) 代码中的控制注意是通过 golang.org/x/mobile/exp/sprite/clock 下的 Time 控制的.  Time实际是 int…
flappy的源码可以在 https://github.com/golang/mobile 看到.具体在 https://github.com/golang/mobile/tree/master/example/flappy 图片素材的处理 flappy 的图片素材使用的是 1408*128 像素的 png 图, 如下图: 这实际是 11个并排的 128*128像素的素材合并的一个图片. 这些纹理的素材通过依次加载到对应的SubTex中,如下图代码所示: 这里为例避免黑条, 两边各少取1个像素.…
最近的分析都是有点不温不火,基本都是基础的回顾了 今年博客的目标目前总的来说有2大块 JS版的设计模式,会用jQuery来诠释 JS版的数据结构,最近也一直在狠狠的学习中. HTML息息相关的的样式 偏移量 offsetWidth offsetHeight offsetLeft offsetTop offsetHeight/offsetWidth: 表述元素的外尺寸:元素内容+内边距+边框(不包括外边距) offsetLeft/offsetTop: 表示该元素的左上角(边框外边缘)与已定位的父容…
使用: Picasso.with(this) .load("http://imgstore.cdn.sogou.com/app/a/100540002/467502.jpg") .into((ImageView) findViewById(R.id.ivImage));(1),首先进入Picasso.with(this): 创建一个Picasso类型单例singleton, 接着进入Builder构造函数: 这里是通过传入的context获取全局的context,主要是为了防止内存泄漏…
使用: Picasso.with(this) .load("http://imgstore.cdn.sogou.com/app/a/100540002/467502.jpg") .into((ImageView) findViewById(R.id.ivImage)); (1),首先进入Picasso.with(this): 创建一个Picasso类型单例singleton, 接着进入Builder构造函数: 这里是通过传入的context获取全局的context,主要是为了防止内存泄…
Volley 源码分析 图片分析 要说源码分析,我们得先看一下官方的配图: 从这张图中我们可以了解到 volley 工作流程: 1.请求加入优先队列 2.从缓存调度器中查看是否存在该请求,如果有(没有进入第三步)直接缓存中读取并解析数据,最后分发到 UI 线程(主线程). 3.从网络中获取数据(如果设置可以缓存,则写入缓存)并解析数据,最后分发到 UI 线程(主线程). 从图中,我们还可以看到 volley 的工作其实就是三个线程之间的数据传递 主线程 缓存线程 网络线程. 代码分析 既然是源码…
1. 前言 近些年来,随着以卷积神经网络(CNN)为代表的深度学习在图像识别领域的突破,越来越多的图像识别算法不断涌现.在去年,我们初步成功尝试了图像识别在测试领域的应用:将网站样式错乱问题.无线领域机型适配问题转换为"特定场景下的正常图片和异常图片的二分类问题",并借助Goolge开源的Inception V3网络进行迁移学习,重训练出对应场景下的图片分类模型,问题图片的准确率达到95%以上. 过去一年,我们在图片智能识别做的主要工作包括: 模型的落地和参数调优 模型的服务化 模型服…
概述 Okio 作为 Okhttp 底层 io 库,它补充了 java.io 和 java.nio 的不足,使访问.存储和处理数据更加容易.Okio 的特点如下: okio 是一个由 square 公司开发的开源库,它弥补了 Java.io 和 java.nio 的不足,能够更方便快速的读取.存储和处理数据. okio 有自己的流类型 Source 和 Sink,对应于 java.io 的 InputStream 和 OutputStream. okio 内部引入了 ByteString 和 B…
传统的判断dom加载的方法 使用 dom0级 onload事件来进行触发所有浏览器都支持在最初是很流行的写法 我们都熟悉这种写法: window.onload=function(){ ... }  但是onload事件触发过于缓慢,尤其是在存在很多外部图片或者视频文件的时候,为了更好的了解这一点有必要知道一个html文档是如何进行加载的,这里引用一个园友的表述: 1.用户输入网址(假设是个html页面,并且是第一次访问),浏览器向服务器发出请求,服务器返回html文件: 2.浏览器开始载入htm…
MyBatis 是支持定制化 SQL.存储过程以及高级映射的优秀的持久层框架.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis 可以对配置和原生Map使用简单的 XML 或注解,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录.如何新建MyBatis源码工程请点击MyBatis源码分析-IDEA新建MyBatis源码工程. MyBatis框架主要完成的是以下2件事情: 根据JD…