當前位置: 首頁>>代碼示例>>Python>>正文


Python ComponentRegistry.getLock方法代碼示例

本文整理匯總了Python中util.ComponentRegistry.getLock方法的典型用法代碼示例。如果您正苦於以下問題:Python ComponentRegistry.getLock方法的具體用法?Python ComponentRegistry.getLock怎麽用?Python ComponentRegistry.getLock使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在util.ComponentRegistry的用法示例。


在下文中一共展示了ComponentRegistry.getLock方法的7個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: inputInit

# 需要導入模塊: from util import ComponentRegistry [as 別名]
# 或者: from util.ComponentRegistry import getLock [as 別名]
    def inputInit(self):
        xvals = {}
        yvals = {}
        compReg.getLock().acquire()
        xvals['left'], yvals['bottom'], xvals['right'], yvals['top'] = compReg.getComponent('Screen').getSize()
        compReg.getLock().release()
        (xvals['center'], yvals['center']) = ((xvals['left']+xvals['right']) / 2, (yvals['top']+yvals['bottom']) / 2)

        self.location = (xvals[self['xloc']], yvals[self['yloc']])
開發者ID:dxiao,項目名稱:SmootLight,代碼行數:11,代碼來源:ContinuousLocationInput.py

示例2: inputInit

# 需要導入模塊: from util import ComponentRegistry [as 別名]
# 或者: from util.ComponentRegistry import getLock [as 別名]
    def inputInit(self):
        compReg.getLock().acquire()
        xmin, ymin, xmax, ymax = compReg.getComponent('Screen').size
        compReg.getLock().release()

        xlen = xmax-xmin
        ylen = ymax-ymin

        self.xloc = xmin + xlen * self['xPos']
        self.yloc = ymin + ylen * self['yPos']
開發者ID:andychen,項目名稱:SmootLight,代碼行數:12,代碼來源:InitialLocationInput.py

示例3: inputInit

# 需要導入模塊: from util import ComponentRegistry [as 別名]
# 或者: from util.ComponentRegistry import getLock [as 別名]
    def inputInit(self):

        if 'Repeat' not in self.argDict:
            self.Repeat = 1

        self.t = 0

        compReg.getLock().acquire()
        xmin, ymin, xmax, ymax = compReg.getComponent('Screen').size
        compReg.getLock().release()

        xlen = xmax-xmin
        ylen = ymax-ymin

        if self['useClock']:
            self.t=self.clock()
            self.getTime = self.clockTick
        else:
            self.t=0
            self.getTime = self.callTick

        self.x_eqn = eval('lambda t:' + str(xmin) + '+' + str(xlen) + '*(' + str(self['xEquation']) + ')')
        self.y_eqn = eval('lambda t:' + str(ymin) + '+' + str(ylen) + '*(' + str(self['yEquation']) + ')')
開發者ID:andychen,項目名稱:SmootLight,代碼行數:25,代碼來源:ParametricLocationInput.py

示例4: makeListener

# 需要導入模塊: from util import ComponentRegistry [as 別名]
# 或者: from util.ComponentRegistry import getLock [as 別名]
 def makeListener(self):
     try:
         compReg.getLock().acquire()
         compReg.getComponent(self['LocSensorId']).addListener(self)
         compReg.getLock().release()
         return True
     except Exception as ex:
         compReg.getLock().release()
         return False
開發者ID:andychen,項目名稱:SmootLight,代碼行數:11,代碼來源:DirectionalPedestrians.py

示例5: inputInit

# 需要導入模塊: from util import ComponentRegistry [as 別名]
# 或者: from util.ComponentRegistry import getLock [as 別名]
 def inputInit(self):
     compReg.getLock().acquire()
     minX,minY,maxX,maxY = compReg.getComponent('Screen').size
     compReg.getLock().release()
     self.center = ((minX+maxX) / 2, (minY+maxY) / 2)
開發者ID:andychen,項目名稱:SmootLight,代碼行數:7,代碼來源:ContinuousCenterInput.py

示例6: inputInit

# 需要導入模塊: from util import ComponentRegistry [as 別名]
# 或者: from util.ComponentRegistry import getLock [as 別名]
 def inputInit(self):
     compReg.getLock().acquire()
     self.minX, self.minY, self.maxX, self.maxY = compReg.getComponent('Screen').size
     compReg.getLock().release()
開發者ID:andychen,項目名稱:SmootLight,代碼行數:6,代碼來源:OneHorizontalInput.py

示例7: processResponse

# 需要導入模塊: from util import ComponentRegistry [as 別名]
# 或者: from util.ComponentRegistry import getLock [as 別名]
    def processResponse(self, sensor, recurs):
        ret = []

        if self['GrowthDirection'] != None:
            growthDirection = self['GrowthDirection']
        else:
            growthDirection = 'right'
        if self['HitSensitivity'] != None:
            hitSensitivity = self['HitSensitivity']
        else:
            hitSensitivity = 4
        if self['MaxVelocity'] != None:
            maxVelocity = self['MaxVelocity']
        else:
            maxVelocity = 10
        if self['MinVelocity'] != None:
            minVelocity = self['MinVelocity']
        else:
            minVelocity = -1
        if self['MinLength'] != None:
            minLength = self['MinLength']
        else:
            minLength = 30

        for sensory in sensor:
            opsensory = dict(sensory)

            if not 'XVel' in opsensory:
                opsensory['XVel'] = -1
            if not 'SpeedupTimer' in opsensory:
                opsensory['SpeedupTimer'] = 0
 
            if growthDirection == 'right':
                results = bqs.query([
                    bqs.getBehaviorIdLambda('accelerate'),\
                    bqs.getDirectionLambda('-'),\
                    bqs.getLeftLambda(0)
                ])
            else:
                compReg.getLock().acquire()
                self.minX, self.minY, self.maxX, self.maxY = compReg.getComponent('Screen').size
                compReg.getLock().release()

                results = bqs.query([
                    bqs.getBehaviorIdLambda('accelerate'),\
                    bqs.getDirectionLambda('+'),\
                    bqs.getRightLambda(self.maxX)
                ])


            if results:
                opsensory['SpeedupTimer'] = hitSensitivity 

            if opsensory['SpeedupTimer'] > 0:
                opsensory['XVel'] = min(opsensory['XVel'] + 1, maxVelocity)
                opsensory['SpeedupTimer'] = opsensory['SpeedupTimer'] - 1
            else:
                opsensory['XVel'] = max(minVelocity, opsensory['XVel'] - 1)

            opsensory['Location'] = (opsensory['Location'][0], opsensory['Location'][1] + opsensory['XVel'])

            #Set min length
            if opsensory['Location'][1] <= minLength:
                opsensory['Location'] = (opsensory['Location'][0], minLength)

            ret.append(opsensory)
        return (ret, []) 
開發者ID:andychen,項目名稱:SmootLight,代碼行數:69,代碼來源:GrowNear.py


注:本文中的util.ComponentRegistry.getLock方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。