protected function writeType(Geometry $geometry, $type) { if ($geometry->hasZ()) { $type |= 0x80000000; } if ($geometry->isMeasured()) { $type |= 0x40000000; } if ($geometry->getSRID()) { $type |= 0x20000000; } return pack('V', $type); }