def distance_to(self, rep): geo = rep.get_geometry() if isinstance(geo,Vec2): return self.line.distance_to(geo) elif isinstance(geo,LineSegment): return seg_to_seg_distance(self.line, geo) elif isinstance(geo,BoundingBox): return poly_to_seg_distance(geo.to_polygon(), self.line) elif isinstance(geo,Polygon): return poly_to_seg_distance(geo, self.line)
def distance_to(self, rep): geo = rep.get_geometry() if isinstance(geo,Vec2): return poly_to_vec_distance(self.rect.to_polygon(), geo) elif isinstance(geo,LineSegment): return poly_to_seg_distance(self.rect.to_polygon(), geo) elif isinstance(geo,BoundingBox): return bb_to_bb_distance(self.rect, geo) elif isinstance(geo,Polygon): return poly_to_poly_distance(self.rect.to_polygon(), geo)