///
///
///
///
/**
* Phaser - PixelUtils
*
* A collection of methods useful for manipulating pixels.
*/
module Phaser {
export class PixelUtils {
static boot() {
PixelUtils.pixelCanvas = document.createElement('canvas');
PixelUtils.pixelCanvas.width = 1;
PixelUtils.pixelCanvas.height = 1;
PixelUtils.pixelContext = PixelUtils.pixelCanvas.getContext('2d');
}
/**
* Canvas element used in 1x1 pixel checks.
* @type {HTMLCanvasElement}
*/
static pixelCanvas: HTMLCanvasElement;
/**
* Render context of pixelCanvas
* @type {CanvasRenderingContext2D}
*/
static pixelContext: CanvasRenderingContext2D;
static getPixel(key: string, x: number, y: number): number {
// write out a single pixel (won't help with rotated sprites though.. hmm)
var imageData = PixelUtils.pixelContext.getImageData(0, 0, 1, 1);
return ColorUtils.getColor32(imageData.data[3], imageData.data[0], imageData.data[1], imageData.data[2]);
}
}
}