4 * Created on: Apr 24, 2012
8 #ifndef GEOMETRY_FAKELENS_H_
9 #define GEOMETRY_FAKELENS_H_
20 FakeLens(void) : AABB(), bendFactor(0.22f) { };
21 explicit FakeLens(const Vector &size) : AABB(size), bendFactor(0.22f) { };
22 FakeLens(const Vector &position, const Vector &size, float bendFactor = 0.22f) : AABB(position, size), bendFactor(bendFactor) { };
25 void SetBendFactor(float b) { bendFactor = b; };
28 virtual bool Overlaps(const Shape &, Vector &normal) const;
30 virtual bool Overlaps(const AABB &, Vector &normal) const;
31 virtual bool Overlaps(const Circle &, Vector &normal) const;
32 virtual bool Overlaps(const FakeLens &, Vector &normal) const;
35 virtual std::ostream &Write(std::ostream &out) const;
38 void MessUpNormal(Vector &normal, const Shape &other) const;
47 #endif /* GEOMETRY_FAKELENS_H_ */