X-Git-Url: https://fleuret.org/cgi-bin/gitweb/gitweb.cgi?p=flatland.git;a=blobdiff_plain;f=polygon.cc;h=bfa95f809442d31415e82b2f15a4ef3831f0245e;hp=b64fbe4ab3d570038ff491f82e823f315aedc05a;hb=90d1c5704c30e7f1d041e32eacbc2893741110e1;hpb=2cd32038873961c8ff3861efb218fad75fbcbf69 diff --git a/polygon.cc b/polygon.cc index b64fbe4..bfa95f8 100644 --- a/polygon.cc +++ b/polygon.cc @@ -517,6 +517,14 @@ void Polygon::apply_collision_forces(scalar_t dt, int n_polygon, Polygon *p) { } +bool Polygon::collide_with_borders(scalar_t xmin, scalar_t ymin, + scalar_t xmax, scalar_t ymax) { + for(int n = 0; n < _nb_vertices; n++) { + if(_x[n] <= xmin || _x[n] >= xmax || _y[n] <= ymin || _y[n] >= ymax) return true; + } + return false; +} + bool Polygon::collide(Polygon *p) { for(int n = 0; n < _nb_vertices; n++) { int np = (n+1)%_nb_vertices;