Changeset 133 for trunk


Ignore:
Timestamp:
12/01/11 12:53:11 (8 years ago)
Author:
frank.jaeger
Message:

Buchauskunft: Im Flurstücksnachweis die geometrisch berechneten Nutzungsarten-Abschnitte auf die amtliche Buchfläche des FS angleichen.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/var/www/info/alkis/alkisfsnw.php

    r132 r133  
    99        17.11.2011  Parameter der Functions geÀndert 
    1010        30.11.2011  import_request_variables, $dbvers PostNAS 0.5 entfernt 
     11        01.12.2011  Summe der AbschnittsflÀchen (NUA) an amtl. BuchflÀche des FS angleichen  
    1112         
    1213        ToDo: 
     
    4344$con = pg_connect("host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass); 
    4445if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n"; 
    45 //if ($debug > 1) {echo "<p class='dbg'>DB=".$dbname.", user=".$dbuser."</p>";} 
    4646 
    4747// F L U R S T U E C K 
    48 $sql ="SELECT f.name, f.flurnummer, f.zaehler, f.nenner, f.regierungsbezirk, f.kreis, f.gemeinde, f.amtlicheflaeche, f.zeitpunktderentstehung, "; 
     48$sql ="SELECT f.name, f.flurnummer, f.zaehler, f.nenner, f.regierungsbezirk, f.kreis, f.gemeinde, f.amtlicheflaeche, st_area(f.wkb_geometry) AS fsgeomflae, f.zeitpunktderentstehung, "; 
    4949$sql.="g.gemarkungsnummer, g.bezeichnung "; 
    5050$sql.="FROM ax_flurstueck f "; 
     
    6969        $nenner=$row["nenner"]; 
    7070        if ($nenner > 0) {$flstnummer.="/".$nenner;} // BruchNr 
    71         $flae=number_format($row["amtlicheflaeche"],0,",",".") . " m&#178;"; 
     71        $fsbuchflae=$row["amtlicheflaeche"]; // amtliche Fl. aus DB-Feld 
     72        $fsgeomflae=$row["fsgeomflae"]; // aus Geometrie ermittelte FlÀche 
     73        $fsbuchflaed=number_format($fsbuchflae,0,",",".") . " m&#178;"; // Display-Format dazu 
     74        $fsgeomflaed=number_format($fsgeomflae,0,",",".") . " m&#178;"; 
    7275        $entsteh=$row["zeitpunktderentstehung"]; 
    7376        $name=$row["name"]; // Fortfuehrungsnummer(n) 
     
    263266        if (!$gewann == "") { 
    264267                echo "\n<tr>"; 
    265                         echo "\n\t<td class='ll'><img src='ico/Lage_Gewanne.ico' width='16' height='16' alt=''> Gewanne:</td>"; 
     268                        echo "\n\t<td class='ll' title='Lagebezeichnung'><img src='ico/Lage_Gewanne.ico' width='16' height='16' alt=''> Gewanne:</td>"; 
    266269                        echo "\n\t<td></td>"; 
    267270                        echo "\n\t<td class='lr'>".$gewann."</td>"; 
     
    298301$sql ="SELECT m.title, m.fldclass, m.fldinfo, n.gml_id, c.class, n.info, n.zustand, n.name, n.bezeichnung, m.gruppe, "; 
    299302// Gemeinsame FlÀche von NUA und FS 
    300 $sql.="round(st_area(st_intersection(n.wkb_geometry,f.wkb_geometry))::numeric,1) AS schnittflae, "; 
     303//$sql.="round(st_area(st_intersection(n.wkb_geometry,f.wkb_geometry))::numeric,1) AS schnittflae, "; 
     304$sql.="st_area(st_intersection(n.wkb_geometry,f.wkb_geometry)) AS schnittflae, "; 
    301305$sql.="c.label, c.blabla "; 
    302 //      $sql.="round(area(n.wkb_geometry)::numeric,2) AS nflae "; // Flaeche NUA gesamt 
    303306$sql.="FROM ax_flurstueck f, nutzung n "; 
    304307$sql.="JOIN nutzung_meta m ON m.nutz_id=n.nutz_id "; 
     
    316319        if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";} 
    317320} 
     321$the_Xfactor=$fsbuchflae / $fsgeomflae; // geom. ermittelte FlÀche auf amtl. BuchflÀche angleichen 
    318322$j=0; 
    319323while($row = pg_fetch_array($res)) { 
    320324        $grupp = $row["gruppe"];  // Individuelles Icon? 
    321325        $title = htmlentities($row["title"], ENT_QUOTES, "UTF-8"); // NUA-Titel 
    322         $fldclass=$row["fldclass"]; // Feldname erstes  Zusatzfeld 
    323         $fldinfo= $row["fldinfo"];  // Feldname zweites Zusatzfeld 
    324         $gml=$row["gml_id"]; // Objekt-Kennung 
    325         $class=$row["class"];  // erstes Zusatzfeld verschlÃŒsselt -> nutzung_class 
    326         $info=$row["info"]; // zweites Zusatzfeld verschlÃŒsselt (noch keine Info zum entschl.) 
     326        $fldclass=$row["fldclass"]; // Feldname 1.  Zusatzfeld 
     327        $fldinfo= $row["fldinfo"];  // Feldname 2. Zusatzfeld 
     328        $gml=$row["gml_id"]; 
     329        $class=$row["class"];  // 1. Zusatzfeld verschlÃŒsselt -> nutzung_class 
     330        $info=$row["info"]; // 2. Zus. verschlÃŒsselt (noch keine Info zum entschl.) 
    327331        $schnittflae=$row["schnittflae"]; 
    328332        $label=$row["label"]; // Nutzungsart entschlÃŒsselt 
     
    330334        $nam=$row["name"]; // Eigenname 
    331335        $bez=$row["bezeichnung"]; // weiterer Name (unverschl.) 
    332         $blabla=htmlentities($row["blabla"], ENT_QUOTES, "UTF-8"); // Beschr. aus GeoInfoDok als PopUp-Label, enthÀlt auch "" 
    333 //      $nflae=$row["nflae"]; 
    334  
    335         // Beispiele (verkÃŒrzte Anzeige): 
    336         // $group:    Verkehr           Vegatation       -> Icon 
    337         // $title:    Weg               Landwirtschaft   -> PopUp ÃŒber Icon 
    338         // $fldclass: Funktion          Funktion 
    339         // $class:    5250              ___ 
    340         // $label:    Rad- und Fußweg   GrÃŒnland         -> angezeigter Text 
     336        $blabla=htmlentities($row["blabla"], ENT_QUOTES, "UTF-8"); 
    341337 
    342338        echo "\n<tr>\n\t"; 
    343339                if ($j == 0) { 
    344                         echo "<td class='ll'><img src='ico/Abschnitt.ico' width='16' height='16' alt=''> Nutzung:</td>"; 
     340                        echo "<td class='ll' title='Abschnitt der tats&auml;chlichen Nutzung'><img src='ico/Abschnitt.ico' width='16' height='16' alt=''> Nutzung:</td>"; 
    345341                } else { 
    346342                        echo "<td>&nbsp;</td>"; 
    347343                } 
    348                 echo "\n\t<td class='fla'>".$schnittflae." m&#178;</td>"; 
     344                $absflaebuch = $schnittflae * $the_Xfactor; // angleichen geometrisch an amtliche FlÀche 
     345                $schnittflae = number_format($schnittflae,1,",",".") . " m&#178;"; // geometrisch 
     346                $absflaebuch = number_format($absflaebuch,0,",",".") . " m&#178;"; // Abschnitt an BuchflÀche angeglichen 
     347                echo "\n\t<td class='fla' title='geometrisch berechnet: ".$schnittflae."'>".$absflaebuch."</td>"; 
     348 
    349349                echo "\n\t<td class='lr'>"; 
    350350                        If ( ($fldclass == "Funktion" OR $fldclass == "Vegetationsmerkmal") AND $label != "") { // Kurze Anzeige 
     
    380380                                echo "<span title='Zustand'>";                           
    381381                                switch ($zus) { 
    382                                         case 2100: 
    383                                                 echo "Außer Betrieb, stillgelegt, verlassen";  break; 
    384                                         case 4000: 
    385                                                 echo "Im Bau";  break; 
    386                                         case 8000: 
    387                                                 echo "Erweiterung, Neuansiedlung";      break; 
    388                                         default: 
    389                                                 echo "Zustand: ".$zus;  break; 
     382                                        case 2100: echo "Außer Betrieb, stillgelegt, verlassen"; break; 
     383                                        case 4000: echo "Im Bau"; break; 
     384                                        case 8000: echo "Erweiterung, Neuansiedlung"; break; 
     385                                        default: echo "Zustand: ".$zus; break; 
    390386                                } 
    391387                                echo "</span>"; 
     
    395391                echo "</td>"; 
    396392                echo "\n\t<td>"; 
    397                         // Eigene Nachweis-Seite fÃŒr Nutzungsart-FlÀche sinnvoll? dann hier verlinken  
    398                         //echo "\n\t\t\t<a href='alkisnua.php?gkz=".$gkz."amp;gmlid=".$gml."'>Nutzung "; 
    399                         //if ($idanzeige) {linkgml($gkz, $gml, "Nutzung");} // Nein, ist mit nix verknuepft 
    400393                        switch ($grupp) { // Icon nach 4 Objektartengruppen 
    401                                 case "Siedlung": 
    402                                         $ico = "Abschnitt.ico"; break; 
    403                                 case "Verkehr": 
    404                                         $ico = "Strassen_Klassifikation.ico";   break; 
    405                                 case "Vegetation": 
    406                                         $ico = "Wald.ico";      break; 
    407                                 case "GewÀsser": 
    408                                         $ico = "Wasser.ico";    break; 
    409                                 default: 
    410                                         $ico = "Abschnitt.ico"; break; 
     394                                case "Siedlung":                $ico = "Abschnitt.ico"; break; 
     395                                case "Verkehr":         $ico = "Strassen_Klassifikation.ico";   break; 
     396                                case "Vegetation":      $ico = "Wald.ico";      break; 
     397                                case "GewÀsser":               $ico = "Wasser.ico";    break; 
     398                                default:                                        $ico = "Abschnitt.ico"; break; 
    411399                        } 
    412400                        // Icon ist auch im Druck sichtbar, class='noprint' ?            
     
    418406// ENDE  N U T Z U N G 
    419407 
    420 // Flaeche und Link auf GebÀude-Auswertung 
    421 echo "\n<tr>"; 
    422         echo "\n\t<td class='ll'>Fl&auml;che:</td>"; 
    423         echo "\n\t<td class='fla'><span class='flae'>".$flae."</span></td>"; 
     408echo "\n<tr>"; // Summenzeile 
     409        echo "\n\t<td class='ll' title='amtliche Fl&auml;che (Buchfl&auml;che))'>Fl&auml;che:</td>"; 
     410        echo "\n\t<td class='fla'>"; 
     411        echo "<span title='geometrisch berechnete Fl&auml;che = ".$fsgeomflaed."' class='flae'>".$fsbuchflaed."</span></td>"; 
     412 
     413        // Flaeche und Link auf GebÀude-Auswertung 
    424414        echo "\n\t<td>&nbsp;</td>\n\t<td>"; 
    425415                echo "\n\t\t<p class='nwlink noprint'>"; // Gebaeude-Verschneidung 
     
    643633                                        echo "\n\t<tr>"; 
    644634                                                echo "\n\t\t<td title='Grundbuchbezirk'>"; 
    645                                                 if ($showkey) { 
    646                                                         echo "<span class='key'>".$rowan["bezirk"]."</span><br>"; 
    647                                                 } 
     635                                                if ($showkey) {echo "<span class='key'>".$rowan["bezirk"]."</span><br>";} 
    648636                                                echo $beznam."</td>"; 
    649637 
     
    653641 
    654642                                                echo "\n\t\t<td title='Buchungsart'>"; 
    655                                                         if ($showkey) { 
    656                                                                 echo "<span class='key'>".$rowan["buchungsart"]."</span><br>"; 
    657                                                         } 
     643                                                        if ($showkey) {echo "<span class='key'>".$rowan["buchungsart"]."</span><br>";} 
    658644                                                        echo $rowan["bart"]; 
    659645                                                echo "</td>"; 
     
    687673                        echo "\n<p>Blattart: ".$blattartan." (".$blattkeyan.").<br>\n";  
    688674                } 
    689                 // +++ Weitere Felder ausgeben? BeschreibungDesUmfangsDerBuchung 
     675                // +++ BeschreibungDesUmfangsDerBuchung ? 
    690676                if ($rowan["nrpl"] != "") { 
    691677                        echo "<p class='nrap' title='Nummer im Aufteilungsplan'>Nummer <span class='wichtig'>".$rowan["nrpl"]."</span> im Aufteilungsplan.</p>"; 
     
    696682                if ($eig == "j") { 
    697683                        $n = eigentuemer($con, $rowan["g_gml"], false, ""); // ohne Adresse 
    698                         // Anzahl $n kontrollieren? Warnen? 
    699684                } 
    700685                $an++; 
    701686        } 
    702         // Zaehler $an==0 ist hier der Normalfall 
    703687        $bs++; 
    704688} 
Note: See TracChangeset for help on using the changeset viewer.