Fehler bei Flurstücksdaten\n
".$sqlf."
Fehler! Kein Treffer fuer gml_id=".$gmlid."
"; } // Balken echo "ALKIS Flurstück (Gebäude) ".$gmkgnr."-".$flurnummer."-".$flstnummer."
\n"; echo "\n";
echo "\n\t
| \n"; // Links zu anderen Nachweisen echo "\n\t | \n "; if ($idanzeige) {linkgml($gkz, $gmlid, "Flurstück"); } echo "\n\t
Flurstücksfläche: ".number_format($flstflaeche,0,",",".") . " m²
"; echo "\n\n.. auf oder an dem Flurstück. Ermittelt durch Verschneidung der Geometrie.
"; // G e b a e u d e $sqlg ="SELECT g.gml_id, g.name, g.description, g.bauweise, g.gebaeudefunktion, g.anzahlderoberirdischengeschosse AS aog, "; $sqlg.="h.bauweise_beschreibung, u.bezeichner, v.beziehungsart, v.beziehung_zu, s.lage, s.bezeichnung, l.hausnummer, "; // Gebaeudeflaeche komplett auch ausserhalb des FS $sqlg.="round(area(g.wkb_geometry)::numeric,2) AS gebflae, "; // wie viel vom GEB liegt im FS? $sqlg.="round(st_area(ST_Intersection(g.wkb_geometry,f.wkb_geometry))::numeric,2) AS schnittflae, "; // liegt das GEB komplett im FS? $sqlg.="st_within(g.wkb_geometry,f.wkb_geometry) as drin "; // FS und GEB geometrisch verschneiden $sqlg.="FROM ax_flurstueck f, ax_gebaeude g "; // Entschluesseln $sqlg.="LEFT JOIN ax_gebaeude_bauweise h ON g.bauweise = h.bauweise_id "; $sqlg.="LEFT JOIN ax_gebaeude_funktion u ON g.gebaeudefunktion = u.wert "; // Beziehungen verfolgen (holt die Hausnummer Hauptgeb.) $sqlg.="LEFT JOIN alkis_beziehungen v ON g.gml_id=v.beziehung_von "; $sqlg.="LEFT JOIN ax_lagebezeichnungmithausnummer l ON v.beziehung_zu=l.gml_id "; // Straßen-Name $sqlg.="LEFT JOIN ax_lagebezeichnungkatalogeintrag s ON l.kreis=s.kreis AND l.gemeinde=s.gemeinde "; if ($dbvers=="05") { $sqlg.="AND to_char(l.lage, 'FM00000') = lpad(s.lage,5,'0') "; } else { // ab PostNAS 06. $sqlg.="AND l.lage=s.lage "; } // Alternativ zur Hauptgebaeude-Hausnummer auch die Nebengebaeude-Pseudo-Nummern suchen? // $sqlg.="LEFT JOIN ax_lagebezeichnungmitpseudonummer p ON ... "; // oder in Loop: Wenn HsNr leer ist, eine kurze Abfrage auf Nebengebäude-Nr. // ID des aktuellen FS $sqlg.="WHERE f.gml_id= $1 "; // ALT: "within" liefert nur Gebaeude, die komplett im Flurstueck liegen //$sqlg.="AND within(g.wkb_geometry,f.wkb_geometry) = true "; // "intersects" liefert ueberlappende Flaechen $sqlg.="AND st_intersects(g.wkb_geometry,f.wkb_geometry) = true "; // RLP: keine Relationen zu Nebengebaeuden: // auf Qualifizierung verzichten, sonst werden Nebengebäude nicht angezeigt //$sqlg.="AND (v.beziehungsart='zeigtAuf' OR v.beziehungsart='hat') "; $sqlg.="ORDER BY schnittflae DESC;"; $v = array($gmlid); $resg = pg_prepare("", $sqlg); $resg = pg_execute("", $v); if (!$resg) { echo "\nKeine Gebäude ermittelt.
\nSQL=
".$sqlg."
\n"; } $gebnr=0; echo "\nLfd. Nr. | "; echo "\n\tNr/Name | "; echo "\n\tFläche | "; echo "\n\t"; echo "\n\t | Gesch. | "; echo "\n\tFunktion | "; echo "\n\tBauweise | "; echo "\n\tLage | "; echo "\n|||
"; if ($showkey) { echo "(".$skey.") "; } echo htmlentities($rowg["bezeichnung"], ENT_QUOTES, "UTF-8")." "; // Str.-Name echo $rowg["hausnummer"]." ".$gnam; if ($idanzeige) { linkgml($gkz, $rowg["gml_id"], "Gebäude"); } echo " | "; } else { echo "\n\t"; echo "(Nebengebäude)"; // +++ nur vorlaeufiger Platzhalter! Hier kommt lfd-Nr hin. // +++ SQL-Abfrage auf ax_LagebezeichnungMitPseudonummer echo " | "; } if ($rowg["drin"] == "t") { // 3 komplett enthalten echo "\n\t".$rowg["schnittflae"]." m² | "; echo "\n\t"; } else { if ($rowg["schnittflae"] == "0.00") { // angrenzend echo "\n\t | "; echo "\n\t | angrenzend | "; } else { // Teile enthalten echo "\n\t".$rowg["schnittflae"]." m² | "; echo "\n\t(von ".$rowg["gebflae"]." m²) | "; } } echo "\n\t".$rowg["aog"]." | "; echo "\n\t"; if ($showkey) { echo "".$rowg["gebaeudefunktion"]." "; } echo $rowg["bezeichner"]." | "; echo "\n\t"; if ($showkey) { echo "".$rowg["bauweise"]." "; } echo $rowg["bauweise_beschreibung"]." | "; echo "\n\t "; echo "\n
Keine Gebäude auf diesem Flurstück.
Flurstücksfläche abzüglich Gebäudefläche: ".$unbebaut."