]> rtime.felk.cvut.cz Git - hubacji1/bcar.git/blobdiff - src/pslot.cc
Add collide method
[hubacji1/bcar.git] / src / pslot.cc
index 1864de9f037afd84925408aaf90dfe523dfdd3fd..5c17a0c4e24b6fb4c4c78950bf87f5b86fdd4160 100644 (file)
@@ -123,6 +123,23 @@ ParkingSlot::parked(BicycleCar const& c) const
                && c.rr().inside_of(b) && c.rf().inside_of(b);
 }
 
+bool
+ParkingSlot::collide(BicycleCar const& c) const
+{
+       return c.left().intersects_with(this->rear_)
+               && c.left().intersects_with(this->curb_)
+               && c.left().intersects_with(this->front_)
+               && c.rear().intersects_with(this->rear_)
+               && c.rear().intersects_with(this->curb_)
+               && c.rear().intersects_with(this->front_)
+               && c.right().intersects_with(this->rear_)
+               && c.right().intersects_with(this->curb_)
+               && c.right().intersects_with(this->front_)
+               && c.front().intersects_with(this->rear_)
+               && c.front().intersects_with(this->curb_)
+               && c.front().intersects_with(this->front_);
+}
+
 std::ostream&
 operator<<(std::ostream& o, ParkingSlot const& s)
 {