/** * hilojs 2.0.3 for cmd * Copyright 2016 alibaba.com * Licensed under the MIT License */ define(function(require, exports, module){ var Hilo = require('hilo/core/Hilo'); var Class = require('hilo/core/Class'); var View = require('hilo/view/View'); var Drawable = require('hilo/view/Drawable'); /** * @language=en * *
* 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]; } } }, /** * @language=en * 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; } }); return Bitmap; });