zusammenfügen
This commit is contained in:
150
Datenbank.py
150
Datenbank.py
@@ -47,16 +47,13 @@ class Datenbank_anlegen:
|
||||
gnss_bx NUMERIC(7, 4),
|
||||
gnss_by NUMERIC(7, 4),
|
||||
gnss_bz NUMERIC(7, 4),
|
||||
gnss_m0 NUMERIC(1, 8),
|
||||
gnss_q11 NUMERIC(1, 8),
|
||||
gnss_q12 NUMERIC(1, 8),
|
||||
gnss_q13 NUMERIC(1, 8),
|
||||
gnss_q21 NUMERIC(1, 8),
|
||||
gnss_q22 NUMERIC(1, 8),
|
||||
gnss_q23 NUMERIC(1, 8),
|
||||
gnss_q31 NUMERIC(1, 8),
|
||||
gnss_q32 NUMERIC(1, 8),
|
||||
gnss_q33 NUMERIC(1, 8),
|
||||
gnss_s0 NUMERIC(1, 8),
|
||||
gnss_cxx NUMERIC(1, 8),
|
||||
gnss_cxy NUMERIC(1, 8),
|
||||
gnss_cxz NUMERIC(1, 8),
|
||||
gnss_cyy NUMERIC(1, 8),
|
||||
gnss_cyz NUMERIC(1, 8),
|
||||
gnss_czz NUMERIC(1, 8),
|
||||
niv_dh NUMERIC(8, 6),
|
||||
niv_strecke NUMERIC(8, 6),
|
||||
niv_anz_standpkte INTEGER,
|
||||
@@ -92,34 +89,6 @@ class Datenbankzugriff:
|
||||
def __init__(self, pfad_datenbank):
|
||||
self.pfad_datenbank = pfad_datenbank
|
||||
|
||||
def get_koordinaten(self, koordinatenart, ausgabeart = "Dict"):
|
||||
con = sqlite3.connect(self.pfad_datenbank)
|
||||
cursor = con.cursor()
|
||||
if koordinatenart == "naeherung_lh":
|
||||
values = "punktnummer, naeherungx_lh, naeherungy_lh, naeherungz_lh"
|
||||
elif koordinatenart == "naeherung_us":
|
||||
values = "punktnummer, naeherungx_us, naeherungy_us, naeherungz_us"
|
||||
|
||||
liste_koordinaten = cursor.execute(f"""
|
||||
SELECT {values} FROM Netzpunkte;
|
||||
""").fetchall()
|
||||
cursor.close()
|
||||
con.close()
|
||||
|
||||
liste_koordinaten = [
|
||||
koordinate for koordinate in liste_koordinaten
|
||||
if koordinate[1] is not None and koordinate[2] is not None and koordinate[3] is not None
|
||||
]
|
||||
if ausgabeart == "Dict":
|
||||
return {
|
||||
koordinate[0]: sp.Matrix([
|
||||
sp.Float(str(koordinate[1])),
|
||||
sp.Float(str(koordinate[2])),
|
||||
sp.Float(str(koordinate[3]))
|
||||
])
|
||||
for koordinate in liste_koordinaten
|
||||
}
|
||||
|
||||
def set_koordinaten(self, dict_koordinaten, koordinatenart):
|
||||
con = sqlite3.connect(self.pfad_datenbank)
|
||||
cursor = con.cursor()
|
||||
@@ -351,6 +320,34 @@ class Datenbankzugriff:
|
||||
else:
|
||||
return f"Es wurden keine neuen Normalhöhen übergeben. Folgende Normalhöhen sind in der Datenbank enthalten: {liste_hfp_in_db}"
|
||||
|
||||
def get_koordinaten(self, koordinatenart, ausgabeart = "Dict"):
|
||||
con = sqlite3.connect(self.pfad_datenbank)
|
||||
cursor = con.cursor()
|
||||
if koordinatenart == "naeherung_lh":
|
||||
values = "punktnummer, naeherungx_lh, naeherungy_lh, naeherungz_lh"
|
||||
elif koordinatenart == "naeherung_us":
|
||||
values = "punktnummer, naeherungx_us, naeherungy_us, naeherungz_us"
|
||||
|
||||
liste_koordinaten = cursor.execute(f"""
|
||||
SELECT {values} FROM Netzpunkte;
|
||||
""").fetchall()
|
||||
cursor.close()
|
||||
con.close()
|
||||
|
||||
liste_koordinaten = [
|
||||
koordinate for koordinate in liste_koordinaten
|
||||
if koordinate[1] is not None and koordinate[2] is not None and koordinate[3] is not None
|
||||
]
|
||||
if ausgabeart == "Dict":
|
||||
return {
|
||||
koordinate[0]: sp.Matrix([
|
||||
sp.Float(str(koordinate[1])),
|
||||
sp.Float(str(koordinate[2])),
|
||||
sp.Float(str(koordinate[3]))
|
||||
])
|
||||
for koordinate in liste_koordinaten
|
||||
}
|
||||
|
||||
def get_normalhoehe_hfp(self):
|
||||
con = sqlite3.connect(self.pfad_datenbank)
|
||||
cursor = con.cursor()
|
||||
@@ -404,8 +401,83 @@ class Datenbankzugriff:
|
||||
def get_beobachtungen_from_beobachtungenid(self):
|
||||
con = sqlite3.connect(self.pfad_datenbank)
|
||||
cursor = con.cursor()
|
||||
liste_beobachtungen = cursor.execute(f"SELECT punktnummer_sp, punktnummer_zp, beobachtungenID, beobachtungsgruppeID, tachymeter_richtung, tachymeter_zenitwinkel, tachymeter_distanz FROM Beobachtungen").fetchall()
|
||||
liste_beobachtungen = cursor.execute(f"SELECT punktnummer_sp, punktnummer_zp, beobachtungenID, beobachtungsgruppeID, tachymeter_richtung, tachymeter_zenitwinkel, tachymeter_distanz FROM Beobachtungen WHERE tachymeter_richtung IS NOT NULL").fetchall()
|
||||
cursor.close()
|
||||
con.close()
|
||||
return liste_beobachtungen
|
||||
|
||||
def get_beobachtungen_gnssbasislinien(self):
|
||||
con = sqlite3.connect(self.pfad_datenbank)
|
||||
cursor = con.cursor()
|
||||
liste_beobachtungen = cursor.execute(f"SELECT beobachtungenID, punktnummer_sp, punktnummer_zp, gnss_bx, gnss_by, gnss_bz, gnss_s0, gnss_cxx, gnss_cxy, gnss_cxz, gnss_cyy, gnss_cyz, gnss_czz FROM Beobachtungen WHERE gnss_bx IS NOT NULL AND gnss_by IS NOT NULL AND gnss_bz IS NOT NULL AND gnss_s0 IS NOT NULL AND gnss_cxx IS NOT NULL AND gnss_cxy IS NOT NULL AND gnss_cxz IS NOT NULL AND gnss_cyy IS NOT NULL AND gnss_cyz IS NOT NULL AND gnss_czz IS NOT NULL").fetchall()
|
||||
cursor.close()
|
||||
con.close()
|
||||
return liste_beobachtungen
|
||||
|
||||
def get_datumskoordinate(self):
|
||||
con = sqlite3.connect(self.pfad_datenbank)
|
||||
cursor = con.cursor()
|
||||
liste_datumskoordinate_x = cursor.execute(
|
||||
f"SELECT punktnummer FROM Netzpunkte WHERE datumskoordinate_x = 1").fetchall()
|
||||
liste_datumskoordinate_y = cursor.execute(
|
||||
f"SELECT punktnummer FROM Netzpunkte WHERE datumskoordinate_y = 1").fetchall()
|
||||
liste_datumskoordinate_z = cursor.execute(
|
||||
f"SELECT punktnummer FROM Netzpunkte WHERE datumskoordinate_z = 1").fetchall()
|
||||
|
||||
cursor.close()
|
||||
con.close()
|
||||
|
||||
liste_datumskoordinaten = []
|
||||
if liste_datumskoordinate_x != []:
|
||||
for datumskoordinate in liste_datumskoordinate_x:
|
||||
datumskoordinate = str(datumskoordinate[0]).strip()
|
||||
liste_datumskoordinaten.append(f"X{datumskoordinate}")
|
||||
if liste_datumskoordinate_y != []:
|
||||
for datumskoordinate in liste_datumskoordinate_y:
|
||||
datumskoordinate = str(datumskoordinate[0]).strip()
|
||||
liste_datumskoordinaten.append(f"Y{datumskoordinate}")
|
||||
if liste_datumskoordinate_z != []:
|
||||
for datumskoordinate in liste_datumskoordinate_z:
|
||||
datumskoordinate = str(datumskoordinate[0]).strip()
|
||||
liste_datumskoordinaten.append(f"Z{datumskoordinate}")
|
||||
|
||||
return liste_datumskoordinaten
|
||||
|
||||
def get_stabw_AA_Netzpunkte(self):
|
||||
con = sqlite3.connect(self.pfad_datenbank)
|
||||
cursor = con.cursor()
|
||||
liste_stabwAA_x = cursor.execute(f"SELECT punktnummer, stabw_vorinfo_x FROM Netzpunkte WHERE stabw_vorinfo_x IS NOT NULL").fetchall()
|
||||
liste_stabwAA_y = cursor.execute(
|
||||
f"SELECT punktnummer, stabw_vorinfo_y FROM Netzpunkte WHERE stabw_vorinfo_y IS NOT NULL").fetchall()
|
||||
liste_stabwAA_z = cursor.execute(
|
||||
f"SELECT punktnummer, stabw_vorinfo_z FROM Netzpunkte WHERE stabw_vorinfo_z IS NOT NULL").fetchall()
|
||||
|
||||
cursor.close()
|
||||
con.close()
|
||||
|
||||
dict_stabwAA = {}
|
||||
for stabwAA_x in liste_stabwAA_x:
|
||||
punktnummer = str(stabwAA_x[0]).strip()
|
||||
wert = stabwAA_x[1]
|
||||
dict_stabwAA[f"StabwAA_X{punktnummer}"]= wert
|
||||
|
||||
for stabwAA_y in liste_stabwAA_y:
|
||||
punktnummer = str(stabwAA_y[0]).strip()
|
||||
wert = stabwAA_y[1]
|
||||
dict_stabwAA[f"StabwAA_Y{punktnummer}"]= wert
|
||||
|
||||
for stabwAA_z in liste_stabwAA_z:
|
||||
punktnummer = str(stabwAA_z[0]).strip()
|
||||
wert = stabwAA_z[1]
|
||||
dict_stabwAA[f"StabwAA_Z{punktnummer}"]= wert
|
||||
|
||||
return dict_stabwAA
|
||||
|
||||
def get_gnss_beobachtungen_punktnummern(self):
|
||||
con = sqlite3.connect(self.pfad_datenbank)
|
||||
cursor = con.cursor()
|
||||
liste_gnss_beobachtungen = cursor.execute(f"SELECT beobachtungenID, punktnummer_sp, punktnummer_zp FROM Beobachtungen WHERE gnss_bx IS NOT NULL AND gnss_by IS NOT NULL AND gnss_bz IS NOT NULL AND gnss_s0 IS NOT NULL AND gnss_cxx IS NOT NULL AND gnss_cxy IS NOT NULL AND gnss_cxz IS NOT NULL AND gnss_cyy IS NOT NULL AND gnss_cyz IS NOT NULL AND gnss_czz IS NOT NULL").fetchall()
|
||||
cursor.close()
|
||||
con.close()
|
||||
return liste_gnss_beobachtungen
|
||||
|
||||
|
||||
Reference in New Issue
Block a user