-<?php
-/**
- * Convert a ArcGis web recordset polygon to a geojson polygon feature.
- *
- * Validate the generated JSON with http://geojsonlint.com/
- *
- * Dependency installation:
- * $ composer require php-coord/php-coord
- *
- * @author Christan Weiske <cweiske@cweiske.de>
- */
-require_once __DIR__ . '/vendor/autoload.php';
-
-function err($msg)
-{
- echo $msg . "\n";
- exit(1);
-}
-
-if ($argc < 2) {
- err("convert.php <esriGeoMetryFile.json>");
-}
-
-$file = $argv[1];
-$data = json_decode(file_get_contents($file));
-
-if (!isset($data->RecordSet->geometryType)
- || $data->RecordSet->geometryType != 'esriGeometryPolygon'
-) {
- err('No esriGeometryPolygon');
-}
-
-$sRefs = [
- 25833 => ['N', 33]
-];
-$sRef = $data->RecordSet->spatialReference->wkid;
-if (!isset($sRefs[$sRef])) {
- err('Unknown spatial reference EPSG ' . $sRef);
-}
-list($latZone, $lngZone) = $sRefs[$sRef];
-
-$geoJson = [
- 'type' => 'Feature',
- 'title' => basename($file, '.json'),
- 'properties' => null,
- 'geometry' => [
- 'type' => 'Polygon',
- 'coordinates' => [],
- ],
-];
-foreach ($data->RecordSet->features as $feature) {
- foreach ($feature->geometry->rings as $ring) {
- $coords = [];
- foreach ($ring as $point) {
- $utm = new \PHPCoord\UTMRef(
- $point[0], $point[1], 0, $latZone, $lngZone
- );
- $ll = $utm->toLatLng();
- $coords[] = [$ll->getLng(), $ll->getLat()];
- }
-
- $geoJson['geometry']['coordinates'][] = $coords;
- }
-}
-
-echo json_encode($geoJson, JSON_PRETTY_PRINT) . "\n";
-
-/*
-$UTMRef = new \PHPCoord\UTMRef(350531.8, 5689109.2, 0, 'N', 33);
-$LatLng = $UTMRef->toLatLng();
-
-echo (string) $UTMRef . "\n";
-echo (string) $LatLng . "\n";
-*/
-?>
+<?php\r
+/**\r
+ * Convert a ArcGis web recordset polygon to a geojson polygon feature.\r
+ *\r
+ * Validate the generated JSON with http://geojsonlint.com/\r
+ *\r
+ * Dependency installation:\r
+ * $ composer require php-coord/php-coord\r
+ *\r
+ * @author Christan Weiske <cweiske@cweiske.de>\r
+ */\r
+require_once __DIR__ . '/vendor/autoload.php';\r
+\r
+function err($msg)\r
+{\r
+ echo $msg . "\n";\r
+ exit(1);\r
+}\r
+\r
+if ($argc < 2) {\r
+ err("convert.php <esriGeoMetryFile.json>");\r
+}\r
+\r
+$file = $argv[1];\r
+$data = json_decode(file_get_contents($file));\r
+\r
+if (!isset($data->RecordSet->geometryType)\r
+ || $data->RecordSet->geometryType != 'esriGeometryPolygon'\r
+) {\r
+ err('No esriGeometryPolygon');\r
+}\r
+\r
+$sRefs = [\r
+ 25833 => ['N', 33]\r
+];\r
+$sRef = $data->RecordSet->spatialReference->wkid;\r
+if (!isset($sRefs[$sRef])) {\r
+ err('Unknown spatial reference EPSG ' . $sRef);\r
+}\r
+list($latZone, $lngZone) = $sRefs[$sRef];\r
+\r
+$geoJson = [\r
+ 'type' => 'Feature',\r
+ 'title' => basename($file, '.json'),\r
+ 'properties' => null,\r
+ 'geometry' => [\r
+ 'type' => 'Polygon',\r
+ 'coordinates' => [],\r
+ ],\r
+];\r
+foreach ($data->RecordSet->features as $feature) {\r
+ foreach ($feature->geometry->rings as $ring) {\r
+ $coords = [];\r
+ foreach ($ring as $point) {\r
+ $utm = new \PHPCoord\UTMRef(\r
+ $point[0], $point[1], 0, $latZone, $lngZone\r
+ );\r
+ $ll = $utm->toLatLng();\r
+ $coords[] = [$ll->getLng(), $ll->getLat()];\r
+ }\r
+\r
+ $geoJson['geometry']['coordinates'][] = $coords;\r
+ }\r
+}\r
+\r
+echo json_encode($geoJson, JSON_PRETTY_PRINT) . "\n";\r
+?>\r