Lines Matching refs:this
28 foreach ($this->getComponents() as $i => $component) {
37 $this->components[$i] = new LineString(
73 if ($this->isEmpty()) {
77 if ($this->getGeos() && $exteriorOnly == false) {
80 return $this->getGeos()->area();
84 $exteriorRing = $this->components[0];
102 foreach ($this->components as $delta => $component) {
116 if ($this->isEmpty()) {
120 if ($this->getGeos()) {
123 return geoPHP::geosToGeometry($this->getGeos()->centroid());
130 foreach ($this->getComponents() as $i => $component) {
131 $ca = $this->getRingCentroidAndArea($component);
179 $centroid = $this->centroid();
187 foreach ($this->exteriorRing()->getPoints() as $point) {
204 if ($this->isEmpty()) {
207 return $this->components[0];
212 if ($this->isEmpty()) {
215 return $this->numGeometries() - 1;
220 return $this->geometryN($n + 1);
225 if ($this->getGeos()) {
228 return $this->getGeos()->isSimple();
232 $segments = $this->explode(true);
234 //TODO: instead of this O(n^2) algorithm implement Shamos-Hoey Algorithm which is only O(n*log(n))
260 $vertices = $this->getPoints();
263 if ($this->pointOnVertex($point, $vertices)) {
315 foreach ($this->getPoints() as $vertex) {
325 * TODO: rewrite this. Currently supports point, linestring and polygon with only outer ring
331 if ($this->getGeos()) {
334 return $this->getGeos()->contains($geometry->getGeos());
340 if ($this->pointInPolygon($p)) {
357 foreach ($this->exteriorRing()->explode(true) as $outerEdge) {
369 return $this->exteriorRing()->getBBox();