Classes | |
| struct | clan::CollidingContours |
| Strurcture containing information about contours that collided. More... | |
| class | clan::CollisionOutline |
| Collision detection outline. More... | |
| struct | clan::CollisionPoint |
| Collision point information structure. More... | |
| class | clan::Contour |
| Collision detection contour. More... | |
| class | clan::OutlineCircle |
| Collision detection outline segmentation circle. More... | |
| class | clan::OutlineMath |
| Math operations on outlines. More... | |
Enumerations | |
| enum | clan::OutlineAccuracy { clan::accuracy_raw, clan::accuracy_high, clan::accuracy_medium, clan::accuracy_low, clan::accuracy_poor } |
| Outline optimization accuracy. More... | |
Functions | |
| clan::CollidingContours::CollidingContours (const Contour *c1, const Contour *c2, bool in=false) | |
| Constructs a CollidingContours. More... | |
Variables | |
| const Contour * | clan::CollidingContours::contour1 |
| Pointf | clan::CollidingContours::contour1_deep_point |
| int | clan::CollisionPoint::contour1_line_end |
| int | clan::CollisionPoint::contour1_line_start |
| Indexes of intersecting lines on the contours. More... | |
| const Contour * | clan::CollidingContours::contour2 |
| Pointf | clan::CollidingContours::contour2_deep_point |
| int | clan::CollisionPoint::contour2_line_end |
| int | clan::CollisionPoint::contour2_line_start |
| bool | clan::CollidingContours::inside |
| bool | clan::CollisionPoint::is_entry |
| Every contour intersection has an entry and exit point. True, if this is an entry point. More... | |
| Pointf | clan::CollisionPoint::normal |
| Normal vector at the point where the contours intersected. More... | |
| float | clan::CollidingContours::penetration_depth |
| Pointf | clan::CollidingContours::penetration_normal |
| Pointf | clan::CollisionPoint::point |
| Coordinates of the point where the contours intersected. More... | |
| std::vector< CollisionPoint > | clan::CollidingContours::points |
Construction | |
| clan::CollisionOutline::CollisionOutline () | |
| Construct a collision outline. More... | |
| clan::CollisionOutline::CollisionOutline (const PixelBuffer &pbuf, int alpha_limit=128, OutlineAccuracy accuracy=accuracy_medium) | |
| Construct a collision outline. More... | |
| clan::CollisionOutline::CollisionOutline (const std::string &fullname, int alpha_limit=128, OutlineAccuracy accuracy=accuracy_medium, bool get_insides=true) | |
| Construct a collision outline. More... | |
| clan::CollisionOutline::CollisionOutline (IODevice &file, const std::string &file_extension, int alpha_limit=128, OutlineAccuracy accuracy=accuracy_medium, bool get_insides=true) | |
| Constructs a CollisionOutline. More... | |
| clan::CollisionOutline::CollisionOutline (const std::string &filename, const FileSystem &file_system, int alpha_limit=128, OutlineAccuracy accuracy=accuracy_medium, bool get_insides=true) | |
| Constructs a CollisionOutline. More... | |
| clan::CollisionOutline::CollisionOutline (const std::vector< Contour > &contours, const Size &size, OutlineAccuracy accuracy) | |
| Construct a collision outline. More... | |
| clan::CollisionOutline::~CollisionOutline () | |
Resources | |
| static Resource< CollisionOutline > | clan::CollisionOutline::resource (const std::string &id, const ResourceManager &resources) |
| Retrieves a CollisionOutline from the resource manager. More... | |
| static CollisionOutline | clan::CollisionOutline::load (const std::string &id, const XMLResourceDocument &doc) |
| Loads a CollisionOutline from a XML resource definition. More... | |
Construction | |
| clan::Contour::Contour () | |
| Construct a contour. More... | |
| clan::Contour::~Contour () | |
Attributes | |
| std::vector< Pointf > & | clan::Contour::get_points () |
| const std::vector< Pointf > & | clan::Contour::get_points () const |
| bool | clan::Contour::is_inside_contour () const |
| void | clan::Contour::set_inside_contour (bool is_inside) |
| Set inside contour. More... | |
| std::vector< OutlineCircle > & | clan::Contour::get_sub_circles () |
| const std::vector < OutlineCircle > & | clan::Contour::get_sub_circles () const |
Operators | |
| bool | clan::Contour::operator== (const Contour &other) const |
| Equality operator. More... | |
| bool | clan::Contour::operator!= (const Contour &other) const |
| Inequality operator. More... | |
| bool | clan::Contour::operator< (const Contour &other) const |
| Less than operator. More... | |
| Contour | clan::Contour::clone () const |
| Makes a copy of the contour. More... | |
Construction | |
| clan::OutlineCircle::OutlineCircle () | |
| Construct a outline circle. More... | |
Operations | |
| bool | clan::OutlineCircle::collide (const OutlineCircle &other) const |
| Construct a outline circle. More... | |
Attributes | |
| Pointf | clan::OutlineCircle::position |
| float | clan::OutlineCircle::radius |
| unsigned int | clan::OutlineCircle::start |
| unsigned int | clan::OutlineCircle::end |
Operations | |
| static OutlineCircle | clan::OutlineMath::minimum_enclosing_disc (const std::vector< Pointf > &points) |
| Find minimum spanning circle for the set of points. More... | |
| static void | clan::OutlineMath::minimum_enclosing_disc (OutlineCircle &smalldisc, const std::vector< Pointf > &points) |
| static void | clan::OutlineMath::minimum_enclosing_sub_circle (OutlineCircle &smalldisc, const std::vector< Pointf > &points, float maxradius) |
|
inline |
Constructs a CollidingContours.
References clan::CollidingContours::points.
| clan::CollisionOutline::CollisionOutline | ( | ) |
Construct a collision outline.
| clan::CollisionOutline::CollisionOutline | ( | const PixelBuffer & | pbuf, |
| int | alpha_limit = 128, |
||
| OutlineAccuracy | accuracy = accuracy_medium |
||
| ) |
Construct a collision outline.
| pbuf | = Find alpha outline from a pixel buffer |
| alpha_limit | = Alpha limit for pixels considered solid (collidable) |
| accuracy | = Amount of optimization of the outline (default medium) |
| clan::CollisionOutline::CollisionOutline | ( | const std::string & | fullname, |
| int | alpha_limit = 128, |
||
| OutlineAccuracy | accuracy = accuracy_medium, |
||
| bool | get_insides = true |
||
| ) |
Construct a collision outline.
| fullname | = Full name |
| alpha_limit | = value |
| accuracy | = Outline Accuracy |
| get_insides | = bool |
| clan::CollisionOutline::CollisionOutline | ( | IODevice & | file, |
| const std::string & | file_extension, | ||
| int | alpha_limit = 128, |
||
| OutlineAccuracy | accuracy = accuracy_medium, |
||
| bool | get_insides = true |
||
| ) |
Constructs a CollisionOutline.
| file | = IODevice |
| file_extension | = String |
| alpha_limit | = value |
| accuracy | = Outline Accuracy |
| get_insides | = bool |
| clan::CollisionOutline::CollisionOutline | ( | const std::string & | filename, |
| const FileSystem & | file_system, | ||
| int | alpha_limit = 128, |
||
| OutlineAccuracy | accuracy = accuracy_medium, |
||
| bool | get_insides = true |
||
| ) |
Constructs a CollisionOutline.
| filename | = String Ref |
| directory | = Virtual Directory |
| alpha_limit | = value |
| accuracy | = Outline Accuracy |
| get_insides | = bool |
| clan::CollisionOutline::CollisionOutline | ( | const std::vector< Contour > & | contours, |
| const Size & | size, | ||
| OutlineAccuracy | accuracy | ||
| ) |
Construct a collision outline.
| contours | = The contours |
| size | = The size |
| accuracy | = Outline Accuracy |
| clan::Contour::Contour | ( | ) |
Construct a contour.
|
inline |
Construct a outline circle.
| clan::CollisionOutline::~CollisionOutline | ( | ) |
| clan::Contour::~Contour | ( | ) |
| Contour clan::Contour::clone | ( | ) | const |
Makes a copy of the contour.
|
inline |
Construct a outline circle.
| other | Other circle to test. |
References clan::OutlineCircle::position, clan::OutlineCircle::radius, clan::Vec2< Type >::x, and clan::Vec2< Type >::y.
| std::vector<Pointf>& clan::Contour::get_points | ( | ) |
| const std::vector<Pointf>& clan::Contour::get_points | ( | ) | const |
| std::vector<OutlineCircle>& clan::Contour::get_sub_circles | ( | ) |
| const std::vector<OutlineCircle>& clan::Contour::get_sub_circles | ( | ) | const |
| bool clan::Contour::is_inside_contour | ( | ) | const |
|
static |
Loads a CollisionOutline from a XML resource definition.
|
static |
Find minimum spanning circle for the set of points.
| points | the points to calulate on |
|
static |
|
static |
| bool clan::Contour::operator!= | ( | const Contour & | other | ) | const |
Inequality operator.
| bool clan::Contour::operator< | ( | const Contour & | other | ) | const |
Less than operator.
| bool clan::Contour::operator== | ( | const Contour & | other | ) | const |
Equality operator.
|
static |
Retrieves a CollisionOutline from the resource manager.
| gc | = Graphic Context |
| resources | = Resource manager |
| id | = id |
| void clan::Contour::set_inside_contour | ( | bool | is_inside | ) |
Set inside contour.
| is_inside | = bool |
| const Contour* clan::CollidingContours::contour1 |
| Pointf clan::CollidingContours::contour1_deep_point |
| int clan::CollisionPoint::contour1_line_end |
| int clan::CollisionPoint::contour1_line_start |
Indexes of intersecting lines on the contours.
| const Contour* clan::CollidingContours::contour2 |
| Pointf clan::CollidingContours::contour2_deep_point |
| int clan::CollisionPoint::contour2_line_end |
| int clan::CollisionPoint::contour2_line_start |
| unsigned int clan::OutlineCircle::end |
| bool clan::CollidingContours::inside |
| bool clan::CollisionPoint::is_entry |
Every contour intersection has an entry and exit point. True, if this is an entry point.
| Pointf clan::CollisionPoint::normal |
Normal vector at the point where the contours intersected.
| float clan::CollidingContours::penetration_depth |
| Pointf clan::CollidingContours::penetration_normal |
| Pointf clan::CollisionPoint::point |
Coordinates of the point where the contours intersected.
| std::vector<CollisionPoint> clan::CollidingContours::points |
Referenced by clan::CollidingContours::CollidingContours().
| Pointf clan::OutlineCircle::position |
Referenced by clan::OutlineCircle::collide().
| float clan::OutlineCircle::radius |
Referenced by clan::OutlineCircle::collide().
| unsigned int clan::OutlineCircle::start |