Jpp
17.0.0
the software that should make you happy
|
Data structure for circle in two dimensions. More...
#include <JCircle2D.hh>
Public Member Functions | |
JCircle2D () | |
Default constructor. More... | |
JCircle2D (const JVector2D &point, const double r) | |
Constructor. More... | |
JCircle2D (const JVector2D &p0, const JVector2D &p1) | |
Constructor. More... | |
JCircle2D (const JVector2D &p0, const JVector2D &p1, const JVector2D &p2, const double precision=std::numeric_limits< double >::epsilon()) | |
Constructor. More... | |
template<class T > | |
JCircle2D (T __begin, T __end, const double precision=std::numeric_limits< double >::epsilon()) | |
Constructor. More... | |
template<class JElement_t , class JAllocator_t > | |
JCircle2D (const array_type< JElement_t, JAllocator_t > &buffer, const double precision=std::numeric_limits< double >::epsilon()) | |
Constructor. More... | |
double | getRadius () const |
Get radius. More... | |
void | set (const JVector2D &p0, const JVector2D &p1) |
Set circle. More... | |
void | set (const JVector2D &p0, const JVector2D &p1, const JVector2D &p2, const double precision=std::numeric_limits< double >::epsilon()) |
Set circle. More... | |
template<class T > | |
void | set (T __begin, T __end, const double precision=std::numeric_limits< double >::epsilon()) |
Set circle. More... | |
bool | is_inside (const JVector2D &pos, const double precision=std::numeric_limits< double >::min()) const |
Check whether given point is inside circle. More... | |
const JPosition2D & | getPosition () const |
Get position. More... | |
JPosition2D & | getPosition () |
Get position. More... | |
void | setPosition (const JVector2D &pos) |
Set position. More... | |
operator JAngle2D () const | |
Type conversion operator. More... | |
operator JVersor2D () const | |
Type conversion operator. More... | |
JPosition2D & | rotate (const JRotation2D &R) |
Rotate. More... | |
JPosition2D & | rotate_back (const JRotation2D &R) |
Rotate back. More... | |
double | getDot (const JAngle2D &angle) const |
Get dot product. More... | |
double | getDot (const JVersor2D &versor) const |
Get dot product. More... | |
double | getDot (const JVector2D &point) const |
Get dot product. More... | |
double | getPerpDot (const JAngle2D &angle) const |
Get perpendicular dot product. More... | |
double | getPerpDot (const JVersor2D &dir) const |
Get perpendicular dot product. More... | |
double | getPerpDot (const JVector2D &point) const |
Get perpendicular dot product. More... | |
double | getX () const |
Get x position. More... | |
double | getY () const |
Get y position. More... | |
JVector2D & | negate () |
Negate vector. More... | |
JVector2D & | add (const JVector2D &vector) |
Add vector. More... | |
JVector2D & | sub (const JVector2D &vector) |
Subtract vector. More... | |
JVector2D & | mul (const double factor) |
Scale vector. More... | |
JFirst_t & | mul (const JSecond_t &object) |
Multiply with object. More... | |
JVector2D & | div (const double factor) |
Scale vector. More... | |
JVector2D & | transform (const JMatrix2D &T) |
Transform. More... | |
bool | equals (const JVector2D &vector, const double precision=std::numeric_limits< double >::min()) const |
Check equality. More... | |
double | getLengthSquared () const |
Get length squared. More... | |
double | getLength () const |
Get length. More... | |
double | getDistanceSquared (const JVector2D &point) const |
Get squared of distance to point. More... | |
double | getDistance (const JVector2D &point) const |
Get distance to point. More... | |
Protected Attributes | |
double | __r |
double | __x |
double | __y |
Private Member Functions | |
template<class T > | |
void | configure (T __begin, T __end, const JVector2D &p0, const double precision) |
Determine smallest enclosing circle. More... | |
template<class T > | |
void | configure (T __begin, T __end, const JVector2D &p0, const JVector2D &p1, const double precision) |
Determine smallest enclosing circle. More... | |
Friends | |
std::istream & | operator>> (std::istream &in, JCircle2D &circle) |
Read circle from input stream. More... | |
std::ostream & | operator<< (std::ostream &out, const JCircle2D &circle) |
Write circle to output stream. More... | |
JReader & | operator>> (JReader &in, JCircle2D &circle) |
Read circle from input. More... | |
JWriter & | operator<< (JWriter &out, const JCircle2D &circle) |
Write circle to output. More... | |
Data structure for circle in two dimensions.
Definition at line 33 of file JCircle2D.hh.
|
inline |
Default constructor.
Definition at line 40 of file JCircle2D.hh.
|
inline |
Constructor.
point | point |
r | radius |
Definition at line 52 of file JCircle2D.hh.
Constructor.
Determines circle through two points.
p0 | first point |
p1 | second point |
Definition at line 66 of file JCircle2D.hh.
|
inline |
Constructor.
Determines circle through three points.
p0 | first point |
p1 | second point |
p2 | third point |
precision | precision |
Definition at line 84 of file JCircle2D.hh.
|
inline |
Constructor.
Determines smallest enclosing circle around set of points.
The type of data should have the following member methods:
double getX(); // x coordinate double getY(); // y coordinate
Reference:
Computational Geometry Algorithms and Applications
Authors: de Berg, M., Cheong, O., van Kreveld, M., Overmars, M.
__begin | begin of data |
__end | end of data |
precision | precision |
Definition at line 114 of file JCircle2D.hh.
|
inline |
Constructor.
buffer | input data |
precision | precision |
Definition at line 130 of file JCircle2D.hh.
|
inline |
Set circle.
Determines circle through two points.
p0 | first point |
p1 | second point |
Definition at line 157 of file JCircle2D.hh.
|
inline |
Set circle.
Determines circle through three points.
p0 | first point |
p1 | second point |
p2 | third point |
precision | precision |
Definition at line 175 of file JCircle2D.hh.
|
inline |
Set circle.
Determines smallest enclosing circle around set of points.
double getX(); // x coordinate double getY(); // y coordinate
__begin | begin of data |
__end | end of data |
precision | precision |
Definition at line 226 of file JCircle2D.hh.
|
inline |
Check whether given point is inside circle.
pos | position |
precision | precision |
Definition at line 270 of file JCircle2D.hh.
|
inlineprivate |
Determine smallest enclosing circle.
__begin | begin of data |
__end | end of data |
p0 | point on circle |
precision | precision |
Definition at line 358 of file JCircle2D.hh.
|
inlineprivate |
Determine smallest enclosing circle.
__begin | begin of data |
__end | end of data |
p0 | point on circle |
p1 | point on circle |
precision | precision |
Definition at line 387 of file JCircle2D.hh.
|
inlineinherited |
Get position.
Definition at line 98 of file JPosition2D.hh.
|
inlineinherited |
Get position.
Definition at line 109 of file JPosition2D.hh.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Type conversion operator.
Definition at line 142 of file JPosition2D.hh.
|
inlineinherited |
Rotate.
R | rotation matrix |
Definition at line 154 of file JPosition2D.hh.
|
inlineinherited |
Rotate back.
R | rotation matrix |
Definition at line 168 of file JPosition2D.hh.
|
inlineinherited |
Get dot product.
angle | angle |
Definition at line 182 of file JPosition2D.hh.
|
inlineinherited |
Get dot product.
versor | versor |
Definition at line 196 of file JPosition2D.hh.
|
inlineinherited |
Get dot product.
point | vector |
Definition at line 235 of file JVector2D.hh.
|
inlineinherited |
Get perpendicular dot product.
angle | angle |
Definition at line 210 of file JPosition2D.hh.
|
inlineinherited |
Get perpendicular dot product.
dir | direction |
Definition at line 224 of file JPosition2D.hh.
|
inlineinherited |
Get perpendicular dot product.
point | vector |
Definition at line 249 of file JVector2D.hh.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Subtract vector.
vector | vector |
Definition at line 115 of file JVector2D.hh.
|
inlineinherited |
Scale vector.
factor | multiplication factor |
Definition at line 130 of file JVector2D.hh.
|
inlineinherited |
Multiply with object.
object | object |
Definition at line 357 of file JMath.hh.
|
inlineinherited |
Scale vector.
factor | division factor |
Definition at line 145 of file JVector2D.hh.
|
inlineinherited |
Check equality.
vector | vector |
precision | precision |
Definition at line 175 of file JVector2D.hh.
|
inlineinherited |
|
inlineinherited |
Get length.
Definition at line 199 of file JVector2D.hh.
|
inlineinherited |
Get squared of distance to point.
point | point |
Definition at line 211 of file JVector2D.hh.
|
inlineinherited |
Get distance to point.
point | point |
Definition at line 223 of file JVector2D.hh.
|
friend |
Read circle from input stream.
in | input stream |
circle | circle |
Definition at line 284 of file JCircle2D.hh.
|
friend |
Write circle to output stream.
out | output stream |
circle | circle |
Definition at line 300 of file JCircle2D.hh.
Read circle from input.
in | reader |
circle | circle |
Definition at line 319 of file JCircle2D.hh.
Write circle to output.
out | writer |
circle | circle |
Definition at line 335 of file JCircle2D.hh.
|
protected |
Definition at line 345 of file JCircle2D.hh.
|
protectedinherited |
Definition at line 257 of file JVector2D.hh.
|
protectedinherited |
Definition at line 258 of file JVector2D.hh.