🎯 MapView v2.0 - Global Deployment Ready
✨ MAJOR FEATURES: • Auto-zoom intelligence với smart bounds fitting • Enhanced 3D GPS markers với pulsing effects • Professional route display với 6-layer rendering • Status-based parking icons với availability indicators • Production-ready build optimizations 🗺️ AUTO-ZOOM FEATURES: • Smart bounds fitting cho GPS + selected parking • Adaptive padding (50px) cho visual balance • Max zoom control (level 16) để tránh quá gần • Dynamic centering khi không có selection 🎨 ENHANCED VISUALS: • 3D GPS marker với multi-layer pulse effects • Advanced parking icons với status colors • Selection highlighting với animation • Dimming system cho non-selected items 🛣️ ROUTE SYSTEM: • OpenRouteService API integration • Multi-layer route rendering (glow, shadow, main, animated) • Real-time distance & duration calculation • Visual route info trong popup 📱 PRODUCTION READY: • SSR safe với dynamic imports • Build errors resolved • Global deployment via Vercel • Optimized performance 🌍 DEPLOYMENT: • Vercel: https://whatever-ctk2auuxr-phong12hexdockworks-projects.vercel.app • Bundle size: 22.8 kB optimized • Global CDN distribution • HTTPS enabled 💾 VERSION CONTROL: • MapView-v2.0.tsx backup created • MAPVIEW_VERSIONS.md documentation • Full version history tracking
This commit is contained in:
169
valhalla/README.md
Normal file
169
valhalla/README.md
Normal file
@@ -0,0 +1,169 @@
|
||||
# Valhalla Routing Engine
|
||||
|
||||
This directory contains the configuration and setup for the Valhalla routing engine.
|
||||
|
||||
## 🚀 Quick Setup
|
||||
|
||||
### 1. Download OSM Data
|
||||
|
||||
Download OpenStreetMap data for your region from [Geofabrik](https://download.geofabrik.de/):
|
||||
|
||||
```bash
|
||||
# For Vietnam/Southeast Asia
|
||||
wget https://download.geofabrik.de/asia/vietnam-latest.osm.pbf -P custom_files/
|
||||
|
||||
# For smaller regions (Ho Chi Minh City area)
|
||||
wget https://download.geofabrik.de/asia/vietnam-latest.osm.pbf -P custom_files/
|
||||
```
|
||||
|
||||
### 2. Build and Run
|
||||
|
||||
```bash
|
||||
# Build Valhalla container
|
||||
docker-compose up -d valhalla
|
||||
|
||||
# Check status
|
||||
curl http://localhost:8002/status
|
||||
```
|
||||
|
||||
## 📊 API Endpoints
|
||||
|
||||
### Route Calculation
|
||||
```bash
|
||||
# POST /route
|
||||
curl -X POST http://localhost:8002/route \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{
|
||||
"locations": [
|
||||
{"lat": 10.7769, "lon": 106.7009},
|
||||
{"lat": 10.7796, "lon": 106.7019}
|
||||
],
|
||||
"costing": "auto",
|
||||
"directions_options": {
|
||||
"units": "kilometers"
|
||||
}
|
||||
}'
|
||||
```
|
||||
|
||||
### Locate Nearby Roads
|
||||
```bash
|
||||
# POST /locate
|
||||
curl -X POST http://localhost:8002/locate \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{
|
||||
"locations": [
|
||||
{"lat": 10.7769, "lon": 106.7009}
|
||||
],
|
||||
"costing": "auto"
|
||||
}'
|
||||
```
|
||||
|
||||
### Health Check
|
||||
```bash
|
||||
# GET /status
|
||||
curl http://localhost:8002/status
|
||||
```
|
||||
|
||||
## ⚙️ Configuration
|
||||
|
||||
The `valhalla.json` file contains the routing engine configuration:
|
||||
|
||||
- **Costing models**: auto, bicycle, pedestrian
|
||||
- **Data sources**: OpenStreetMap
|
||||
- **Service endpoints**: route, locate, status
|
||||
- **Logging**: Configurable log levels
|
||||
|
||||
## 🗺️ Supported Regions
|
||||
|
||||
Current OSM data includes:
|
||||
- Vietnam (complete)
|
||||
- Southeast Asia (partial)
|
||||
- Custom boundary areas
|
||||
|
||||
To add new regions:
|
||||
1. Download `.osm.pbf` files to `custom_files/`
|
||||
2. Restart the container
|
||||
3. Wait for data processing to complete
|
||||
|
||||
## 🔧 Performance Tuning
|
||||
|
||||
### Memory Configuration
|
||||
```json
|
||||
{
|
||||
"mjolnir": {
|
||||
"tile_dir": "/data/valhalla",
|
||||
"max_cache_size": 1000000000
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Costing Options
|
||||
```json
|
||||
{
|
||||
"costing_options": {
|
||||
"auto": {
|
||||
"maneuver_penalty": 5,
|
||||
"gate_cost": 30,
|
||||
"toll_booth_cost": 15
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## 📈 Monitoring
|
||||
|
||||
### Health Checks
|
||||
- Container status: `docker ps`
|
||||
- Service health: `curl http://localhost:8002/status`
|
||||
- Logs: `docker logs valhalla`
|
||||
|
||||
### Performance Metrics
|
||||
- Route calculation time
|
||||
- Memory usage
|
||||
- Cache hit rate
|
||||
- Request throughput
|
||||
|
||||
## 🐛 Troubleshooting
|
||||
|
||||
### Common Issues
|
||||
|
||||
1. **Container won't start**
|
||||
- Check OSM data files in `custom_files/`
|
||||
- Verify memory allocation (minimum 2GB)
|
||||
- Check port conflicts
|
||||
|
||||
2. **Slow route calculation**
|
||||
- Increase cache size in configuration
|
||||
- Optimize OSM data for your region
|
||||
- Add more memory to container
|
||||
|
||||
3. **Routes not found**
|
||||
- Verify coordinates are within OSM data bounds
|
||||
- Check road connectivity
|
||||
- Try different costing models
|
||||
|
||||
### Debug Mode
|
||||
```bash
|
||||
# Enable debug logging
|
||||
docker-compose up valhalla --build
|
||||
docker logs -f valhalla
|
||||
```
|
||||
|
||||
## 🔄 Updates
|
||||
|
||||
### Update OSM Data
|
||||
```bash
|
||||
# Download new data
|
||||
wget https://download.geofabrik.de/asia/vietnam-latest.osm.pbf -P custom_files/
|
||||
|
||||
# Rebuild container
|
||||
docker-compose down valhalla
|
||||
docker-compose up -d valhalla --build
|
||||
```
|
||||
|
||||
### Update Valhalla Version
|
||||
```bash
|
||||
# Update base image in Dockerfile
|
||||
# Rebuild container
|
||||
docker-compose build valhalla --no-cache
|
||||
```
|
||||
Reference in New Issue
Block a user