-
- public function testCreatePointsAroundCenter()
- {
- // you might say we're creating a circle
- $aPoints = createPointsAroundCenter(0, 0, 2);
-
- $this->assertEquals(
- 101,
- count($aPoints)
- );
- $this->assertEquals(
- array(
- ['', 0, 2],
- ['', 0.12558103905863, 1.9960534568565],
- ['', 0.25066646712861, 1.984229402629]
- ),
- array_splice($aPoints, 0, 3)
- );
- }
-
-
- public function testGeometryText2Points()
- {
- $fRadius = 1;
- // invalid value
- $this->assertEquals(
- null,
- geometryText2Points('', $fRadius)
- );
-
- // POINT
- $aPoints = geometryText2Points('POINT(10 20)', $fRadius);
- $this->assertEquals(
- 101,
- count($aPoints)
- );
- $this->assertEquals(
- array(
- [10, 21],
- [10.062790519529, 20.998026728428],
- [10.125333233564, 20.992114701314]
- ),
- array_splice($aPoints, 0, 3)
- );
-
- // POLYGON
- $this->assertEquals(
- array(
- ['30', '10'],
- ['40', '40'],
- ['20', '40'],
- ['10', '20'],
- ['30', '10']
- ),
- geometryText2Points('POLYGON((30 10, 40 40, 20 40, 10 20, 30 10))', $fRadius)
- );
-
- // MULTIPOLYGON
- $this->assertEquals(
- array(
- ['30', '20'], // first polygon only
- ['45', '40'],
- ['10', '40'],
- ['30', '20'],
- ),
- geometryText2Points('MULTIPOLYGON(((30 20, 45 40, 10 40, 30 20)),((15 5, 40 10, 10 20, 5 10, 15 5)))', $fRadius)
- );
- }
-