34 lines
1.0 KiB
Python
34 lines
1.0 KiB
Python
from flask import Flask, jsonify, request
|
|
import folium
|
|
import sys
|
|
|
|
app = Flask(__name__)
|
|
|
|
# Armazena a última localização conhecida
|
|
last_known_location = (-22.1839247, -47.3824123)
|
|
|
|
# Rota para renderizar o mapa inicial
|
|
@app.route('/')
|
|
def index():
|
|
global last_known_location
|
|
folium_map = folium.Map(location=last_known_location, zoom_start=14)
|
|
folium.Marker(last_known_location, tooltip='Ponto GPS').add_to(folium_map)
|
|
return folium_map._repr_html_()
|
|
|
|
# Rota para atualizar as coordenadas do marcador
|
|
@app.route('/update_marker', methods=['POST'])
|
|
def update_marker():
|
|
global last_known_location
|
|
data = request.json
|
|
last_known_location = (data['lat'], data['lon'])
|
|
return jsonify({'message': 'Coordenadas atualizadas com sucesso!'}), 200
|
|
|
|
if __name__ == '__main__':
|
|
port = 5000 # Porta padrão
|
|
if len(sys.argv) > 1:
|
|
try:
|
|
port = int(sys.argv[1])
|
|
except ValueError:
|
|
print("Por favor forneça um número de porta válido.")
|
|
sys.exit(1)
|
|
app.run(debug=True, port=port) |