- Added requirements.txt with all Python dependencies - Created new module: modules/reference_point_adjuster.py - Identifies reference point 5001 from ReflineStationSetup - Allows entering new coordinates for the reference point - Recalculates all dependent points using translation - Exports modified JXL file - Extended GUI with new tab 'Referenzpunkt anpassen' - Shows current reference point coordinates - Input fields for new coordinates with live delta display - Preview transformation before applying - Apply transformation and export buttons - Detailed transformation report - Updated README.md with new features and installation instructions - Added test files for validation |
||
|---|---|---|
| modules | ||
| tests | ||
| .abacus.donotdelete | ||
| README.md | ||
| main.py | ||
| requirements.txt | ||
README.md
Trimble Geodesy Tool
Ein vollständiges Python-Programm mit grafischer Benutzeroberfläche (GUI) für geodätische Vermessungsarbeiten mit Trimble JXL-Dateien.
Funktionen
1. JXL-Datei Analyse und Bearbeitung
- Trimble JXL-Dateien einlesen und analysieren
- Übersicht über Punkte, Stationen und Messungen
- Passpunkte entfernen
- Prismenkonstanten ändern
- Parameter bearbeiten
2. COR-Datei Generierung
- Aus JXL-Dateien Punktdateien im COR-Format berechnen
- Unterstützt zwei Stationierungsarten:
- Erste Stationierung über eine Referenzlinie
- Alle anderen als freie Stationierungen
- Export in verschiedene Formate (COR, CSV, TXT, DXF)
3. Koordinatensystem-Transformation
- Rotation um einen wählbaren Punkt
- Verschiebung in XY-Richtung
- Verschiebung in Z-Richtung
- Zwei Eingabemodi:
- Manuelle Eingabe von Transformationsparametern
- Definition über 2 Punkte (Ursprung und Y-Richtung)
- Keine Maßstabsänderung (wie gefordert)
4. Georeferenzierung
- Mindestens 3 Passpunkte für Transformation
- Rotation und Translation des Koordinatensystems
- Keine Maßstabsänderung (keine Helmert-Transformation)
- Restfehler ausgleichen und anzeigen
- Detaillierte Qualitätsparameter (RMSE, Residuen)
5. Netzausgleichung
- Methode der kleinsten Quadrate
- Basierend auf Beobachtungen der JXL-Datei
- Automatische Festpunkterkennung
- Ausgabe von:
- Ausgeglichenen Koordinaten
- Standardabweichungen
- Residuen
- Qualitätsparametern (Sigma-0, Chi-Quadrat, RMSE)
6. Referenzpunkt-Anpassung (NEU)
- Anpassung des Referenzpunktes 5001 (bei Referenzlinien-Stationierung)
- Eingabe neuer Koordinaten (X, Y, Z) für den Referenzpunkt
- Automatische Neuberechnung aller abhängigen Punkte
- Vorschau der Transformation mit allen betroffenen Punkten
- Export der transformierten JXL-Datei
- Validierung der Eingaben mit Warnungen bei problematischen Werten
Installation
Voraussetzungen
- Python 3.8 oder höher
- PyQt5
- NumPy
- SciPy
- lxml
Installation der Abhängigkeiten
Option 1: Mit requirements.txt (empfohlen)
cd /home/ubuntu/trimble_geodesy
pip install -r requirements.txt
Option 2: Manuelle Installation
pip install PyQt5 numpy scipy lxml
Verwendung
Programm starten
cd /home/ubuntu/trimble_geodesy
python3 main.py
Workflow
- JXL-Analyse Tab: JXL-Datei laden und analysieren
- COR-Generator Tab: Koordinaten generieren und exportieren
- Transformation Tab: Koordinatensystem rotieren/verschieben
- Georeferenzierung Tab: Mit Passpunkten transformieren
- Netzausgleichung Tab: Netzausgleichung durchführen
- Referenzpunkt anpassen Tab: Referenzpunkt 5001 ändern und JXL neu berechnen
Dateistruktur
trimble_geodesy/
├── main.py # Hauptprogramm mit GUI
├── requirements.txt # Python-Abhängigkeiten
├── modules/
│ ├── __init__.py
│ ├── jxl_parser.py # JXL-Datei Parser
│ ├── cor_generator.py # COR-Datei Generator
│ ├── transformation.py # Koordinatentransformation
│ ├── georeferencing.py # Georeferenzierung
│ ├── network_adjustment.py # Netzausgleichung
│ └── reference_point_adjuster.py # Referenzpunkt-Anpassung (NEU)
├── output/ # Ausgabeverzeichnis
└── README.md
Technische Details
JXL-Format
Das JXL-Format (Trimble JobXML) ist ein XML-basiertes Format für Vermessungsdaten:
<PointRecord>: Punktdaten mit Koordinaten und Messungen<StationRecord>: Stationsinformationen<TargetRecord>: Prismeneinstellungen<BackBearingRecord>: Orientierungsdaten
COR-Format
Das COR-Format ist ein einfaches Textformat für Koordinaten:
|Punkt |X |Y |Z |
|5001 |0.000 |0.000 |0.000 |
|5002 |0 | 11.407 | -0.035 |
Transformation
Die Transformation verwendet eine 4-Parameter-Transformation:
- Translation X, Y, Z
- Rotation um die Z-Achse
- Kein Maßstabsfaktor (Maßstab = 1.0)
Netzausgleichung
Die Netzausgleichung verwendet:
- Gauß-Markov-Modell
- Beobachtungsgleichungen für Richtungen und Strecken
- Iterative Lösung nach Gauß-Newton
- Varianzfortpflanzung für Genauigkeitsmaße
Lizenz
Dieses Programm wurde für geodätische Vermessungsarbeiten entwickelt.
Autor
Entwickelt für geodätische Vermessungsarbeiten mit Trimble-Instrumenten.