本文整理汇总了Python中Utils.Utils.converte_plano_carteziano方法的典型用法代码示例。如果您正苦于以下问题:Python Utils.converte_plano_carteziano方法的具体用法?Python Utils.converte_plano_carteziano怎么用?Python Utils.converte_plano_carteziano使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Utils.Utils
的用法示例。
在下文中一共展示了Utils.converte_plano_carteziano方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: boon_to_traces
# 需要导入模块: from Utils import Utils [as 别名]
# 或者: from Utils.Utils import converte_plano_carteziano [as 别名]
def boon_to_traces(files, origem=os.getcwd(), nos=None):
"""
Função para gerar o arquivo de mobilidade compatível com o mixim através
de um arquivo de traces no seguinte formato:
<latitude>,<longitude>,<altitude>,<timestamp UTC>,<velocidade m/s>
"""
if origem[-1] != '/':
origem += '/'
trac = Utils.pegar_coordenadas_traces(files)
menorLat, maiorLat, menorLon, maiorLon = Utils.coordenadas_extremas_traces(trac, 0.0002)
playgroundx, playgroundy = Utils.converte_plano_carteziano((menorLat, maiorLon),(maiorLat, menorLon))
try:
dic_nos = Utils.formata_dicionario_nos(len(trac), nos)
except Utils.RouterError:
sys.stderr.write("Não é possível gerar rota para os indices definidos\n")
sys.exit(1)
Thread(target=Utils.download_mapa, args=([(menorLat,maiorLon),(maiorLat, maiorLon),(maiorLat, menorLon),(menorLat, menorLon)] , origem)).start()
with open(origem + 'traces.boon', 'w') as f:
for i in xrange(len(dic_nos)):
if dic_nos.has_key(i):
inter = dic_nos.get(i)
tempo_simulacao = inter[0]
for t in inter[1:]:
t = int(t)
for r in trac[t]:
time = r['tempo']
latit = round(float(r['latitude']), 6)
longit = round(float(r['longitude']), 6)
tempo_simulacao = time + tempo_simulacao
x,y = Utils.converte_plano_carteziano((menorLat, maiorLon), (latit, longit))
f.write('{} {} {} '.format(tempo_simulacao, x*1000, y*1000))
# Necessário para impedir que existe duas coordenadas com o mesmo ponto, o que
# provoca uma exceção na simulação
tempo_simulacao = tempo_simulacao + 2
f.write('\n')
print config.format(origem + 'traces.boon', playgroundy, playgroundx, len(dic_nos), 'traces.boon')
示例2: boon_to_routes
# 需要导入模块: from Utils import Utils [as 别名]
# 或者: from Utils.Utils import converte_plano_carteziano [as 别名]
def boon_to_routes(arquivo, origem=os.getcwd(), nos=None):
"""
Função para gerar o arquivo de mobilidade compatível com o mixim através
de um arquivo contendo as rotas.
"""
if origem[-1] != '/':
origem += '/'
lista = Utils.pegar_coordenadas_rotas(arquivo)
if not lista:
sys.stderr.write('Não existe rota para os endereços configurados.\n')
exit(1)
menorLat, maiorLat, menorLon, maiorLon = Utils.coordenadas_extremas_rotas(lista)
if menorLat < 0 and maiorLat < 0 and menorLon < 0 and maiorLon < 0:
pontoZero = (menorLat, maiorLon)
pontoUm = (menorLat, menorLon)
pontoDois = (maiorLat, menorLon)
pontoTres = (maiorLat, maiorLon)
elif menorLat > 0 and maiorLat > 0 and menorLon < 0 and maiorLon < 0:
pontoZero = (maiorLat, maiorLon)
pontoUm = (maiorLat, menorLon)
pontoDois = (menorLat, menorLon)
pontoTres = (menorLat, maiorLon)
elif menorLat > 0 and maiorLat > 0 and menorLon > 0 and maiorLon > 0:
pontoZero = (maiorLat, menorLon)
pontoUm = (maiorLat, maiorLon)
pontoDois = (menorLat, maiorLon)
pontoTres = (menorLat, menorLon)
elif menorLat < 0 and maiorLat < 0 and menorLon > 0 and maiorLon > 0:
pontoZero = (menorLat, menorLon)
pontoUm = (menorLat, maiorLon)
pontoDois = (maiorLat, maiorLon)
pontoTres = (maiorLat, menorLon)
else:
sys.stderr.write("Erro nas coordenadas.\n")
exit(1)
playgroundx, playgroundy = Utils.converte_plano_carteziano(pontoZero, pontoDois)
try:
dic_nos = Utils.formata_dicionario_nos(len(lista), nos)
except Utils.RouterError:
sys.stderr.write("Não é possível gerar rota para os indices definidos\n")
sys.exit(1)
Thread(target=Utils.download_mapa, args=([pontoZero, pontoTres, pontoDois, pontoUm], origem)).start()
with open(origem + 'route.boon', 'w') as f:
for i in xrange(len(dic_nos)):
if dic_nos.has_key(i):
inter = dic_nos.get(i)
tempo_simulacao = inter[0]
for t in inter[1:]:
t = int(t)
tamanho = len(lista[t]['rotas'])
for i in xrange(tamanho-1):
p1 = lista[t]['rotas'][i]
p2 = lista[t]['rotas'][i+1]
percurso = Utils.trace_from_gmaps(p1, p2)
for i in percurso:
time = i[0]
longit = i[1]
latit = i[2]
tempo_simulacao = time + tempo_simulacao
x,y = Utils.converte_plano_carteziano(pontoZero, (latit, longit))
f.write('{} {} {} '.format(tempo_simulacao, x*1000, y*1000))
# Necessário para impedir que existe duas coordenadas com o mesmo ponto, o que
# provoca uma exceção na simulação
tempo_simulacao = tempo_simulacao + 2
f.write('\n')
print config.format(origem + 'route.boon', playgroundy, playgroundx, len(dic_nos), 'route.boon')