12
2015
05

2-2曼德勃罗集

参考: http://www.abook.cn/pdf/4062.0101.pdf

用的也是逃逸时间法。

效果如下,源码就不贴了,可下载附件来看。


获得 Adobe Flash Player

源码打包下载

12
2015
05

遮罩效果

公司安卓项目中要用到一个效果:透过一个圆形区域来显示一张图片,图片可以拖动。在flash中这种效果做起来是很简单的,画个圆形的遮罩就可以了。安卓好像没有遮罩的概念,还得自己来做。

通过百度搜索,发现两种方法,一种是通过图片的组合模式,将两幅图叠加到一起,这个方法简单,但是灵活性低,没有太在意,链接地址也没记住;另一种方法是通过canvas(原来安卓中也有canvas,和js太像了),对于canvas,我还是比较熟悉的。

canvas方法参考:http://blog.csdn.net/jiasudu1/article/details/7419432

安卓Canvas API:http://developers.androidcn.com/reference/android/graphics/Canvas.html

可能有人和我一样,不知道安卓里边怎么创建一个Bitmap,参考:http://blog.csdn.net/chenzheng_java/article/details/6266345

第一次在自己手机上测试,并没有得到理想的结果,clipPath传入的是一个圆,但是得到的确实一个小矩形;在公司的安卓测试设备上测试倒是可以,一开始以为又是安卓系统的兼容问题,后来搜了一下,发现原来是3d加速的问题。和html5中的canvas一样,安卓中的canvas也是分3d和2d的(不知道理解的对不对),有些移动设备是默认开启3d加速的(可能现在大多数设备都会开启吧),而canvas的clipPath方法是不支持3d加速的(还有好多方法不支持,这里就不列举了)。

解决方法:

1、既然是3d加速引起的,首先想到的是关闭3d加速。安卓里边关闭3d加速是以view为单位的,关闭方法如下:

setLayerType(View.LAYER_TYPE_SOFTWARE, null);

亲试,可行。

参考:http://blog.csdn.net/joejames/article/details/41484787

不知道这个方法只是关闭了调用方法的view的3d加速效果,还是整个Application的。

2、还有一个方法,没有看懂,可能是说先draw一遍,再用吧,而不是直接用源图片。感觉和flash里边解决图片的安全沙箱问题的思路类似。

参考:http://stackoverflow.com/questions/16889815/canvas-clippath-only-works-on-android-emulator

11
2015
05

flex实现代码和布局分离

参考:http://blog.sina.com.cn/s/blog_6ca2dfa40100m9tc.html

下面是作者测试的代码,可行。

04
2015
05

2-1逃逸时间法希尔宾斯基三角形

参考: http://www.abook.cn/pdf/4062.0101.pdf

逃逸时间法是一种画图算法,后边还会经常用到。

效果如下,源码就不贴了,可下载附件来看。


获得 Adobe Flash Player

源码打包下载

04
2015
05

1-2希尔宾斯基三角形

参考: http://www.abook.cn/pdf/4062.0101.pdf

flash默认脚本时间限制是15秒,作者电脑最大输入13,输入14就超过15秒了。

效果如下,源码就不贴了,可下载附件来看。


获得 Adobe Flash Player

源码打包下载

04
2015
05

1-1冯柯克曲线

参考: http://www.abook.cn/pdf/4062.0101.pdf

flash默认脚本时间限制是15秒,作者电脑最大输入10,输入11就超过15秒了。

效果如下,源码就不贴了,可下载附件来看。


获得 Adobe Flash Player

源码打包下载

22
2015
04

全景地图实现01

最近研究了一下腾讯soso街景地图,类似的展示项目用的已经很多了,尤其是在装修展示、旅游景点展示方面。

北京某公司的成功案例展示:http://www.345ok.net/demo/ly/

16
2015
04

(十)createjs-继承

js本身是没有继承的(实现继承,其他语言只要一个关键字就够了),但是牛人很多,大神们想到了很多方法来实现“继承”,要深入学习js,学习一下继承还是很有必要的,好在这方面资料很多,随便百度一下就有了。

这里,来学习一下如何实现继承createjs中的类。

先看代码:

  1.      function MyLayer(){

24
2015
03

(十七)编程工具

工欲善其事,必先利其器。

在真正开始写大量代码之前,选择一个好的工具是很有必要的。

as代码编辑工具,用的最多的就是 FlashDevelop和Flash Builder了。

24
2015
03

(十六)自定义类

其实前边的3种都叫自定义类。

这次的例子,主要是看一下自定义类怎么用,有什么好处。

建议下载源码对应来看。

先看一下最终效果: