| | 1 | {{{ |
| | 2 | #!php |
| | 3 | <?php |
| | 4 | |
| | 5 | // define variables |
| | 6 | define( "MAPFILE", "C:/ms4w/apps/phpmapscriptng-swig/sample.map" ); |
| | 7 | |
| | 8 | // required SWIG include (contains constants for PHP7) |
| | 9 | include("C:/ms4w/apps/phpmapscriptng-swig/include/mapscript.php"); |
| | 10 | |
| | 11 | // open map |
| | 12 | $oMap = new mapObj(MAPFILE); |
| | 13 | |
| | 14 | //force all errors to display |
| | 15 | // comment out the next 2 lines, useful on servers not displaying errors |
| | 16 | ini_set('display_errors','On'); |
| | 17 | error_reporting(E_ALL); |
| | 18 | |
| | 19 | // set image size |
| | 20 | $oMap->setsize(400, 300); |
| | 21 | |
| | 22 | // set image format |
| | 23 | $oMap->selectoutputformat("png"); |
| | 24 | |
| | 25 | // create new WMS layer |
| | 26 | $oWMSLayer = new layerObj($oMap); |
| | 27 | $oWMSLayer->__set("name", "cities"); |
| | 28 | $oWMSLayer->__set("type", MS_LAYER_RASTER); |
| | 29 | $oWMSLayer->__set("status", MS_ON); |
| | 30 | $oWMSLayer->setConnectionType(MS_WMS, NULL); |
| | 31 | $oWMSLayer->__set("connection", "https://demo.gatewaygeomatics.com/cgi-bin/wms_gateway?"); |
| | 32 | $oWMSLayer->setMetaData("wms_name", "popplace"); |
| | 33 | $oWMSLayer->setMetaData("wms_srs", "EPSG:3978"); |
| | 34 | $oWMSLayer->setMetaData("wms_server_version", "1.1.1"); |
| | 35 | $oWMSLayer->setMetaData("wms_format", "image/png"); |
| | 36 | $oWMSLayer->SetProjection("init=EPSG:3978"); |
| | 37 | |
| | 38 | // create new polygon layer |
| | 39 | $oPolyLayer = new layerObj($oMap); |
| | 40 | $oPolyLayer->__set("name", "prov_bound"); |
| | 41 | $oPolyLayer->__set("type", MS_LAYER_POLYGON); |
| | 42 | $oPolyLayer->__set("status", MS_ON); |
| | 43 | $oPolyLayer->__set("data", "province"); |
| | 44 | // create new class for poly layer |
| | 45 | $oClass = new classObj($oPolyLayer); |
| | 46 | $oClass->__set("name", "Province"); |
| | 47 | // create new style |
| | 48 | $oStyle = new styleObj(); |
| | 49 | // create new color |
| | 50 | $oColor = new colorObj(120,120,120); |
| | 51 | $oStyle->__set("color", $oColor); |
| | 52 | $oClass->insertStyle($oStyle); |
| | 53 | $oPolyLayer->SetProjection("init=EPSG:3978"); |
| | 54 | // set opacity (actually creates a new COMPOSITE object) |
| | 55 | $oPolyLayer->setOpacity(40); |
| | 56 | |
| | 57 | // draw map |
| | 58 | $oImage = $oMap->draw(); |
| | 59 | |
| | 60 | // save image file |
| | 61 | $file = $oImage->save("C:/ms4w/apps/phpmapscriptng-swig/ttt.png",$oMap); |
| | 62 | |
| | 63 | // save mapfile to new file |
| | 64 | $oMap->save("C:/ms4w/apps/phpmapscriptng-swig/output.map"); |
| | 65 | |
| | 66 | // set header |
| | 67 | header("Content-type: image/gif"); |
| | 68 | |
| | 69 | // read image to output buffer |
| | 70 | readfile("C:/ms4w/apps/phpmapscriptng-swig/ttt.png"); |
| | 71 | |
| | 72 | ?> |
| | 73 | }}} |