This is a WMS request? I’d think MapServer would populate width, height and extent for you. What are the values for those parameters if you don’t set them explicitly?
Steve From: [email protected] [mailto:[email protected]] On Behalf Of Vladimir Sent: Tuesday, June 17, 2014 6:57 AM To: mapserver-users Subject: Re: [mapserver-users] Why $map->scaledenom returns -1 ? Hello Steve. Thank you very much for the thought. I use OpenLayers 3 on client side whose query string contains: &WIDTH=2025&HEIGHT=1125&BBOX=5252151,2C3515519,11856310613,7184496 and futher scaledenom is computed: $extentArray=explode(',',$_GET['BBOX']); $minX=$extentArray[0]; $minY=$extentArray[1]; $maxX=$extentArray[2]; $maxY=$extentArray[3]; $width=(int)$_GET['WIDTH']; $height=(int)$_GET['HEIGHT']; $map->setExtent($minX,$minY,$maxX,$maxY); $map->setSize($width,$height); $map->preparequery(); $scale=$map->scaledenom; It works for me, but I am not sure that is standard method. Can this be used? Best regards Vladimir 16 2014, 15:43 UTC от "Lime, Steve D (MNIT)" <[email protected]<mailto:[email protected]>>: Scale can only be computed if there is a map extent and map size set. Are you doing so? Steve From: [email protected]<mailto:[email protected]> [mailto:[email protected]] On Behalf Of Vladimir Sent: Monday, June 16, 2014 1:12 AM To: mapserver-users Subject: [mapserver-users] Why $map->scaledenom returns -1 ? Hello list I stuck on the scaledenom definition in my PHPMapScript v. 6.4.1. The current scaledenom required to embed in SQL-statement, but $map->scaledenom returns -1. Tons of googling got nothing. Please help! phpscript.php --------------------------------------------------------------------------------------------- $map = ms_newMapobj("/srv/www/htdocs/tez/design/mapfile.map"); $request = ms_newOwsrequestObj(); if(!empty($_GET)){ foreach ($_GET as $key => $value) { $request->setparameter($key, $value); } } $map->preparequery(); $map->scaledenom;//returns -1 $rayonLayer = $map->getLayerByName("rayon"); $rayonLayer->set("data","geom from (select id, name, geom from location where ST_Intersects(geom, !BOX!)) as subquery using unique id using srid=3857"); ms_ioinstallstdouttobuffer(); $map->owsDispatch($request); $contenttype = ms_iostripstdoutbuffercontenttype(); header('Content-type:'.$contenttype); ms_iogetStdoutBufferBytes(); ms_ioresethandlers(); mapfile.map--------------------------------------------------------------------------------------------- MAP NAME "Map" OUTPUTFORMAT NAME 'AGG' DRIVER AGG/PNG IMAGEMODE RGB END #OUTPUTFORMAT STATUS ON FONTSET "fonts/fonts.list" CONFIG "PROJ_LIB" "/usr/lib/proj/" WEB METADATA wms_title "Map" wms_abstract "Map" wms_onlineresource "http://localhost/phpscript.php" wms_srs "EPSG:3857" wms_enable_request "*" wms_encoding "utf-8" END # end METADATA END # end WEB PROJECTION "init=epsg:3857" END # end PROJECTION LAYER NAME "rayon" STATUS ON CONNECTIONTYPE postgis CONNECTION "user=ms_viewer password=1 dbname=ms_db host=localhost" TYPE POLYGON LABELITEM "name" CLASS NAME "rayons" STYLE OUTLINECOLOR 255 0 0 OUTLINEWIDTH 5 END # end STYLE END # end CLASS PROJECTION "init=epsg:3857" END # end PROJECTION METADATA wms_title "rayon" wms_abstract "rayon" wms_srs "EPSG:3857" wms_include_items "all" END # end METADATA END # end LAYER END # end MAP --------------------------------------------------------------------------------------------- Best regards -- Vladimir ________________________________ -- Владимир
_______________________________________________ mapserver-users mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/mapserver-users
