Belle II Software development
|
A two dimensional circle in its natural representation using center and radius as parameters. More...
#include <Circle2D.h>
Public Member Functions | |
Circle2D () | |
Default constructor for ROOT compatibility. Creates an invalid circle. | |
Circle2D (const Vector2D ¢er, const double radius) | |
Constructs a circle with given center and radius/ orientation as given by the signedRadius. | |
Circle2D (const Vector2D ¢er, const double absRadius, const ERotation ccwInfo) | |
Constructs a circle with given center, absolute value of the radius and orientation. | |
void | reverse () |
Flips orientation the circle in place. | |
Circle2D | reversed () const |
Returns a copy of the line with the reversed orientation. | |
void | conformalTransform () |
Transforms the circle to conformal space inplace. | |
Circle2D | conformalTransformed () const |
Returns a copy of the circle in conformal space. | |
double | distance (const Vector2D &point) const |
Calculates the signed distance of the point to the circle line. | |
double | impact () const |
Returns the signed distance to the origin. | |
double | absDistance (const Vector2D &point) const |
Returns the euclidean distance of the point to the circle line. | |
ERightLeft | isRightOrLeft (const Vector2D &point) const |
Return if the point given is right or left of the line. | |
bool | isLeft (const Vector2D &rhs) const |
Return if the point given is left of the circle line. | |
bool | isRight (const Vector2D &rhs) const |
Return if the point given is right of the circle line. | |
Vector2D | closest (const Vector2D &point) const |
Calculates the point of closest approach on the line to the point. | |
Vector2D | perigee () const |
Returns the point closest to the origin. | |
Vector2D | tangential () const |
Gives the tangential vector at the closest approach to the origin / at the perigee. | |
double | tangentialPhi () const |
Gives to azimuth phi of the direction of flight at the perigee. | |
Vector2D | gradient (const Vector2D &point) const |
Gradient of the distance field. | |
Vector2D | normal (const Vector2D &point) const |
Normal vector to the circle near the given position. | |
Vector2D | tangential (const Vector2D &point) const |
Tangential vector to the circle near the given position. | |
double | openingAngle (const Vector2D &from, const Vector2D &to) const |
Calculates the angle between two points as seen from the center of the circle. | |
double | arcLengthBetween (const Vector2D &from, const Vector2D &to) const |
Calculates the arc length between two points of closest approach on the circle. | |
double | radius () const |
Getter for the signed radius. | |
double | radiusSquared () const |
Getter for the squared radius. | |
double | absRadius () const |
Getter for the absolute radius. | |
ERotation | orientation () const |
Indicates if the circle is to be interpreted counterclockwise or clockwise. | |
Vector2D | center () const |
Getter for the central point of the circle. | |
Transformations of the circle | |
void | moveBy (const Vector2D &by) |
Actively moves the circle in the direction given in place by the vector given. | |
void | moveAlongFirst (const double first) |
Actively moves the circle in the direction given in place along the first coordinate. | |
void | moveAlongSecond (const double second) |
Actively moves the circle in the direction given in place along the second coordinate. | |
void | passiveMoveBy (const Vector2D &by) |
Passively move the coordinate system in place by the given vector. | |
void | passiveMoveAlongFirst (const double first) |
Passively move the coordinate system in place along the first coordinate. | |
void | passiveMoveAlongSecond (const double second) |
Passively move the coordinate system in place along the second coordinate. | |
Private Attributes | |
Vector2D | m_center |
Memory for the central point. | |
double | m_radius |
Memory for the signed radius. | |
A two dimensional circle in its natural representation using center and radius as parameters.
Definition at line 26 of file Circle2D.h.
|
inline |
Default constructor for ROOT compatibility. Creates an invalid circle.
Definition at line 30 of file Circle2D.h.
Constructs a circle with given center and radius/ orientation as given by the signedRadius.
Definition at line 37 of file Circle2D.h.
Constructs a circle with given center, absolute value of the radius and orientation.
Definition at line 44 of file Circle2D.h.
|
inline |
Returns the euclidean distance of the point to the circle line.
Definition at line 112 of file Circle2D.h.
|
inline |
Getter for the absolute radius.
Definition at line 209 of file Circle2D.h.
Calculates the arc length between two points of closest approach on the circle.
Definition at line 191 of file Circle2D.h.
|
inline |
Getter for the central point of the circle.
Definition at line 221 of file Circle2D.h.
Calculates the point of closest approach on the line to the point.
Definition at line 136 of file Circle2D.h.
|
inline |
Transforms the circle to conformal space inplace.
Applies the conformal map in the self-inverse from
Definition at line 74 of file Circle2D.h.
|
inline |
Returns a copy of the circle in conformal space.
Applies the conformal map in the self-inverse from
Definition at line 92 of file Circle2D.h.
|
inline |
Gradient of the distance field.
Definition at line 166 of file Circle2D.h.
|
inline |
Returns the signed distance to the origin.
Definition at line 106 of file Circle2D.h.
|
inline |
Return if the point given is left of the circle line.
Definition at line 124 of file Circle2D.h.
|
inline |
Return if the point given is right of the circle line.
Definition at line 130 of file Circle2D.h.
|
inline |
Return if the point given is right or left of the line.
Definition at line 118 of file Circle2D.h.
|
inline |
Actively moves the circle in the direction given in place along the first coordinate.
Definition at line 235 of file Circle2D.h.
|
inline |
Actively moves the circle in the direction given in place along the second coordinate.
Definition at line 241 of file Circle2D.h.
|
inline |
Actively moves the circle in the direction given in place by the vector given.
Definition at line 229 of file Circle2D.h.
Normal vector to the circle near the given position.
Definition at line 173 of file Circle2D.h.
Calculates the angle between two points as seen from the center of the circle.
Definition at line 185 of file Circle2D.h.
|
inline |
Indicates if the circle is to be interpreted counterclockwise or clockwise.
Definition at line 215 of file Circle2D.h.
|
inline |
|
inline |
|
inline |
Passively move the coordinate system in place by the given vector.
Definition at line 247 of file Circle2D.h.
|
inline |
Returns the point closest to the origin.
Definition at line 145 of file Circle2D.h.
|
inline |
Getter for the signed radius.
Definition at line 197 of file Circle2D.h.
|
inline |
Getter for the squared radius.
Definition at line 203 of file Circle2D.h.
|
inline |
Flips orientation the circle in place.
Definition at line 52 of file Circle2D.h.
|
inline |
Returns a copy of the line with the reversed orientation.
Definition at line 58 of file Circle2D.h.
|
inline |
Gives the tangential vector at the closest approach to the origin / at the perigee.
Definition at line 154 of file Circle2D.h.
Tangential vector to the circle near the given position.
Definition at line 179 of file Circle2D.h.
|
inline |
Gives to azimuth phi of the direction of flight at the perigee.
Definition at line 160 of file Circle2D.h.
|
private |
Memory for the central point.
Definition at line 267 of file Circle2D.h.
|
private |
Memory for the signed radius.
Definition at line 270 of file Circle2D.h.