Studienarbeit - GIS-Management
Studienarbeit - GIS-Management
Studienarbeit - GIS-Management
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
PGA<br />
Prof. Dr.-Ing. Franz-Josef Behr<br />
FACHHOCHSCHULE<br />
HOCHSCHULE FÜR<br />
STUTTGART<br />
TECHNIK<br />
Vermessung und Geoinformatik<br />
<strong>Studienarbeit</strong><br />
Aufgabe<br />
Daten im BGRUND-Format bestehen aus Punktdaten sowie Grundrissdaten. Für das Einlesen und<br />
Auswerten der Punktdaten steht bereits ein C++-Programm zur Verfügung.<br />
Dieses Programm ist um folgende Teile zu erweitern bzw. zu ergänzen:<br />
1. Umstellung der Datenstruktur zur Speicherung der Punktdaten auf die Klasse vector der<br />
Standard Template Library (STL, wird in einer der nächsten Vorlesungen behandelt).<br />
2. Auswertung der Flurstücksinformation (siehe unten). Dazu sind die Angaben für die einzelnen<br />
Flurstücke auszuwerten und eine Liste der Punktkoordinaten zu einem Flurstück aufzubauen.<br />
Eine Einlesefunktion für Linieninformation ist zu entwerfen und zu implementieren. Dabei ist<br />
auf die Punktliste zuzugreifen.<br />
3. Ausgabe der Flurstücke im XML (xml) bzw. SVG-Format (.svg).<br />
Die Ausgabe in XML ist beispielsweise mittels Internet Explorer zu prüfen und für die Abgabe durch<br />
einen Screenshot zu dokumentieren. Nach Möglichkeit ist der Internet Explorer direkt aus Ihrem<br />
Programm heraus zu starten und die Datei zur Anzeige zu bringen.<br />
Die Ausgabe in SVG ist mit dem SVG-Viewer (http://www.adobe.com/svg/) zu prüfen und für die<br />
Abgabe durch eine Druckausgabe (Screenshot) zu dokumentieren.<br />
Hinweise:<br />
Für die Zerlegung der Flurstücksdatensätze kann folgende Funktion hilfreich sein:<br />
// -----------------------------------------------------------<br />
long next10 (ifstream & BGDaten, string & s10,long &iFrom, long & iTo)<br />
// -----------------------------------------------------------<br />
// NEXT10 positioniert die Zeiger FROM/TO um ein Datenfeld<br />
// weiter. Wird das Ende der Datenzeile (LASTCL) erreicht,<br />
// wird ein weiterer Satz eingelesen und die Zeiger auf das erste<br />
// Datenfeld gesetzt.<br />
// -----------------------------------------------------------<br />
{<br />
string s;<br />
long const lLastColumn = 50;<br />
NEXT_TOKEN:<br />
iFrom = iFrom + 10;<br />
iTo = iTo + 10;<br />
//cout
PGA<br />
Prof. Dr.-Ing. Franz-Josef Behr<br />
FACHHOCHSCHULE<br />
HOCHSCHULE FÜR<br />
STUTTGART<br />
TECHNIK<br />
Vermessung und Geoinformatik<br />
{<br />
cout
PGA<br />
Prof. Dr.-Ing. Franz-Josef Behr<br />
FACHHOCHSCHULE<br />
HOCHSCHULE FÜR<br />
STUTTGART<br />
TECHNIK<br />
Vermessung und Geoinformatik<br />
Flurstücke<br />
Flurstücke werden als flächenförmige Objekte geführt und<br />
über-geben. Für die Geometrie der Flurstücke gilt die<br />
formale Be schreibung:<br />
EF flurstücksnummer [R wert1] [H wert2] [D wert3]<br />
punktnummer punktnummer punktnummer [...]<br />
E<br />
rechts G hoch rechts G hoch rechts G hoch<br />
K K K<br />
K+ K+<br />
K- K-<br />
L r<br />
R r<br />
Hierin bedeuten:<br />
- EF = Steuerzeichen für Flurstücke,<br />
- Flurstücksnummer = Flurstücksnummer einschließlich 3stelliger<br />
Unternummer. Die Unternummer darf keine Zuflurstücksnummer sein.<br />
- R, H, D = wahlfreie Steuerzeichen, durch die die<br />
Standardpositionierung der Flurstücksnummer (in der Regel<br />
der Schwerpunkt des Flurstücks) bei der Eingabe im<br />
Rechtswert, Hochwert und im Drehwinkel ersetzt werden kann.<br />
Die Verschiebungsbeträge wert1 und wert2 sind für die<br />
Schriftmitte in mm bezogen auf den Maßstab 1:500 und auf den<br />
zuerst eingegebenen Grenzpunkt, der Betrag wert3 ist in Gon<br />
und bezogen auf die West-Ost-Richtung einzugeben. Als wert3<br />
ist eine ganze Zahl von + 100 bis - 100 zulässig. Drehpunkt<br />
ist die Schriftmitte. Die Drehung ist im Uhrzeigersinn<br />
positiv. Bei der Datenabgabe wird die Positionierung der<br />
Flurstücksnummer immer in nachfolgenden AF-Sätzen<br />
ausgegeben.
PGA<br />
Prof. Dr.-Ing. Franz-Josef Behr<br />
FACHHOCHSCHULE<br />
HOCHSCHULE FÜR<br />
STUTTGART<br />
TECHNIK<br />
Vermessung und Geoinformatik<br />
- Der Grenzzug des Flurstücks wird mit Punktnummern<br />
(punktnummer) oder Koordinaten (rechts hoch) im<br />
Uhrzeigersinn übergeben, wobei der Anfangspunkt am Ende<br />
wiederholt wird. Bei den Koordinaten muss es sich um Gauß-<br />
Krüger-Werte handeln.<br />
Bei kreisförmigen Grenzen wird nach dem Bogenanfang das<br />
Steuerzeichen K+ bzw. K-übergeben, wenn der Kreisbogen links<br />
bzw. rechts von der Sehne liegt, gefolgt von der Nummer des<br />
Kreismittelpunkts; anschließend folgt der Bogenendpunkt.<br />
Sofern der Kreisbogen durch den Radius festgelegt ist, wird<br />
anstelle des Kreismittelpunkts das Datenfeld in der Form Lr<br />
oder Rr (L oder R = Kreismittelpunkt liegt links oder rechts<br />
von der Sehne, r = Radius in cm) übergeben. Bei der Ausgabe<br />
kreisförmiger Grenzen wird immer die Form Lr oder Rr<br />
verwendet.<br />
- punktnummer = Punktnummer.<br />
Punkte des Liegenschaftskatasters: slllllfff<br />
s = Schlüssel des Punktnummerierungsbezirks<br />
(siehe Vordaten),<br />
lllll = maximal 5stellige Leitpunktnummer,<br />
fff = 3stellige Folgepunktnummer.<br />
Trigonometrische Punkte: 4stellige Nummer der<br />
TK25, 3stellige TP-Nummer, 2stellige<br />
Unternummer und die Kennung T<br />
- rechts hoch = Rechts- und Hochwert der nicht nummerierten<br />
Punkte auf Zentimeter getrennt durch das<br />
Koordinatentrennzeichen G oder K (siehe Nr. 1). Bei der<br />
Ausgabe von Flurstücken wird immer K verwendet. Die Qualität<br />
der Grenzpunkte ergibt sich aus der Tabelle der Punktdaten.<br />
Ein Flurstück kann ein oder mehrere andere (innenliegende) Flurstücke<br />
um- schließen: Hierzu wird mittels einer fingierten Grenze die<br />
logische Verbindung zu dem innenliegenden Grenzzug hergestellt; der<br />
innenliegende Grenzzug wird im Gegen-Uhrzeigersinn beschrieben.<br />
Beispiel 1:<br />
EF 22000<br />
000039039 000039038 340403689K544538148 000039037<br />
000039036 000039035 000039034 000039033 000039032<br />
000039031 000039030 000039029 019027035 019027048<br />
340409433K544529691 K- L 1417 340409890K<br />
544529336 K- L 1634 340410530K544529172<br />
K- L 1268 000133009 000133010 000133011<br />
000133012 000133013 000133002 000134013 000133001<br />
000133036 000133035 000133034 000133033 000133032<br />
000133031 000133030 000133029 019027016 019027015<br />
019027021 019027034 019027033 019027032 019027031<br />
019027030 000039045 000039044 000039043 000039042<br />
000039041 000039040 000039039 E
PGA<br />
Prof. Dr.-Ing. Franz-Josef Behr<br />
FACHHOCHSCHULE<br />
HOCHSCHULE FÜR<br />
STUTTGART<br />
TECHNIK<br />
Vermessung und Geoinformatik<br />
Beispiel 2 (einfacher):<br />
EF 40001<br />
000039022 000039005 000039006 000039009 000039010<br />
000039024 000039007 000039022 E