From: Stefan Csomor Date: Sun, 13 Jan 2002 15:59:44 +0000 (+0000) Subject: added missing functions X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/adb1282e8ec3645568f5ebc9d1425ba0d109286f added missing functions git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@13546 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/common/geometry.cpp b/src/common/geometry.cpp index d53b1f9a57..bf8591fd67 100644 --- a/src/common/geometry.cpp +++ b/src/common/geometry.cpp @@ -187,6 +187,42 @@ wxDouble wxPoint2DInt::GetVectorAngle() } +void wxPoint2DInt::SetVectorAngle( wxDouble degrees ) { + wxDouble length = this->GetVectorLength() ; + m_x = length * cos( degrees / 180 * 3.14159265359 ) ; + m_y = length * sin( degrees / 180 * 3.14159265359 ) ; +} + +wxDouble wxPoint2DDouble::GetVectorAngle() const +{ + if ( m_x == 0 ) + { + if ( m_y >= 0 ) + return 90 ; + else + return 270 ; + } + if ( m_y == 0 ) + { + if ( m_x >= 0 ) + return 0 ; + else + return 180 ; + } + wxDouble deg = atan2( m_y , m_x ) * 180 / 3.14159265359 ; + if ( deg < 0 ) + { + deg += 360 ; + } + return deg ; +} + +void wxPoint2DDouble::SetVectorAngle( wxDouble degrees ) { + wxDouble length = this->GetVectorLength() ; + m_x = length * cos( degrees / 180 * 3.14159265359 ) ; + m_y = length * sin( degrees / 180 * 3.14159265359 ) ; +} + // wxRect2D bool wxRect2DInt::Intersects( const wxRect2DInt &rect ) const