11 #ifndef _QWT_POINT_POLAR_H_ 
   12 #define _QWT_POINT_POLAR_H_ 1 
   14 #include "qwt_global.h" 
   17 #ifndef QT_NO_DEBUG_STREAM 
   36     void setPoint( 
const QPointF & );
 
   37     QPointF toPoint() 
const;
 
   42     double radius() 
const;
 
   43     double azimuth() 
const;
 
   48     void setRadius( 
double );
 
   49     void setAzimuth( 
double );
 
   88     d_azimuth( other.d_azimuth ),
 
   89     d_radius( other.d_radius )
 
   96     return d_radius >= 0.0;
 
  102     return d_radius == 0.0;
 
  141 #ifndef QT_NO_DEBUG_STREAM 
  142 QWT_EXPORT QDebug operator<<( QDebug, 
const QwtPointPolar & );
 
  145 inline QPoint qwtPolar2Pos( 
const QPoint &pole,
 
  146     double radius, 
double angle )
 
  148     const double x = pole.x() + radius * qCos( angle );
 
  149     const double y = pole.y() - radius * qSin( angle );
 
  151     return QPoint( qRound( x ), qRound( y ) );
 
  154 inline QPoint qwtDegree2Pos( 
const QPoint &pole,
 
  155     double radius, 
double angle )
 
  157     return qwtPolar2Pos( pole, radius, angle / 180.0 * M_PI );
 
  160 inline QPointF qwtPolar2Pos( 
const QPointF &pole,
 
  161     double radius, 
double angle )
 
  163     const double x = pole.x() + radius * qCos( angle );
 
  164     const double y = pole.y() - radius * qSin( angle );
 
  166     return QPointF( x, y);
 
  169 inline QPointF qwtDegree2Pos( 
const QPointF &pole,
 
  170     double radius, 
double angle )
 
  172     return qwtPolar2Pos( pole, radius, angle / 180.0 * M_PI );
 
  175 inline QPointF qwtFastPolar2Pos( 
const QPointF &pole,
 
  176     double radius, 
double angle )
 
  178 #if QT_VERSION < 0x040601 
  179     const double x = pole.x() + radius * ::cos( angle );
 
  180     const double y = pole.y() - radius * ::sin( angle );
 
  182     const double x = pole.x() + radius * qFastCos( angle );
 
  183     const double y = pole.y() - radius * qFastSin( angle );
 
  186     return QPointF( x, y);
 
  189 inline QPointF qwtFastDegree2Pos( 
const QPointF &pole,
 
  190     double radius, 
double angle )
 
  192     return qwtFastPolar2Pos( pole, radius, angle / 180.0 * M_PI );