/** * Hilo * Copyright 2015 alibaba.com * Licensed under the MIT License */ /** * *
* Example: *
 * var bmp = new Hilo.Bitmap({image:imgElem, rect:[0, 0, 100, 100]});
 * stage.addChild(bmp);
 * 
* @class Bitmap * @augments View * @param {Object} properties the options of create Instance.It can contains all writable property and Moreover: * * @module hilo/view/Bitmap * @requires hilo/core/Hilo * @requires hilo/core/Class * @requires hilo/view/View * @requires hilo/view/Drawable */ var Bitmap = Class.create(/** @lends Bitmap.prototype */{ Extends: View, constructor: function(properties){ properties = properties || {}; this.id = this.id || properties.id || Hilo.getUid("Bitmap"); Bitmap.superclass.constructor.call(this, properties); this.drawable = new Drawable(properties); //init width and height if(!this.width || !this.height){ var rect = this.drawable.rect; if(rect){ this.width = rect[2]; this.height = rect[3]; } } }, /** * set the image。 * @param {Image|String} Image Object or URL. * @param {Array} rect the range of bitmap in the image, option. * @param {Boolean} crossOrigin Whether cross-domain is needed, default is false. * @returns {Bitmap} self。 */ setImage: function(image, rect, crossOrigin){ this.drawable.init({image:image, rect:rect, crossOrigin:crossOrigin}); if(rect){ this.width = rect[2]; this.height = rect[3]; } else if(!this.width && !this.height){ rect = this.drawable.rect; if(rect){ this.width = rect[2]; this.height = rect[3]; } } return this; } });