예제 #1
0
def CreateTileDisplayStreamObject(address, screenRect, pos, absRect, fullRect, blend=True, scale=None):
    #from streamView import StreamView, StartStreamViewLoop
    #streamView = StreamView()
    ##obj = CreateObj(None, imagePos=(0, 0), obj=streamView)
    ##objectsListList.append(obj)
    #StartStreamViewLoop(address)
    #return streamView

    #obj = glTxtrBox(imageFilename, screenRect=screenRect, imagePos=pos, absRect= absRect, fullRect=fullRect, blend=blend, cropRect=cropRect, scale=scale)
    streamObj = glStreamedTxtrBox(address, screenRect=screenRect, imagePos=pos, absRect= absRect, fullRect=fullRect, blend=blend, scale=scale)

    return streamObj
예제 #2
0
    def __init__(self, address, objDesc, screenRect, fullRect, absRect, zoom=(4,4), pos=None, size=None, blend=False, cropRect=None, fps=None, scale=None, allowFrameSkip=True, gridColsRows=None, doCenter=True):
        BaseTileDisplayObject.__init__(self, screenRect=screenRect, fullRect=fullRect, absRect=absRect, zoom=zoom, pos=pos, size=size, blend=blend, cropRect=cropRect)
        self.address = address
        if gridColsRows == None:
            self.streamCols = 1
            self.streamRows = 1
        else:
            self.streamCols = gridColsRows[0]
            self.streamRows = gridColsRows[1]
        #self.streamWidth = 352
        #self.streamHeight = 288
        self.streamWidth = objDesc.streamWidth
        self.streamHeight = objDesc.streamHeight
        if scale != None:
            self.streamWidth *= scale[0]
            self.streamHeight *= scale[1]
        addVisibleSeparation = False
        if addVisibleSeparation:
            self.streamWidth += 3
            self.streamHeight += 3
        self.size = self.streamCols * self.streamWidth, self.streamRows * self.streamHeight
        self.streamObjs = []

        # print "GROUP:", self.pos, self.size
        if doCenter:
            # center on pos
            self.setPos(pos[0] -self.size[0]/2, pos[1] - self.size[1]/2)


        for r in range(self.streamRows):
            for c in range(self.streamCols):
                objOffset = Vec2(c * self.streamWidth, r * self.streamHeight)
                #objPos = (self.pos[0] + c * self.streamWidth, self.pos[1] + r * self.streamHeight)
                objPos = Vec2(self.pos[0] + objOffset[0], self.pos[1] + objOffset[1])
                streamObj = glStreamedTxtrBox(address, screenRect=screenRect, imagePos=objPos, absRect= absRect, fullRect=fullRect, blend=blend, scale=scale, streamState=StreamState(), streamWidth=objDesc.streamWidth, streamHeight=objDesc.streamHeight, vflip=objDesc.vflip)
                streamObj.groupOffset = objOffset
                self.streamObjs.append(streamObj)

        # information for sorting and aligning tiles
        self.targetLocationOrder = []
        self.locations = []
        for r in range(self.streamRows):
            for c in range(self.streamCols):
                self.locations.append(Vec2(c * self.streamWidth, r * self.streamHeight))
                #nC = self.streamCols-c
                #self.targetLocationOrder.append(r*self.streamCols+c)
        self.initialObjOrder = list(self.streamObjs)

        # DEBUG
        #self.targetLocationOrder = [ 0, 1, 2, 3]  # numbers for the location
        self.targetLocationOrder = range(self.streamRows*self.streamCols)
예제 #3
0
def CreateTileDisplayStreamObject(address,
                                  screenRect,
                                  pos,
                                  absRect,
                                  fullRect,
                                  blend=True,
                                  scale=None):
    #from streamView import StreamView, StartStreamViewLoop
    #streamView = StreamView()
    ##obj = CreateObj(None, imagePos=(0, 0), obj=streamView)
    ##objectsListList.append(obj)
    #StartStreamViewLoop(address)
    #return streamView

    #obj = glTxtrBox(imageFilename, screenRect=screenRect, imagePos=pos, absRect= absRect, fullRect=fullRect, blend=blend, cropRect=cropRect, scale=scale)
    streamObj = glStreamedTxtrBox(address,
                                  screenRect=screenRect,
                                  imagePos=pos,
                                  absRect=absRect,
                                  fullRect=fullRect,
                                  blend=blend,
                                  scale=scale)

    return streamObj