-
Notifications
You must be signed in to change notification settings - Fork 10
Expand file tree
/
Copy pathcreate_shapefile.php
More file actions
90 lines (75 loc) · 2.19 KB
/
create_shapefile.php
File metadata and controls
90 lines (75 loc) · 2.19 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
<?php
declare(strict_types=1);
/**
* phpMyAdmin ShapeFile library
* <https://github.com/phpmyadmin/shapefile/>.
*
* Copyright 2006-2007 Ovidio <ovidio AT users.sourceforge.net>
* Copyright 2016 - 2017 Michal Čihař <michal@cihar.com>
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, you can download one from
* https://www.gnu.org/copyleft/gpl.html.
*/
use PhpMyAdmin\ShapeFile\ShapeFile;
use PhpMyAdmin\ShapeFile\ShapeRecord;
use PhpMyAdmin\ShapeFile\ShapeType;
require_once __DIR__ . '/../vendor/autoload.php';
$shp = new ShapeFile(ShapeType::Point, [
'xmin' => 464079.002268,
'ymin' => 2120153.74792,
'xmax' => 505213.52849,
'ymax' => 2163205.70036,
]);
$record0 = new ShapeRecord(ShapeType::Point);
$record0->addPoint([
'x' => 482131.764567,
'y' => 2143634.39608,
]);
$record1 = new ShapeRecord(ShapeType::Point);
$record1->addPoint([
'x' => 472131.764567,
'y' => 2143634.39608,
]);
$record2 = new ShapeRecord(ShapeType::Point);
$record2->addPoint([
'x' => 492131.764567,
'y' => 2143634.39608,
]);
$shp->addRecord($record0);
$shp->addRecord($record1);
$shp->addRecord($record2);
$shp->setDBFHeader(
[
[
'ID',
'N',
8,
0,
],
[
'DESC',
'C',
50,
0,
],
],
);
$shp->records[0]->dbfData['ID'] = '1';
$shp->records[0]->dbfData['DESC'] = 'AAAAAAAAA';
$shp->records[1]->dbfData['ID'] = '2';
$shp->records[1]->dbfData['DESC'] = 'BBBBBBBBBB';
$shp->records[2]->dbfData['ID'] = '3';
$shp->records[2]->dbfData['DESC'] = 'CCCCCCCCCCC';
$shp->saveToFile('../data/new_shape.*');
echo "The ShapeFile was created.<br>\n";
echo 'Return to the <a href="index.php">index</a>.';