Go to the documentation of this file.
155 const double x0 = p2.
getX() -
p1.getX();
156 const double x1 = p0.
getX() - p2.
getX();
157 const double x2 =
p1.getX() - p0.
getX();
159 const double y0 =
p1.getY() - p2.
getY();
160 const double y1 = p2.
getY() - p0.
getY();
161 const double y2 = p0.
getY() -
p1.getY();
163 const double D = 2.0 * (p0.
getX()*y0 +
p1.getX()*y1 + p2.
getX()*y2);
168 const double b =
p1.getLengthSquared();
171 __x = (a*y0 + b*y1 + c*y2) / D;
172 __y = (a*x0 + b*x1 + c*x2) / D;
205 __x = __begin->getX();
206 __y = __begin->getY();
221 while (++
j != __end) {
254 in >> static_cast<JPosition2D&>(circle);
270 out << static_cast<const JPosition2D&>(circle);
287 in >> static_cast<JPosition2D&>(circle);
303 out << static_cast<const JPosition2D&>(circle);
327 this->
set(
JVector2D(__begin->getX(), __begin->getY()), p0);
329 for (T i = __begin; ++i != __end; ) {
356 for (T i = __begin; i != __end; ++i) {
358 const JVector2D p2(i->getX(), i->getY());
Interface for binary input.
Data structure for circle in two dimensions.
double getLengthSquared() const
Get length squared.
TCanvas * c1
Global variables to handle mouse events.
std::vector< T >::difference_type distance(typename std::vector< T >::const_iterator first, typename PhysicsEvent::const_iterator< T > second)
Specialisation of STL distance.
double getRadius() const
Get radius.
Auxiliary classes and methods for 2D geometrical objects and operations.
void set(T __begin, T __end)
Set circle.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
Data structure for position in two dimensions.
friend std::istream & operator>>(std::istream &in, JCircle2D &circle)
Read circle from input stream.
Interface for binary output.
friend std::ostream & operator<<(std::ostream &out, const JCircle2D &circle)
Write circle to output stream.
friend JWriter & operator<<(JWriter &out, const JCircle2D &circle)
Write circle to output.
void configure(T __begin, T __end, const JVector2D &p0)
Determine smallest enclosing circle.
double getDistance(const JVector2D &point) const
Get distance to point.
bool is_inside(const JVector2D &pos) const
Check whether given point is inside circle.
JCircle2D(const JVector2D &p0, const JVector2D &p1, const JVector2D &p2)
Constructor.
JCircle2D(const JVector2D &p0, const JVector2D &p1)
Constructor.
void set(const JVector2D &p0, const JVector2D &p1, const JVector2D &p2)
Set circle.
JCircle2D()
Default constructor.
JVector2D()
Default constructor.
JCircle2D(const JVector2D &point, const double r)
Constructor.
double getX() const
Get x position.
void set(const JVector2D &p0, const JVector2D &p1)
Set circle.
friend JReader & operator>>(JReader &in, JCircle2D &circle)
Read circle from input.
void configure(T __begin, T __end, const JVector2D &p0, const JVector2D &p1)
Determine smallest enclosing circle.
double getY() const
Get y position.
JCircle2D(T __begin, T __end)
Constructor.
Data structure for vector in two dimensions.