<?php // // Copyright (C) 2004-2011 by Autodesk, Inc. // // This library is free software; you can redistribute it and/or // modify it under the terms of version 2.1 of the GNU Lesser // General Public License as published by the Free Software Foundation. // // This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU // Lesser General Public License for more details. // // You should have received a copy of the GNU Lesser General Public // License along with this library; if not, write to the Free Software // Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA // include("common.php"); include("constants.php"); require_once("layerdefinitionfactory.php"); InitializeWebTier(); //Area Rules $areaRule = LayerDefinitionFactory::CreateAreaRule("TestArea1", 'SQFT >= 0 AND SQFT < 500', 'FF808080'); $areaRule .= LayerDefinitionFactory::CreateAreaRule("TestArea2", 'SQFT >= 500 AND SQFT < 1500', 'FF800080'); $areaRule .= LayerDefinitionFactory::CreateAreaRule("TestArea3", 'SQFT >= 1500 AND SQFT < 6000', 'FF808000'); $areaTypeStyle = LayerDefinitionFactory::CreateAreaTypeStyle($areaRule); $scaleRange = LayerDefinitionFactory::CreateScaleRange('0', '1000000000000', $areaTypeStyle); /* //Line Rules $lineRule = LayerDefinitionFactory::CreateLineRule("TestLine1", "", 'FF808000'); $lineTypeStyle = LayerDefinitionFactory::CreateLineTypeStyle($lineRule); $scaleRange = LayerDefinitionFactory::CreateScaleRange('0', '1000000000000', $lineTypeStyle); */ /* //Point Rules $markSymbol = LayerDefinitionFactory::CreateMarkSymbol("", "", 5, 5, "FF800000"); $textSymbol = LayerDefinitionFactory::CreateTextSymbol("", "10", "FF808000"); $pointRule = LayerDefinitionFactory::CreatePointRule("TestPoint", "", $textSymbol, $markSymbol); $pointStyle = LayerDefinitionFactory::CreatePointTypeStyle($pointRule); $scaleRange = LayerDefinitionFactory::CreateScaleRange('0', '1000000000000', $pointStyle); */ //Create layer definition $layerDef = LayerDefinitionFactory::CreateLayerDefinition('Library://NewParcels.LayerDefinition','Parcels','SHPGEOM', $scaleRange); //Uncomment to check out the generated xml //file_put_contents('test.xml',$layerDef); $byteSource = new MgByteSource($layerDef, strlen($layerDef)); $byteReader = $byteSource->GetReader(); $cred = new MgUserInformation(); $cred->SetMgUsernamePassword('Anonymous', ''); $cred->SetClientIp(GetClientIp()); $cred->SetClientAgent(GetClientAgent()); $siteConn = new MgSiteConnection(); $siteConn->Open($cred); $svc = $siteConn->CreateService(MgServiceType::ResourceService); $resId = new MgResourceIdentifier('Library://Test/NewLayer.LayerDefinition'); try { $svc->SetResource($resId,$byteReader,null); } catch (MgException $e) { $errorMsg = EscapeForHtml($e->GetExceptionMessage()); echo $errorMsg; } ?>