前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【easeljs】显示对象基础 DisplayObject 类

【easeljs】显示对象基础 DisplayObject 类

作者头像
黒之染
发布2018-10-19 14:24:06
6980
发布2018-10-19 14:24:06
举报

类介绍

继承自 EventDispatcher

DisplayObject is an abstract class that should not be constructed directly. Instead construct subclasses such as Container, Bitmap, and Shape. DisplayObject is the base class for all display classes in the EaselJS library. It defines the core properties and methods that are shared between all display objects, such as transformation properties (x, y, scaleX, scaleY, etc), caching, and mouse handlers.

方法

cache (x,y,width,height[,scale=1])

Defined in cache:749 把此显示对象写进一个新的隐藏的canvas,然后用于接下来的绘制。此显示对象可能有多个child,也可能有多个滤镜,stage每次update需要绘制这个对象的时候都会重新绘制所有child和滤镜,因此可以用这个缓存起来,下次直接把它放上画布速度就快了。缓存好的这个显示对象,可以自由地移动、旋转、渐消(faded)。然而,如果它的内容发生变化,你必须手动调用updateCache() 或者重新使用 cache()。你必须通过x, y, w, 和 h参数,指定缓存的区域,这里指定的矩形区域会被渲染和缓存,且使用的是这个对象的坐标系。

例如如果你定义了一个形状,而且在形状里0,0位置画一个半径25的圆形:

代码语言:javascript
复制
 var shape = new createjs.Shape();
 shape.graphics.beginFill("#ff0000").drawCircle(0, 0, 25);
 myShape.cache(-25, -25, 50, 50);

参数:

  • x Number 需要缓存的区域的x值(此区域指的是此对象本身的区域,坐标系是此对象本身的)
  • y Number 需要缓存的区域的y值(此区域指的是此对象本身的区域,坐标系是此对象本身的)
  • width Number 需要缓存的区域宽度(此区域指的是此对象本身的区域)
  • height Number 需要缓存的区域高度(此区域指的是此对象本身的区域).
  • [scale=1] Number optional 缓存的scale会自动创建。例如使用myShape.cache(0,0,100,100,2)缓存一个矢量形状,然后得出的缓存canvas会是200x200 px。这个可以让你更保真地放大和旋转缓存元素。默认是1。

注意1:滤镜要在缓存之前指定。一些滤镜(例如 BlurFilter)和scale一起使用是不会产生效果的。(这一点是官方翻译过来的,应该是指注意3中提到的问题吧) 注意2:通常,最终的缓存canvas的面积是widthscale乘以heightscale,然而一些滤镜(例如 BlurFilter)会给原对象添加宽度(可以看到使用过BlurFilter的矩形,边缘已经不是一条线了,而是扩展出一些像素出去了的),所以缓存时的宽度注意加上这些扩展出来的。怎么获取BlurFilter扩展出的像素 注意3:注意:width和height两个参数,对于已经用scale改变过形状大小的对象来说,应该填它原来的宽度,而不是改变大小后的宽度,比如一个矩形原始宽度是100px,设置了scaleX=0.5,填这个值时,应该填100,而不是50!(这是我理解了之后加的,官方并没有这样说,而且似乎只有加了BlurFilter的对象才会这样,我现在在进行实际开发,不能做实验,晚些有空再做实验吧。)

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 类介绍
  • 方法
    • cache (x,y,width,height[,scale=1])
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档