------------------------------------------------------------------------
| 99 | |
| 100 | //------------------------------------------------------------------------ |
| 101 | inline unsigned ellipse::vertex(double* x, double* y) |
| 102 | { |
| 103 | if(m_step == m_num) |
| 104 | { |
| 105 | ++m_step; |
| 106 | return path_cmd_end_poly | path_flags_close | path_flags_ccw; |
| 107 | } |
| 108 | if(m_step > m_num) return path_cmd_stop; |
| 109 | double angle = double(m_step) / double(m_num) * 2.0 * pi; |
| 110 | if(m_cw) angle = 2.0 * pi - angle; |
| 111 | *x = m_x + cos(angle) * m_rx; |
| 112 | *y = m_y + sin(angle) * m_ry; |
| 113 | m_step++; |
| 114 | return ((m_step == 1) ? path_cmd_move_to : path_cmd_line_to); |
| 115 | } |
| 116 | |
| 117 | } |
| 118 |
no outgoing calls
no test coverage detected