コード例 #1
0
ファイル: env.py プロジェクト: Tesla2fox/ASCII
 def addSet(self):
     robotCfg = './/data//' + 'test2_tutorial.txt'
     robCfg = Read_Cfg(robotCfg)
     for i in range(5):
         _set = []
         robCfg.get('set' + str(i), _set)
         setTrace = go.Box(y=_set, name='$    G_' + str(i + 1) + '$')
         self.drawData.append(setTrace)
コード例 #2
0
ファイル: env.py プロジェクト: Tesla2fox/ASCII
 def addMakeSpan(self):
     robotCfg = './/data//' + 'test1_tutorial.txt'
     robCfg = Read_Cfg(robotCfg)
     _set = []
     robCfg.get('makespan', _set)
     for i in range(len(_set)):
         _set[i] = _set[i] * 4
     setTrace = go.Box(y=_set, name='Makespan')
     self.drawData.append(setTrace)
コード例 #3
0
ファイル: env.py プロジェクト: Tesla2fox/ASCII
 def addRobotStartPnt(self):
     robotCfg = './/data//' + 'planDebug.txt'
     robCfg = Read_Cfg(robotCfg)
     lstx = []
     lsty = []
     robCfg.get('start_x', lstx)
     robCfg.get('start_y', lsty)
     for i in range(len(lstx)):
         rangeLst = go.Scatter(x=[lstx[i]],
                               y=[lsty[i]],
                               mode='markers',
                               marker=dict(symbol='cross-dot', size=15),
                               name='Robot_' + str(i + 1))
         self.drawData.append(rangeLst)
コード例 #4
0
ファイル: env.py プロジェクト: Tesla2fox/ASCII
    def addSpanningTree(self):
        robotCfg = './/data//' + 'planDebug.txt'
        robCfg = Read_Cfg(robotCfg)
        lstx = []
        lsty = []
        robCfg.get('start_x', lstx)
        robCfg.get('start_y', lsty)
        robNum = len(lstx)
        for i in range(robNum):
            _tvx = []
            _tvy = []
            _svx = []
            _svy = []
            robCfg.get('tvx_' + str(i), _tvx)
            #            print(_tvx)
            robCfg.get('tvy_' + str(i), _tvy)
            robCfg.get('svx_' + str(i), _svx)
            robCfg.get('svy_' + str(i), _svy)
            mark_x = []
            mark_y = []
            for p in range(len(_tvx)):
                pnt0 = Pnt(_tvx[p], _tvy[p])
                pnt1 = Pnt(_svx[p], _svy[p])
                mark_x.append(_tvx[p])
                mark_x.append(_svx[p])
                mark_y.append(_tvy[p])
                mark_y.append(_svy[p])
                line = Line(pnt0, pnt1)
                lineDic = line.line2dict()
                #                print(randColor())
                lineDic['line']['color'] = 'rgba(15,15,15,0.5)'
                lineDic['line']['width'] = 3

                self.shapeLst.append(copy.deepcopy(lineDic))
            markTrace = go.Scatter(mode='markers',
                                   x=mark_x,
                                   y=mark_y,
                                   marker=dict(size=15),
                                   name='Spanning-Tree_' + str(i + 1))
            self.drawData.append(markTrace)
        return 1
コード例 #5
0
ファイル: env.py プロジェクト: Tesla2fox/ASCII
 def addPath(self):
     robotCfg = './/data//' + 'planDebug.txt'
     robCfg = Read_Cfg(robotCfg)
     lstx = []
     lsty = []
     robCfg.get('start_x', lstx)
     robCfg.get('start_y', lsty)
     robNum = len(lstx)
     for i in range(robNum):
         _path_x = []
         _path_y = []
         robCfg.get('path_x_' + str(i), _path_x)
         robCfg.get('path_y_' + str(i), _path_y)
         pathTrace = go.Scatter(
             x=_path_x,
             y=_path_y,
             mode='lines',
             line=dict(
                 shape='spline',
                 #                                            dash = 'dot',
                 width=4),
             name='Path_' + str(i + 1))
         self.drawData.append(pathTrace)
コード例 #6
0
def drawPic(cfgFileName='5_20_20_80_Outdoor_Cfg.txt',
            drawType=1,
            fileName='nothing',
            fileType=False):
    #    py.sign_in('tesla_fox', 'HOTRQ3nIOdYUUszDIfgN')
    conFileDir = './/data//'
    degNameCfg = conFileDir + cfgFileName

    readCfg = Read_Cfg(degNameCfg)

    data = []
    readCfg.get('row', data)
    row = int(data.pop())

    readCfg.get('col', data)
    col = int(data.pop())

    mat = zeros((row, col))

    obRowLst = []
    obColLst = []
    readCfg.get('obRow', obRowLst)
    readCfg.get('obCol', obColLst)

    for i in range(len(obRowLst)):
        obRow = int(obRowLst[i])
        obCol = int(obColLst[i])
        mat[obRow][obCol] = 1

    robRowLst = []
    robColLst = []
    readCfg.get('robRow', robRowLst)
    readCfg.get('robCol', robColLst)

    #case 1 draw Environment
    if (drawType == 1):
        env = Env(mat)
        env.addgrid()
        robLst = []
        robLst.append(robRowLst)
        robLst.append(robColLst)
        env.addRobotStartPnt(robLst)
        env.drawPic('./png/env_' + cfgFileName, fileType)
    #case 2 draw Environment with edges
    if (drawType == 2):
        env = Env(mat)
        edgeNameCfg = conFileDir + 'obmapDeg.txt'
        edgeCfg = Read_Cfg(edgeNameCfg)
        edgeData = []
        edgeUnit = []
        edgeCfg.get('sRow', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))
        edgeUnit = []
        edgeCfg.get('sCol', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))

        edgeUnit = []
        edgeCfg.get('tRow', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))
        edgeUnit = []
        edgeCfg.get('tCol', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))

        env.addgrid()
        env.addEdges(edgeData)
        env.addTest()
        env.drawPic('./png/edges', fileType=False)
    #case 3 draw Envirionment with edges in pnt
    if (drawType == 3):
        env = Env(mat)
        edgeNameCfg = conFileDir + 'obmapDeg.txt'
        edgeCfg = Read_Cfg(edgeNameCfg)
        edgeData = []
        edgeUnit = []
        edgeCfg.get('sPntx', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))
        edgeUnit = []
        edgeCfg.get('sPnty', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))

        edgeUnit = []
        edgeCfg.get('tPntx', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))
        edgeUnit = []
        edgeCfg.get('tPnty', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))

        env.addgrid()
        env.addEdgeInPnt(edgeData)
        env.addTest()
        env.drawPic('./png/edgesInPnt', fileType=fileType)
# case 4 draw Envirionment with graph
    if (drawType == 4):
        env = Env(mat)
        graphNameCfg = conFileDir + 'auctionDeg.txt'
        graphCfg = Read_Cfg(graphNameCfg)
        robNum = int(graphCfg.getSingleVal('robNum'))
        graphData = []
        print('row', row)
        print('col', col)
        for i in range(robNum):
            graphUnit = []
            graphCfg.get('row' + str(i), graphUnit)
            graphData.append(copy.deepcopy(graphUnit))
            graphUnit = []
            graphCfg.get('col' + str(i), graphUnit)
            graphData.append(copy.deepcopy(graphUnit))
        env.addgrid()
        env.addTest()
        robLst = []
        robLst.append(robRowLst)
        robLst.append(robColLst)
        env.addGraph(robNum, graphData, True)
        env.addRobotStartPnt(robLst)
        env.drawPic('./png/robGraph', fileType=fileType)
#   case 5
    if (drawType == 5):
        env = Env(mat)
        robLst = []
        robLst.append(robRowLst)
        robLst.append(robColLst)
        env.addRobotStartPnt(robLst)
        env.addgrid()
        graphNameCfg = conFileDir + 'auctionDeg.txt'
        graphCfg = Read_Cfg(graphNameCfg)
        robNum = int(graphCfg.getSingleVal('robNum'))
        graphData = []
        for i in range(robNum):
            graphUnit = []
            graphCfg.get('row' + str(i), graphUnit)
            graphData.append(copy.deepcopy(graphUnit))
            graphUnit = []
            graphCfg.get('col' + str(i), graphUnit)
            graphData.append(copy.deepcopy(graphUnit))
        env.addGraph(robNum, graphData)
        graphData = []

        for i in range(robNum):
            graphUnit = []
            graphCfg.get('neiRow' + str(i), graphUnit)
            graphData.append(copy.deepcopy(graphUnit))
            graphUnit = []
            graphCfg.get('neiCol' + str(i), graphUnit)
            graphData.append(copy.deepcopy(graphUnit))
        print(graphData)
        env.addNeiGraph(robNum, graphData)
        env.addTest()
        env.drawPic('./png/robNei&Graph', fileType=fileType)
# case 4 draw Envirionment with graph
    if (drawType == 6):
        env = Env(mat)
        graphNameCfg = conFileDir + 'auctionDeg.txt'
        graphCfg = Read_Cfg(graphNameCfg)
        robNum = int(graphCfg.getSingleVal('robNum'))
        graphData = []
        print('row', row)
        print('col', col)
        for i in range(robNum):
            graphUnit = []
            graphCfg.get('row' + str(i), graphUnit)
            graphData.append(copy.deepcopy(graphUnit))
            graphUnit = []
            graphCfg.get('col' + str(i), graphUnit)
            graphData.append(copy.deepcopy(graphUnit))
        env.addgrid()
        env.addTest()
        robLst = []
        robLst.append(robRowLst)
        robLst.append(robColLst)
        env.addGraph(robNum, graphData, False)
        env.addRobotStartPnt(robLst)
        env.drawPic('./png/robGraph&RC', fileType=fileType)

#   case 5 draw graph with STC
    if (drawType == 7):
        env = Env(mat)
        robLst = []
        robLst.append(robRowLst)
        robLst.append(robColLst)
        graphNameCfg = conFileDir + 'auctionSTCDeg.txt'
        graphCfg = Read_Cfg(graphNameCfg)
        robNum = int(graphCfg.getSingleVal('robNum'))
        graphData = []
        for i in range(robNum):
            graphUnit = []
            graphCfg.get('row' + str(i), graphUnit)
            graphData.append(copy.deepcopy(graphUnit))
            graphUnit = []
            graphCfg.get('col' + str(i), graphUnit)
            graphData.append(copy.deepcopy(graphUnit))
        env.addSTCGraph(robNum, graphData)
        graphData = []

        #        for i in range(robNum):
        #            graphUnit = []
        #            graphCfg.get('neiRow'+str(i),graphUnit)
        #            graphData.append(copy.deepcopy(graphUnit))
        #            graphUnit = []
        #            graphCfg.get('neiCol'+str(i),graphUnit)
        #            graphData.append(copy.deepcopy(graphUnit))
        #        print(graphData)
        #        env.addNeiGraph(robNum,graphData)
        env.addTest()
        env.addRobotStartPnt(robLst)
        env.addgrid()
        env.drawPic('./png/robNei&Graph', fileType=fileType)

#  case 8  draw environment and the GA_pattern path
    if (drawType == 8):
        env = Env(mat)
        env.addgrid()
        robLst = []
        robLst.append(robRowLst)
        robLst.append(robColLst)
        env.addRobotStartPnt(robLst)
        pathNameCfg = conFileDir + '_decode_Cfg.txt'
        pathCfg = Read_Cfg(pathNameCfg)
        robNum = int(pathCfg.getSingleVal('robNum'))
        pathData = []
        for i in range(robNum):
            path_x = []
            pathCfg.get('path_x' + str(i), path_x)
            pathData.append(copy.deepcopy(path_x))
            path_y = []
            pathCfg.get('path_y' + str(i), path_y)
            pathData.append(copy.deepcopy(path_y))
        env.addPath(robNum=robNum, lst=pathData)
        #            graphData.append(copy.deepcopy(graphUnit))
        env.drawPic('./png/env_' + cfgFileName + fileName, fileType)


# case 9 draw environment and test the python graph function
    if (drawType == 9):
        env = Env(mat)
        edgeNameCfg = conFileDir + '5_20_20_80_Outdoor_Cfg.txt'
        edgeCfg = Read_Cfg(edgeNameCfg)
        edgeData = []
        edgeUnit = []
        edgeCfg.get('sPntx', edgeUnit)
        print('edgeLength', len(edgeUnit))
        edgeData.append(copy.deepcopy(edgeUnit))
        edgeUnit = []
        edgeCfg.get('sPnty', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))

        edgeUnit = []
        edgeCfg.get('tPntx', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))
        edgeUnit = []
        edgeCfg.get('tPnty', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))
        env.addgrid()
        env.addEdgeInPnt(edgeData)
        env.addTest()
        env.drawPic('./png/edgesInPntTestGraph', fileType=fileType)
コード例 #7
0
def drawPic(cfgFileName='5_20_20_80_Outdoor_Cfg.txt',
            drawType=1,
            fileName='nothing',
            fileType=False):
    py.sign_in('tesla_fox', 'HOTRQ3nIOdYUUszDIfgN')
    conFileDir = './/data//'
    degNameCfg = conFileDir + cfgFileName

    readCfg = Read_Cfg(degNameCfg)

    data = []
    readCfg.get('row', data)
    row = int(data.pop())

    readCfg.get('col', data)
    col = int(data.pop())

    mat = zeros((row, col))

    obRowLst = []
    obColLst = []
    readCfg.get('obRow', obRowLst)
    readCfg.get('obCol', obColLst)

    for i in range(len(obRowLst)):
        obRow = int(obRowLst[i])
        obCol = int(obColLst[i])
        mat[obRow][obCol] = 1

    robRowLst = []
    robColLst = []
    readCfg.get('robRow', robRowLst)
    readCfg.get('robCol', robColLst)

    #case 1 draw Environment
    if (drawType == 1):
        env = Env(mat)
        env.addgrid()
        robLst = []
        robLst.append(robRowLst)
        robLst.append(robColLst)
        env.addRobotStartPnt(robLst)
        env.drawPic('./png/env_' + cfgFileName, fileType)
    #case 2 draw Environment with edges
    if (drawType == 2):
        env = Env(mat)
        edgeNameCfg = conFileDir + 'obmapDeg.txt'
        edgeCfg = Read_Cfg(edgeNameCfg)
        edgeData = []
        edgeUnit = []
        edgeCfg.get('sRow', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))
        edgeUnit = []
        edgeCfg.get('sCol', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))

        edgeUnit = []
        edgeCfg.get('tRow', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))
        edgeUnit = []
        edgeCfg.get('tCol', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))

        env.addgrid()
        env.addEdges(edgeData)
        env.addTest()
        env.drawPic('./png/edges', fileType=False)
    #case 3 draw Envirionment with edges in pnt
    if (drawType == 3):
        env = Env(mat)
        #        edgeNameCfg = conFileDir +'obmapDeg.txt'
        edgeNameCfg = conFileDir + 'auctionSTCDeg.txt'
        edgeCfg = Read_Cfg(edgeNameCfg)
        edgeData = []
        edgeUnit = []
        edgeCfg.get('sPntx', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))
        edgeUnit = []
        edgeCfg.get('sPnty', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))

        edgeUnit = []
        edgeCfg.get('tPntx', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))
        edgeUnit = []
        edgeCfg.get('tPnty', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))

        env.addgrid()
        env.addEdgeInPnt(edgeData)
        env.addTest()
        env.drawPic('./png/edgesInPnt', fileType=fileType)
# case 4 draw Envirionment with graph
    if (drawType == 4):
        env = Env(mat)
        graphNameCfg = conFileDir + 'auctionDeg.txt'
        graphNameCfg = conFileDir + 'auctionSTCDeg.txt'
        graphCfg = Read_Cfg(graphNameCfg)
        robNum = int(graphCfg.getSingleVal('robNum'))
        graphData = []
        print('row', row)
        print('col', col)
        for i in range(robNum):
            graphUnit = []
            graphCfg.get('row' + str(i), graphUnit)
            graphData.append(copy.deepcopy(graphUnit))
            graphUnit = []
            graphCfg.get('col' + str(i), graphUnit)
            graphData.append(copy.deepcopy(graphUnit))
        env.addgrid()
        env.addTest()
        robLst = []
        robLst.append(robRowLst)
        robLst.append(robColLst)
        env.addGraph(robNum, graphData, True)
        env.addRobotStartPnt(robLst)
        env.drawPic('./png/robGraph', fileType=fileType)
#   case 5
    if (drawType == 5):
        env = Env(mat)
        robLst = []
        robLst.append(robRowLst)
        robLst.append(robColLst)
        env.addRobotStartPnt(robLst)
        env.addgrid()
        graphNameCfg = conFileDir + 'auctionDeg.txt'
        graphCfg = Read_Cfg(graphNameCfg)
        robNum = int(graphCfg.getSingleVal('robNum'))
        graphData = []
        for i in range(robNum):
            graphUnit = []
            graphCfg.get('row' + str(i), graphUnit)
            graphData.append(copy.deepcopy(graphUnit))
            graphUnit = []
            graphCfg.get('col' + str(i), graphUnit)
            graphData.append(copy.deepcopy(graphUnit))
        env.addGraph(robNum, graphData)
        graphData = []

        for i in range(robNum):
            graphUnit = []
            graphCfg.get('neiRow' + str(i), graphUnit)
            graphData.append(copy.deepcopy(graphUnit))
            graphUnit = []
            graphCfg.get('neiCol' + str(i), graphUnit)
            graphData.append(copy.deepcopy(graphUnit))
        print(graphData)
        env.addNeiGraph(robNum, graphData)
        env.addTest()
        env.drawPic('./png/robNei&Graph', fileType=fileType)
# case 4 draw Envirionment with graph
    if (drawType == 6):
        env = Env(mat)
        graphNameCfg = conFileDir + 'auctionDeg.txt'
        graphNameCfg = conFileDir + 'auctionSTCDeg.txt'
        graphCfg = Read_Cfg(graphNameCfg)
        robNum = int(graphCfg.getSingleVal('robNum'))
        graphData = []
        print('row', row)
        print('col', col)
        for i in range(robNum):
            graphUnit = []
            graphCfg.get('row' + str(i), graphUnit)
            graphData.append(copy.deepcopy(graphUnit))
            graphUnit = []
            graphCfg.get('col' + str(i), graphUnit)
            graphData.append(copy.deepcopy(graphUnit))
        env.addgrid()
        env.addTest()
        robLst = []
        robLst.append(robRowLst)
        robLst.append(robColLst)
        env.addGraph(robNum, graphData, False)
        env.addRobotStartPnt(robLst)
        env.drawPic('./png/robGraph&RC', fileType=fileType)

#   case 5 draw graph with STC
    if (drawType == 7):
        env = Env(mat)
        robLst = []
        robLst.append(robRowLst)
        robLst.append(robColLst)
        graphNameCfg = conFileDir + 'auctionSTCDeg.txt'
        graphCfg = Read_Cfg(graphNameCfg)
        robNum = int(graphCfg.getSingleVal('robNum'))
        graphData = []
        for i in range(robNum):
            graphUnit = []
            graphCfg.get('row' + str(i), graphUnit)
            graphData.append(copy.deepcopy(graphUnit))
            graphUnit = []
            graphCfg.get('col' + str(i), graphUnit)
            graphData.append(copy.deepcopy(graphUnit))
        env.addSTCGraph(robNum, graphData)
        graphData = []

        #        for i in range(robNum):
        #            graphUnit = []
        #            graphCfg.get('neiRow'+str(i),graphUnit)
        #            graphData.append(copy.deepcopy(graphUnit))
        #            graphUnit = []
        #            graphCfg.get('neiCol'+str(i),graphUnit)
        #            graphData.append(copy.deepcopy(graphUnit))
        #        print(graphData)
        #        env.addNeiGraph(robNum,graphData)
        env.addTest()
        env.addRobotStartPnt(robLst)
        env.addgrid()
        env.drawPic('./png/robNei&Graph', fileType=fileType)

#  case 8  draw environment and the GA_pattern path
    if (drawType == 8):
        env = Env(mat)
        env.addgrid()
        robLst = []
        robLst.append(robRowLst)
        robLst.append(robColLst)
        env.addRobotStartPnt(robLst)
        pathNameCfg = conFileDir + '_decode_Cfg.txt'
        pathCfg = Read_Cfg(pathNameCfg)
        robNum = int(pathCfg.getSingleVal('robNum'))
        pathData = []
        for i in range(robNum):
            path_x = []
            pathCfg.get('path_x' + str(i), path_x)
            pathData.append(copy.deepcopy(path_x))
            path_y = []
            pathCfg.get('path_y' + str(i), path_y)
            pathData.append(copy.deepcopy(path_y))
        env.addPath(robNum=robNum, lst=pathData)
        #            graphData.append(copy.deepcopy(graphUnit))
        env.drawPic('./png/env_' + cfgFileName, fileType)

# case 9 draw environment and test the python graph function
    if (drawType == 9):
        env = Env(mat)
        edgeNameCfg = conFileDir + '5_20_20_80_Outdoor_Cfg.txt'
        edgeCfg = Read_Cfg(edgeNameCfg)
        edgeData = []
        edgeUnit = []
        edgeCfg.get('sPntx', edgeUnit)
        print('edgeLength', len(edgeUnit))
        edgeData.append(copy.deepcopy(edgeUnit))
        edgeUnit = []
        edgeCfg.get('sPnty', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))

        edgeUnit = []
        edgeCfg.get('tPntx', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))
        edgeUnit = []
        edgeCfg.get('tPnty', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))
        env.addgrid()
        env.addEdgeInPnt(edgeData)
        env.addTest()
        env.drawPic('./png/edgesInPntTestGraph', fileType=fileType)
#case 10 draw multi path
    if (drawType == 10):
        env = Env(mat)
        env.addgrid()
        robLst = []
        robLst.append(robRowLst)
        robLst.append(robColLst)
        env.addRobotStartPnt(robLst)
        pathNameCfg = conFileDir + 'auctionSTCEstDegend.txt'
        pathCfg = Read_Cfg(pathNameCfg)
        robNum = int(pathCfg.getSingleVal('robNum'))

        graphData = []
        print('row', row)
        print('col', col)
        for i in range(robNum):
            graphUnit = []
            pathCfg.get('row' + str(i), graphUnit)
            graphData.append(copy.deepcopy(graphUnit))
            graphUnit = []
            pathCfg.get('col' + str(i), graphUnit)
            graphData.append(copy.deepcopy(graphUnit))
        env.addGraph(robNum, graphData, False)

        edgeData = []
        edgeUnit = []
        pathCfg.get('sPntx', edgeUnit)
        print('edgeLength', len(edgeUnit))
        edgeData.append(copy.deepcopy(edgeUnit))
        edgeUnit = []
        pathCfg.get('sPnty', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))

        edgeUnit = []
        pathCfg.get('tPntx', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))
        edgeUnit = []
        pathCfg.get('tPnty', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))
        env.addgrid()
        env.addEdgeInPnt(edgeData)

        STCData = []
        STCUnit = []
        pathCfg.get('STCPntx', STCUnit)
        STCData.append(copy.deepcopy(STCUnit))
        STCUnit = []
        pathCfg.get('STCPnty', STCUnit)
        #        print(STCUnit)
        STCData.append(copy.deepcopy(STCUnit))
        #        env.addgrid()
        #        env.addSTCVert(STCData)
        #        env.addEdgeInPnt(edgeData)

        pathData = []
        for i in range(robNum):
            path_x = []
            pathCfg.get('path_x' + str(i), path_x)
            pathData.append(copy.deepcopy(path_x))
            path_y = []
            pathCfg.get('path_y' + str(i), path_y)
            pathData.append(copy.deepcopy(path_y))
#        env.addPath(robNum = robNum, lst = pathData,txtType = False)
#            graphData.append(copy.deepcopy(graphUnit))

        env.drawPic('./png/env_' + cfgFileName + 'path', fileType)
#   for the single stc
    if (drawType == 11):
        env = Env(mat)
        env.addgrid()
        robLst = []
        robLst.append(robRowLst)
        robLst.append(robColLst)

        pathNameCfg = conFileDir + 'singleSTC.txt'
        pathCfg = Read_Cfg(pathNameCfg)
        robNum = int(pathCfg.getSingleVal('robNum'))

        graphData = []
        print('row', row)
        print('col', col)
        print(robNum)
        for i in range(robNum):
            graphUnit = []
            pathCfg.get('row' + str(i), graphUnit)
            graphData.append(copy.deepcopy(graphUnit))
            graphUnit = []
            pathCfg.get('col' + str(i), graphUnit)
            graphData.append(copy.deepcopy(graphUnit))
        env.addGraph(robNum, graphData, False)
        terminalPnt = []
        pathData = []
        for i in range(robNum):
            path_x = []
            pathCfg.get('path_x' + str(i), path_x)
            pathData.append(copy.deepcopy(path_x))
            terminalPnt.append(path_x[len(path_x) - 1])
            path_y = []
            pathCfg.get('path_y' + str(i), path_y)
            pathData.append(copy.deepcopy(path_y))
            terminalPnt.append(path_y[len(path_y) - 1])
        env.addPath(robNum=robNum, lst=pathData, txtType=False)

        env.addRobotStartPnt(robLst)
        env.addRobotTerminalPnt(terminalPnt)

        edgeData = []
        edgeUnit = []
        pathCfg.get('sPntx', edgeUnit)
        print('edgeLength', len(edgeUnit))
        edgeData.append(copy.deepcopy(edgeUnit))
        edgeUnit = []
        pathCfg.get('sPnty', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))

        edgeUnit = []
        pathCfg.get('tPntx', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))
        edgeUnit = []
        pathCfg.get('tPnty', edgeUnit)
        edgeData.append(copy.deepcopy(edgeUnit))
        env.addgrid()
        env.addEdgeInPnt(edgeData)

        #            graphData.append(copy.deepcopy(graphUnit))
        env.drawPic('./png/env_' + cfgFileName + 'path', fileType)


#        print('wtf')
#case 10 draw multi path
    if (drawType == 12):
        env = Env(mat)
        env.addgrid()
        robLst = []
        pathNameCfg = conFileDir + 'auctionSTCEstDeg.txt'
        pathNameCfg = conFileDir + 'CfgDeg2.txt'
        pathCfg = Read_Cfg(pathNameCfg)
        robNum = int(pathCfg.getSingleVal('robNum'))

        pathData = []
        for i in range(robNum):
            path_x = []
            pathCfg.get('path_x' + str(i), path_x)
            pathData.append(copy.deepcopy(path_x))
            path_y = []
            pathCfg.get('path_y' + str(i), path_y)
            pathData.append(copy.deepcopy(path_y))
        env.addPath(robNum=robNum, lst=pathData, txtType=False)
        #            graphData.append(copy.deepcopy(graphUnit))
        robLst.append(robRowLst)
        robLst.append(robColLst)
        env.addRobotStartPnt(robLst)
        env.drawPic('./png/env_' + cfgFileName + 'JustPath', fileType)
    if (drawType == 13):
        env = Env(mat)
        spanningData = []
        pathNameCfg = conFileDir + 'auctionSTCEstDeg.txt'
        pathNameCfg = conFileDir + 'CfgDeg2.txt'
        pathCfg = Read_Cfg(pathNameCfg)
        robNum = int(pathCfg.getSingleVal('robNum'))
        for i in range(robNum):
            edgeData = []
            edgeUnit = []
            pathCfg.get('sPntx' + str(i), edgeUnit)
            print('edgeLength', len(edgeUnit))
            edgeData.append(copy.deepcopy(edgeUnit))
            edgeUnit = []
            pathCfg.get('sPnty' + str(i), edgeUnit)
            edgeData.append(copy.deepcopy(edgeUnit))

            edgeUnit = []
            pathCfg.get('tPntx' + str(i), edgeUnit)
            edgeData.append(copy.deepcopy(edgeUnit))
            edgeUnit = []
            pathCfg.get('tPnty' + str(i), edgeUnit)
            edgeData.append(copy.deepcopy(edgeUnit))
            spanningData.append(copy.deepcopy(edgeData))
        env.addMultiEdgeInPnt(robNum=robNum, lst=spanningData)
        env.drawPic('./png/env_' + cfgFileName + 'spanningTree', fileType)
    if (drawType == 14):
        env = Env(mat)
        env.addgrid()
        robLst = []
        print('0-0-', len(cfgFileName))
        cfgFileNameStri = cfgFileName.split('.')
        pathNameCfg = conFileDir + 'GAcomp//' + cfgFileNameStri[
            0] + 'auctionSTCEstDeg.txt'
        pathCfg = Read_Cfg(pathNameCfg)
        robNum = int(pathCfg.getSingleVal('robNum'))

        pathData = []
        for i in range(robNum):
            path_x = []
            pathCfg.get('path_x' + str(i), path_x)
            pathData.append(copy.deepcopy(path_x))
            path_y = []
            pathCfg.get('path_y' + str(i), path_y)
            pathData.append(copy.deepcopy(path_y))
        env.addPath(robNum=robNum, lst=pathData, txtType=False)
        #            graphData.append(copy.deepcopy(graphUnit))
        spanningData = []
        for i in range(robNum):
            edgeData = []
            edgeUnit = []
            pathCfg.get('sPntx' + str(i), edgeUnit)
            print('edgeLength', len(edgeUnit))
            edgeData.append(copy.deepcopy(edgeUnit))
            edgeUnit = []
            pathCfg.get('sPnty' + str(i), edgeUnit)
            edgeData.append(copy.deepcopy(edgeUnit))

            edgeUnit = []
            pathCfg.get('tPntx' + str(i), edgeUnit)
            edgeData.append(copy.deepcopy(edgeUnit))
            edgeUnit = []
            pathCfg.get('tPnty' + str(i), edgeUnit)
            edgeData.append(copy.deepcopy(edgeUnit))
            spanningData.append(copy.deepcopy(edgeData))
        env.addMultiEdgeInPnt(robNum=robNum, lst=spanningData)
        robLst.append(robRowLst)
        robLst.append(robColLst)
        env.addRobotStartPnt(robLst)
        env.drawPic('./png/env_' + cfgFileName + 'JustPath', fileType)
コード例 #8
0
ファイル: env.py プロジェクト: Tesla2fox/ASCII
    def drawSubPlot(self, name='subplot'):
        #        fig = plotly.tools.make_subplots(rows = 2,cols = 1)
        #        fig.append_trace(trace)

        figData = []
        robotCfg = './/data//' + 'test2_tutorial.txt'
        robCfg = Read_Cfg(robotCfg)
        for i in range(5):
            _set = []
            robCfg.get('set' + str(i), _set)
            setTrace = go.Box(y=_set, name='$    G_' + str(i + 1) + '$')
            figData.append(setTrace)

        _set = []
        robCfg.get('makespan', _set)
        for i in range(len(_set)):
            _set[i] = _set[i] * 4
        setTrace = go.Box(y=_set, name='Makespan', xaxis='x2', yaxis='y2')
        figData.append(setTrace)

        layout = dict()
        layout['xaxis'] = dict(domain=[0, 0.8],
                               autorange=True,
                               showgrid=False,
                               zeroline=False,
                               showline=True,
                               autotick=True,
                               ticks='',
                               showticklabels=True)
        layout['yaxis'] = dict(scaleanchor="x",
                               autorange=True,
                               showgrid=False,
                               zeroline=False,
                               showline=True,
                               autotick=True,
                               ticks='',
                               title='The number of mega vertexes',
                               showticklabels=True)

        layout['xaxis2'] = dict(domain=[0.9, 1],
                                autorange=True,
                                showgrid=False,
                                zeroline=False,
                                showline=True,
                                autotick=True,
                                ticks='',
                                showticklabels=True)
        layout['yaxis2'] = dict(scaleanchor="x",
                                autorange=True,
                                showgrid=False,
                                zeroline=False,
                                showline=True,
                                autotick=True,
                                ticks='',
                                title='Time(s)',
                                anchor='x2',
                                showticklabels=True)
        layout['font'] = dict(family='sans-serif', size=25, color='#000')
        layout['autosize'] = False
        layout['height'] = 1000
        layout['width'] = 1800
        layout['showlegend'] = False

        fig = go.Figure(data=figData, layout=layout)

        py.image.save_as(fig, filename=name + '.jpeg')
コード例 #9
0
ファイル: env.py プロジェクト: Tesla2fox/ASCII
        #        print(layout)
        data = []
        data.append(rangeTrace)
        data.append(markTrace)
        data.append(startTrace)
        data.append(terminalTrace)
        fig = dict(data=data, layout=layout)
        plotly.offline.plot(fig, filename='multiPlan')
        #        py.image.save_as(fig,filename ='stc_demon.jpeg')
        Image('./env.png')
        print('draw success')

if __name__ == '__main__':
    conFileDir = './/data//'
    degNameCfg = conFileDir + 'map_debug.txt'
    readCfg = Read_Cfg(degNameCfg)
    gridStep = 10

    lstx = list()
    lsty = []
    grid_x = list()
    grid_y = list()
    svd = []
    tvd = []
    vob = []
    readMark = readCfg.get('range_x', lstx)
    readMark = readCfg.get('range_y', lsty)
    readMark = readCfg.get('grid_x', grid_x)
    readMark = readCfg.get('grid_y', grid_y)
    readCfg.get('obType', vob)
    readCfg.get('svd', svd)