ball< C, R, V > Class Template Reference

#include <ball.hpp>

List of all members.

Public Types

Public Member Functions

Friends


Detailed Description

template<typename C, typename R = Default_radius_type(C), typename V = typename ball_variant_helper< C >::BV>
class mmx::ball< C, R, V >

Definition at line 32 of file ball.hpp.


Member Typedef Documentation

typedef implementation<ball_rounding,V> Rnd

Definition at line 39 of file ball.hpp.


Constructor & Destructor Documentation

ball (  )  [inline]

Definition at line 42 of file ball.hpp.

00042 {}

ball ( const T c2  )  [inline]

Definition at line 43 of file ball.hpp.

00043                                          :
00044     c (as<C> (c2)), r (0) {
00045       Rnd::add_additive_error (*this); }
  template<typename CT, typename RT, typename VT>

ball ( const ball< CT, RT, VT > &  z  )  [inline]

Definition at line 47 of file ball.hpp.

References R, and XVERIFY.

00047                                        :
00048     c (as<C> (center (z))), r (as<R> (radius (z))) {
00049       XVERIFY (r >= 0, "negative radius", r);
00050       // FIXME: we should pre-correct the radius of z as well
00051       Rnd::add_additive_error (*this); }
  inline ball (const C& x):

ball ( const C x  )  [inline]

Definition at line 52 of file ball.hpp.

00052                           :
00053     c (x), r (0) {}
  inline ball (const C& c2, const R& r2):

ball ( const C c2,
const R &  r2 
) [inline]

Definition at line 54 of file ball.hpp.

References XVERIFY.

00054                                         :
00055     c (c2), r (r2) {
00056       XVERIFY (r >= 0, "negative radius", r); }
  inline ball (const C& c2, const R& r2, bool adjust):

ball ( const C c2,
const R &  r2,
bool  adjust 
) [inline]

Definition at line 57 of file ball.hpp.

References XVERIFY.

00057                                                      :
00058     c (c2), r (r2) {
00059       XVERIFY (r >= 0, "negative radius", r);
00060       if (adjust) Rnd::add_additive_error (*this); }
  inline ball (const Real_type(Ball)& x, const Real_type(Ball)& y):

ball ( const Real_type(ball< C, R, V >)&  x,
const Real_type(ball< C, R, V >)&  y 
) [inline]

Definition at line 61 of file ball.hpp.

References Real_type, and XVERIFY.

00061                                                                   :
00062     c (gaussian (center (x), center (y))),
00063     r (Up::hypot (radius (x), radius (y))) {
00064       XVERIFY (r >= 0, "negative radius", r);
00065       Rnd::add_additive_error (*this); }
  friend C  center LESSGTR (const Ball& z);


Member Function Documentation

ball< C, R, V > & operator<<= ( const xint shift  )  [inline]

Definition at line 676 of file ball.hpp.

00676                                                        {
00677   typedef implementation<ball_shift,V> Impl;
00678   Impl::shiftl (*this, shift); return *this; }

ball< C, R, V > & operator>>= ( const xint shift  )  [inline]

Definition at line 679 of file ball.hpp.

00679                                                        {
00680   typedef implementation<ball_shift,V> Impl;
00681   Impl::shiftr (*this, shift); return *this; }

typedef Round_up (  ) 

Friends And Related Function Documentation

R& radius LESSGTR ( ball< C, R, V > &  z  )  [friend]
C& center LESSGTR ( ball< C, R, V > &  z  )  [friend]
R radius LESSGTR ( const ball< C, R, V > &  z  )  [friend]
C center LESSGTR ( const ball< C, R, V > &  z  )  [friend]

The documentation for this class was generated from the following file:

Generated on 6 Dec 2012 for numerix by  doxygen 1.6.1