Пример #1
0
 /**
  * Construct an Envelope from a set of coordinates in array format
  */
 public static function from_array($coords, $srid = null, $with_z = false)
 {
     $e = new self($srid, $with_z);
     $e->ll = Point::from_array($coords[0], $srid, $with_z);
     $e->ur = Point::from_array($coords[1], $srid, $with_z);
     return $e;
 }
Пример #2
0
 public function test_point_create()
 {
     $p = new Point();
     $this->assertEquals(Constants::DEFAULT_SRID, $p->srid);
     $this->assertEquals(false, $p->with_z);
     $this->assertEquals(false, $p->with_m);
     $this->assertEquals(0, $p->x);
     $this->assertEquals(0, $p->y);
     $this->assertEquals(0, $p->z);
     $this->assertEquals(0, $p->m);
     $p = new Point(444);
     $this->assertEquals(444, $p->srid);
     // from_xy
     $p = Point::from_xy(1.1, -2.2, 444);
     $this->assertEquals(444, $p->srid);
     $this->assertEquals(false, $p->with_z);
     $this->assertEquals(false, $p->with_m);
     $this->assertEquals(1.1, $p->x);
     $this->assertEquals(-2.2, $p->y);
     $this->assertEquals(0, $p->z);
     $this->assertEquals(0, $p->m);
     $this->assertEquals(1.1, $p->lon);
     $this->assertEquals(-2.2, $p->lat);
     // from_xyz
     $p = Point::from_xyz(1.1, -2.2, 3.3, 444);
     $this->assertEquals(444, $p->srid);
     $this->assertEquals(true, $p->with_z);
     $this->assertEquals(false, $p->with_m);
     $this->assertEquals(1.1, $p->x);
     $this->assertEquals(-2.2, $p->y);
     $this->assertEquals(3.3, $p->z);
     $this->assertEquals(0, $p->m);
     // from_xym
     $p = Point::from_xym(1.1, -2.2, 3.3, 444);
     $this->assertEquals(444, $p->srid);
     $this->assertEquals(false, $p->with_z);
     $this->assertEquals(true, $p->with_m);
     $this->assertEquals(1.1, $p->x);
     $this->assertEquals(-2.2, $p->y);
     $this->assertEquals(0, $p->z);
     $this->assertEquals(3.3, $p->m);
     // from_xyzm
     $p = Point::from_xyzm(1.1, 2.2, 3.3, -4.4, 444);
     $this->assertEquals(444, $p->srid);
     $this->assertEquals(true, $p->with_z);
     $this->assertEquals(true, $p->with_m);
     $this->assertEquals(1.1, $p->x);
     $this->assertEquals(2.2, $p->y);
     $this->assertEquals(3.3, $p->z);
     $this->assertEquals(-4.4, $p->m);
     // from_coordinates
     $coords = array(1.1, 2.2, 3.3, 4.4);
     $p = Point::from_array($coords);
     $this->assertEquals(Constants::DEFAULT_SRID, $p->srid);
     $this->assertEquals(false, $p->with_z);
     $this->assertEquals(false, $p->with_m);
     $this->assertEquals(1.1, $p->x);
     $this->assertEquals(2.2, $p->y);
     $this->assertEquals(0, $p->z);
     $this->assertEquals(0, $p->m);
     $p = Point::from_array($coords, 444, true);
     $this->assertEquals(444, $p->srid);
     $this->assertEquals(true, $p->with_z);
     $this->assertEquals(false, $p->with_m);
     $this->assertEquals(1.1, $p->x);
     $this->assertEquals(2.2, $p->y);
     $this->assertEquals(3.3, $p->z);
     $this->assertEquals(0, $p->m);
     $p = Point::from_array($coords, 444, false, true);
     $this->assertEquals(444, $p->srid);
     $this->assertEquals(false, $p->with_z);
     $this->assertEquals(true, $p->with_m);
     $this->assertEquals(1.1, $p->x);
     $this->assertEquals(2.2, $p->y);
     $this->assertEquals(0, $p->z);
     $this->assertEquals(3.3, $p->m);
     $p = Point::from_array($coords, 444, true, true);
     $this->assertEquals(444, $p->srid);
     $this->assertEquals(true, $p->with_z);
     $this->assertEquals(true, $p->with_m);
     $this->assertEquals(1.1, $p->x);
     $this->assertEquals(2.2, $p->y);
     $this->assertEquals(3.3, $p->z);
     $this->assertEquals(4.4, $p->m);
 }