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;
}
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