imagemap.py

来自「Python.Tkinter编程实例代码多多学习」· Python 代码 · 共 32 行

PY
32
字号
class Region:
    def __init__(self, coords, ref):
        self.coords = coords
        self.ref    = ref

    def inside(self, x, y):
        isSide = 0
        if self.coords[0][0] <= x <= self.coords[1][0] and \
           self.coords[0][1] <= y <= self.coords[1][1]:
            isSide = 1

        return isSide

class ImageMap:
    def __init__(self):
        self.regions = []
        self.cache   = {}

    def addRegion(self, coords, ref):
        self.regions.append(Region(coords, ref))

    def getRegion(self, x, y):
        try:
            return self.cache[(x,y)]
        except KeyError:
            for region in self.regions:
                if region.inside(x, y) == 1:
                    self.cache[(x,y)] = region
                    return region.ref
            return None

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?