|
LARS
LARS (Light Augmented Reality System) is an open-source framework for light-based interaction and real-time tracking in multi-robot experiments. Inspired by ARK, LARS extends the augmented reality paradigm to robotic collectives by projecting dynamic visual cues and environments onto the arena, enabling new experimental possibilities for collective robotics research, education, and outreach. LARS features integrated tracking, light projection, and modular experiment control with a user-friendly Qt GUI.
|
2d circle class More...
#include <circle_2d.h>
Public Member Functions | |
| Circle2D () | |
| create a zero area circle at (0,0) | |
| Circle2D (const Vector2D &c, const double &r) | |
| construct with center point and radius value. | |
| const Circle2D & | assign (const Vector2D &c, const double &r) |
| assign new value. | |
| virtual double | area () const |
| get the area value of this circle | |
| virtual bool | contains (const Vector2D &point) const |
| check if point is within this region | |
| const Vector2D & | center () const |
| get the center point | |
| const double & | radius () const |
| get the radius value | |
| int | intersection (const Line2D &line, Vector2D *sol1, Vector2D *sol2) const |
| caluclate the intersection with straight line | |
| int | intersection (const Ray2D &ray, Vector2D *sol1, Vector2D *sol2) const |
| calculate the intersection with ray line | |
| int | intersection (const Segment2D &segment, Vector2D *sol1, Vector2D *sol2) const |
| calculate the intersection with segment line | |
| int | intersection (const Circle2D &circle, Vector2D *sol1, Vector2D *sol2) const |
| calculate the intersection with another circle | |
| bool | HasIntersection (Line2D line) |
| HasIntersection : check that this Line2D Has Intersection with circle or not. | |
| bool | HasIntersection (Line2D line, float SF) |
| HasIntersection( : check that this line Has Intersection with this circle or not , and a safety factor for distance to center. | |
| bool | HasIntersection (Segment2D Seg) |
| HasIntersection : check that this segment Has Intersection with circle or not. | |
| bool | HasIntersection (Segment2D Seg, float SF) |
| HasIntersection( : check that this segment Has Intersection with this circle or not , and a safety factor for distance to center. | |
| Vector2D | nearestpoint (Vector2D pnt) |
| Intersect : If HasIntersection, return intersec point. | |
| Public Member Functions inherited from rcsc::Region2D | |
| virtual | ~Region2D () |
| virtual destructor. | |
Static Public Member Functions | |
| static Circle2D | circumcircle (const Vector2D &p0, const Vector2D &p1, const Vector2D &p2) |
| get the circle through three points (circumcircle of the triangle). | |
| static bool | contains (const Vector2D &point, const Vector2D &p0, const Vector2D &p1, const Vector2D &p2) |
| check if the circumcircle contains the input point | |
Additional Inherited Members | |
| Protected Member Functions inherited from rcsc::Region2D | |
| Region2D () | |
| accessible only from derived classes | |
2d circle class
|
inline |
construct with center point and radius value.
| c | center point |
| r | radius value |
|
inlinevirtual |
assign new value.
| c | center point |
| r | radius value |
|
inline |
get the center point
|
static |
get the circle through three points (circumcircle of the triangle).
| p0 | triangle's 1st vertex |
| p1 | triangle's 2nd vertex |
| p2 | triangle's 3rd vertex |
|
inlinevirtual |
check if point is within this region
| point | considered point |
Implements rcsc::Region2D.
|
static |
check if the circumcircle contains the input point
| point | input point |
| p0 | triangle's 1st vertex |
| p1 | triangle's 2nd vertex |
| p2 | triangle's 3rd vertex |
| bool rcsc::Circle2D::HasIntersection | ( | Line2D | line | ) |
HasIntersection : check that this Line2D Has Intersection with circle or not.
| point |
| bool rcsc::Circle2D::HasIntersection | ( | Line2D | line, |
| float | SF ) |
HasIntersection( : check that this line Has Intersection with this circle or not , and a safety factor for distance to center.
| point,SafetyFactor |
| bool rcsc::Circle2D::HasIntersection | ( | Segment2D | Seg | ) |
HasIntersection : check that this segment Has Intersection with circle or not.
| point |
| bool rcsc::Circle2D::HasIntersection | ( | Segment2D | Seg, |
| float | SF ) |
HasIntersection( : check that this segment Has Intersection with this circle or not , and a safety factor for distance to center.
| point,SafetyFactor |
| int rcsc::Circle2D::intersection | ( | const Circle2D & | circle, |
| Vector2D * | sol1, | ||
| Vector2D * | sol2 ) const |
calculate the intersection with another circle
| circle | considerd circle |
| sol1 | pointer to the 1st solution variable |
| sol2 | pointer to the 2nd solution variable |
caluclate the intersection with straight line
| line | considerd line |
| sol1 | pointer to the 1st solution variable |
| sol2 | pointer to the 2nd solution variable |
calculate the intersection with ray line
| ray | considerd ray |
| sol1 | pointer to the 1st solution variable |
| sol2 | pointer to the 2nd solution variable |
| int rcsc::Circle2D::intersection | ( | const Segment2D & | segment, |
| Vector2D * | sol1, | ||
| Vector2D * | sol2 ) const |
calculate the intersection with segment line
| segment | considerd segment line |
| sol1 | pointer to the 1st solution variable |
| sol2 | pointer to the 2nd solution variable |
|
inline |
get the radius value