def sprite(self,img,pos=(0,0),scale=1.0,rot=0.0,alpha=255):

        if( not pg.display.get_init() ):
            pg.display.init()

        if(img.__class__.__name__=='str'):
            image = pg.image.load(img, "RGB")
        elif(img.__class__.__name__=='Image' ):
            image = img.getPGSurface()
        else:
            image = img # we assume we have a surface
        image = image.convert(self._mSurface)
        if(rot != 0.00):
            image = pg.transform.rotate(image,rot)
        if(scale != 1.0):
            image = pg.transform.scale(image,(int(image.get_width()*scale),int(image.get_height()*scale)))
        pixels_alpha = pg.surfarray.pixels_alpha(image)
        pixels_alpha[...] = (pixels_alpha * (alpha / 255.0)).astype(np.uint8)
        del pixels_alpha
        self._mSurface.blit(image,pos)
sprite draws a sprite (a second small image) onto the current layer.
dataset/ETHPy150Open sightmachine/SimpleCV/SimpleCV/DrawingLayer.py/DrawingLayer.sprite