28#ifndef QWT_POINT_POLAR_H
29#define QWT_POINT_POLAR_H
31#include "qwt_global.h"
52 void setPoint(
const QPointF& );
53 QPointF toPoint()
const;
58 double radius()
const;
59 double azimuth()
const;
64 void setRadius(
double );
65 void setAzimuth(
double );
80#ifndef QT_NO_DEBUG_STREAM
101 : m_azimuth( azimuth )
109 return m_radius >= 0.0;
115 return m_radius == 0.0;
154inline QPoint qwtPolar2Pos(
const QPoint& pole,
155 double radius,
double angle )
157 const double x = pole.x() + radius * std::cos( angle );
158 const double y = pole.y() - radius * std::sin( angle );
160 return QPoint( qRound( x ), qRound( y ) );
163inline QPoint qwtDegree2Pos(
const QPoint& pole,
164 double radius,
double angle )
166 return qwtPolar2Pos( pole, radius, angle / 180.0 * M_PI );
169inline QPointF qwtPolar2Pos(
const QPointF& pole,
170 double radius,
double angle )
172 const double x = pole.x() + radius * std::cos( angle );
173 const double y = pole.y() - radius * std::sin( angle );
175 return QPointF( x, y);
178inline QPointF qwtDegree2Pos(
const QPointF& pole,
179 double radius,
double angle )
181 return qwtPolar2Pos( pole, radius, angle / 180.0 * M_PI );
184inline QPointF qwtFastPolar2Pos(
const QPointF& pole,
185 double radius,
double angle )
187 const double x = pole.x() + radius * qFastCos( angle );
188 const double y = pole.y() - radius * qFastSin( angle );
190 return QPointF( x, y);
193inline QPointF qwtFastDegree2Pos(
const QPointF& pole,
194 double radius,
double angle )
196 return qwtFastPolar2Pos( pole, radius, angle / 180.0 * M_PI );
202 qSqrt( qwtSqr( pos.x() ) + qwtSqr( pos.y() ) ) );
A point in polar coordinates.
Definition qwt_point_polar.h:46
double radius() const
Returns the radius.
Definition qwt_point_polar.h:119
void setRadius(double)
Sets the radius to radius.
Definition qwt_point_polar.h:143
void setAzimuth(double)
Sets the azimuth to azimuth.
Definition qwt_point_polar.h:149
QwtPointPolar()
Constructs a null point, with a radius and azimuth set to 0.0.
Definition qwt_point_polar.h:88
bool isValid() const
Returns true if radius() >= 0.0.
Definition qwt_point_polar.h:107
double azimuth() const
Returns the azimuth.
Definition qwt_point_polar.h:125
bool isNull() const
Returns true if radius() >= 0.0.
Definition qwt_point_polar.h:113
double & rRadius()
Returns the radius.
Definition qwt_point_polar.h:131
double & rAzimuth()
Returns the azimuth.
Definition qwt_point_polar.h:137