Lines Matching refs:wkb
76 * @param string $wkb Well-known-binary string
83 public function read($wkb, $isHexString = false)
86 $wkb = pack('H*', $wkb);
89 if (empty($wkb)) {
90 throw new \Exception('Cannot read empty WKB geometry. Found ' . gettype($wkb));
93 $this->reader = new BinaryReader($wkb);
278 $wkb = $this->writeGeometry($geometry);
280 return $writeAsHex ? current(unpack('H*', $wkb)) : $wkb;
292 $wkb = $this->writer->writeSInt8($this->writer->isBigEndian() ? self::WKB_NDR : self::WKB_XDR);
293 $wkb .= $this->writeType($geometry);
297 $wkb .= $this->writePoint($geometry);
301 $wkb .= $this->writeLineString($geometry);
305 $wkb .= $this->writePolygon($geometry);
309 $wkb .= $this->writeMulti($geometry);
313 $wkb .= $this->writeMulti($geometry);
317 $wkb .= $this->writeMulti($geometry);
321 $wkb .= $this->writeMulti($geometry);
324 return $wkb;
336 $wkb = $this->writer->writeDouble($point->x()) . $this->writer->writeDouble($point->y());
339 $wkb .= $this->writer->writeDouble($point->z());
342 $wkb .= $this->writer->writeDouble($point->m());
344 return $wkb;
354 $wkb = $this->writer->writeUInt32($line->numPoints());
358 $wkb .= $this->writePoint($point);
361 return $wkb;
371 $wkb = $this->writer->writeUInt32($poly->numGeometries());
375 $wkb .= $this->writeLineString($line);
378 return $wkb;
388 $wkb = $this->writer->writeUInt32($geometry->numGeometries());
392 $wkb .= $this->writeGeometry($component);
395 return $wkb;