aboutsummaryrefslogtreecommitdiff
path: root/pixelmappers/GaussianMapper.py
blob: 8755acf961209405f9b82e0c42c5688bacca0b09 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
from operationscore.PixelMapper import *
import util.Geo as Geo
class GaussianMapper(PixelMapper):
    def mappingFunction(self, eventLocation, screen):
        returnPixels = [] #TODO: consider preallocation and trimming
        [x,y] = eventLocation
        for (x,pixel) in screen.pixelsInRange(x-self['CutoffDist'], \
                x+self['CutoffDist']):
            pixelDist = Geo.dist(pixel.location, eventLocation)
            if pixelDist < self['CutoffDist']:
                w = Geo.gaussian(pixelDist, self['Height'], 0, self['Width'])
                returnPixels.append((pixel, w))
        return returnPixels