[Phpmyadmin-git] [SCM] phpMyAdmin branch, master, updated. RELEASE_3_4_3_2-16985-gb072a8d
Madhura Jayaratne
madhuracj at users.sourceforge.net
Tue Aug 23 16:08:37 CEST 2011
The branch, master has been updated
via b072a8d47cc80e346c31ccd8d6e6c0e58f39d390 (commit)
via b0465744fb17798c30ff552a508ee44af667c02a (commit)
via 624a742054f7b2484c3c1e28f13757234377c710 (commit)
from a8be4eb8c7a55ba6d3731c6fc6f3b65609ddec3d (commit)
- Log -----------------------------------------------------------------
commit b072a8d47cc80e346c31ccd8d6e6c0e58f39d390
Merge: b046574 a8be4eb
Author: Madhura Jayaratne <madhura.cj at gmail.com>
Date: Tue Aug 23 19:37:07 2011 +0530
Merge branch 'master' of ssh://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin
commit b0465744fb17798c30ff552a508ee44af667c02a
Author: Madhura Jayaratne <madhura.cj at gmail.com>
Date: Tue Aug 23 19:20:22 2011 +0530
Coding style improvements
commit 624a742054f7b2484c3c1e28f13757234377c710
Author: Madhura Jayaratne <madhura.cj at gmail.com>
Date: Tue Aug 23 19:13:55 2011 +0530
Test case for PMA_GIS_Multipolygon::getShape()
-----------------------------------------------------------------------
Summary of changes:
libraries/gis/pma_gis_multipolygon.php | 14 ++++--
test/classes/gis/PMA_GIS_Multipolygon_test.php | 58 ++++++++++++++++++++++++
2 files changed, 67 insertions(+), 5 deletions(-)
diff --git a/libraries/gis/pma_gis_multipolygon.php b/libraries/gis/pma_gis_multipolygon.php
index b5765ef..d04ccde 100644
--- a/libraries/gis/pma_gis_multipolygon.php
+++ b/libraries/gis/pma_gis_multipolygon.php
@@ -374,7 +374,7 @@ class PMA_GIS_Multipolygon extends PMA_GIS_Geometry
// Determines whether each line ring is an inner ring or an outer ring.
// If it's an inner ring get a point on the surface which can be used to
// correctly classify inner rings to their respective outer rings.
- require_once './libraries/gis/pma_gis_polygon.php';
+ include_once './libraries/gis/pma_gis_polygon.php';
foreach ($row_data['parts'] as $i => $ring) {
$row_data['parts'][$i]['isOuter'] = PMA_GIS_Polygon::isOuterRing($ring['points']);
}
@@ -382,7 +382,8 @@ class PMA_GIS_Multipolygon extends PMA_GIS_Geometry
// Find points on surface for inner rings
foreach ($row_data['parts'] as $i => $ring) {
if (! $ring['isOuter']) {
- $row_data['parts'][$i]['pointOnSurface'] = PMA_GIS_Polygon::getPointOnSurface($ring['points']);
+ $row_data['parts'][$i]['pointOnSurface']
+ = PMA_GIS_Polygon::getPointOnSurface($ring['points']);
}
}
@@ -391,8 +392,11 @@ class PMA_GIS_Multipolygon extends PMA_GIS_Geometry
if (! $ring1['isOuter']) {
foreach ($row_data['parts'] as $k => $ring2) {
if ($ring2['isOuter']) {
- // If the pointOnSurface of the inner ring is also inside the outer ring
- if (PMA_GIS_Polygon::isPointInsidePolygon($ring1['pointOnSurface'], $ring2['points'])) {
+ // If the pointOnSurface of the inner ring
+ // is also inside the outer ring
+ if (PMA_GIS_Polygon::isPointInsidePolygon(
+ $ring1['pointOnSurface'], $ring2['points']
+ )) {
if (! isset($ring2['inner'])) {
$row_data['parts'][$k]['inner'] = array();
}
@@ -410,7 +414,7 @@ class PMA_GIS_Multipolygon extends PMA_GIS_Geometry
$wkt .= '('; // start of polygon
$wkt .= '('; // start of outer ring
- foreach($ring['points'] as $point) {
+ foreach ($ring['points'] as $point) {
$wkt .= $point['x'] . ' ' . $point['y'] . ',';
}
$wkt = substr($wkt, 0, strlen($wkt) - 1);
diff --git a/test/classes/gis/PMA_GIS_Multipolygon_test.php b/test/classes/gis/PMA_GIS_Multipolygon_test.php
index 3281b4f..500cbae 100644
--- a/test/classes/gis/PMA_GIS_Multipolygon_test.php
+++ b/test/classes/gis/PMA_GIS_Multipolygon_test.php
@@ -168,5 +168,63 @@ class PMA_GIS_MultipolygonTest extends PMA_GIS_GeometryTest
)
);
}
+
+ /**
+ * test getShape method
+ *
+ * @param array $row_data array of GIS data
+ * @param string $shape expected shape in WKT
+ *
+ * @dataProvider providerForTestGetShape
+ * @return nothing
+ */
+ public function testGetShape($row_data, $shape)
+ {
+ $this->assertEquals($this->object->getShape($row_data), $shape);
+ }
+
+ /**
+ * data provider for testGetShape
+ *
+ * @return data for testGetShape
+ */
+ public function providerForTestGetShape()
+ {
+ return array(
+ array(
+ array(
+ 'parts' => array(
+ 0 => array(
+ 'points' => array(
+ 0 => array('x' => 10, 'y' => 10),
+ 1 => array('x' => 10, 'y' => 40),
+ 2 => array('x' => 50, 'y' => 40),
+ 3 => array('x' => 50, 'y' => 10),
+ 4 => array('x' => 10, 'y' => 10),
+ ),
+ ),
+ 1 => array(
+ 'points' => array(
+ 0 => array('x' => 60, 'y' => 40),
+ 1 => array('x' => 75, 'y' => 65),
+ 2 => array('x' => 90, 'y' => 40),
+ 3 => array('x' => 60, 'y' => 40),
+ ),
+ ),
+ 2 => array(
+ 'points' => array(
+ 0 => array('x' => 20, 'y' => 20),
+ 1 => array('x' => 40, 'y' => 20),
+ 2 => array('x' => 25, 'y' => 30),
+ 3 => array('x' => 20, 'y' => 20),
+ ),
+ ),
+ ),
+ ),
+ 'MULTIPOLYGON(((10 10,10 40,50 40,50 10,10 10),(20 20,40 20,25 30'
+ . ',20 20)),((60 40,75 65,90 40,60 40)))'
+ )
+ );
+ }
}
?>
hooks/post-receive
--
phpMyAdmin
More information about the Git
mailing list