]> rtime.felk.cvut.cz Git - hubacji1/bcar.git/commitdiff
Find entry for left parallel, too
authorJiri Vlasak <jiri.vlasak.2@cvut.cz>
Tue, 20 Jul 2021 14:56:27 +0000 (16:56 +0200)
committerJiri Vlasak <jiri.vlasak.2@cvut.cz>
Tue, 20 Jul 2021 14:57:58 +0000 (16:57 +0200)
src/pslot.cc

index 91bf5e9a53819fc884f82f24900b60cddacc98a7..64deb5b39cf5a1f4e43bb8de1dd1b54771558ae1 100644 (file)
@@ -264,7 +264,11 @@ PoseRange
 ParkingSlot::fe(BicycleCar c)
 {
        assert(this->parallel());
-       assert(this->right());
+       bool swapped = false;
+       if (!this->right()) {
+               this->swap_side();
+               swapped = true;
+       }
        c.h(this->h());
        double clen = -this->offset_ + this->len() - c.df();
        double cw = c.w() / 2.0;
@@ -306,7 +310,12 @@ ParkingSlot::fe(BicycleCar c)
        }
        auto& c1 = entries.front().front();
        auto& c2 = entries.back().front();
-       return PoseRange(c1, c2);
+       PoseRange p(c1, c2);
+       if (swapped) {
+               this->swap_side();
+               p.reflect(this->entry_);
+       }
+       return p;
 }
 
 PoseRange