[Mapbender-commits] r9081 - trunk/mapbender/http/php

svn_mapbender at osgeo.org svn_mapbender at osgeo.org
Mon Sep 22 03:27:59 PDT 2014


Author: armin11
Date: 2014-09-22 03:27:59 -0700 (Mon, 22 Sep 2014)
New Revision: 9081

Modified:
   trunk/mapbender/http/php/mod_inspireDownloadFeed.php
Log:
Bugfix for handling multigeometries from mb_metadata table - multi exterior ring objects

Modified: trunk/mapbender/http/php/mod_inspireDownloadFeed.php
===================================================================
--- trunk/mapbender/http/php/mod_inspireDownloadFeed.php	2014-09-22 10:26:56 UTC (rev 9080)
+++ trunk/mapbender/http/php/mod_inspireDownloadFeed.php	2014-09-22 10:27:59 UTC (rev 9081)
@@ -1262,7 +1262,7 @@
 							//echo "maxyWms: ". $maxyWms .",";
 							$bboxWfs[$mapbenderMetadata[$i]->featuretype_name][$countBbox] = $minxWfs.",".$minyWfs.",".$maxxWfs.",".$maxyWfs;
 							//transform bbox back to geographic coordinates and filter them if a spatial_extent as polygon is given (give only those which intersects)!!
-							$lonLatBbox = transformBbox($minxWfs.",".$minyWfs.",".$maxxWfs.",".$maxyWfs,intval($epsgId),4326, $mapbenderMetadata[$i]->metadata_uuid, $mapbenderMetadata[$i]->polygonFilter);
+							$lonLatBbox = transformBbox($minxWfs.",".$minyWfs.",".$maxxWfs.",".$maxyWfs,intval($epsgId),4326, $mapbenderMetadata[$i]->metadata_uuid, $polygonalFilter);
 							//only add entry, if not false
 							if ($lonLatBbox != false) {
 								$lonLatBbox = explode(',',$lonLatBbox);
@@ -1683,7 +1683,7 @@
 	if ($metadataUuid != false && $polygonFilter != false) {
 		$sql = "select asewkt(transform(GeometryFromText ( 'LINESTRING ( ".$arrayBbox[0]." ".$arrayBbox[1].",".$arrayBbox[2]." ".$arrayBbox[3]." )', $fromCRS ),".intval($toCRS).")) as bbox, 
 CASE 
-WHEN st_intersects((select bounding_geom from mb_metadata where uuid = '".$metadataUuid."'), transform(GeometryFromText ( 'LINESTRING ( ".$arrayBbox[0]." ".$arrayBbox[1].",".$arrayBbox[2]." ".$arrayBbox[3]." )', $fromCRS ),".intval($toCRS)." )) = true THEN true
+WHEN st_intersects((select geography(bounding_geom) from mb_metadata where uuid = '".$metadataUuid."'),transform(GeometryFromText ( 'POLYGON (( ".$arrayBbox[0]." ".$arrayBbox[1].",".$arrayBbox[2]." ".$arrayBbox[1].",".$arrayBbox[2]." ".$arrayBbox[3].",".$arrayBbox[0]." ".$arrayBbox[3].",".$arrayBbox[0]." ".$arrayBbox[1]."))', $fromCRS ),".intval($toCRS)." )) = true THEN true
 ELSE false
 END as inside;";
 		$res = db_query($sql,$v,$t);



More information about the Mapbender_commits mailing list