Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Index: OSGMath.h
- ===================================================================
- --- OSGMath.h (revision 91664)
- +++ OSGMath.h (working copy)
- @@ -70,6 +70,34 @@
- return a.x() * b.y() - b.x() * a.y();
- }
- +/**
- + * wrapAngle - Приводит значение угла к соответствующему значению из полуинтервала [-Pi, Pi)
- + */
- +inline double wrapAngle(double& angle)
- +{
- + if ((angle >= -M_PI) && (angle < M_PI))
- + return angle;
- +
- + else if (angle > -M_PI)
- + return wrapAngle(angle -= 2*M_PI);
- + else
- + return wrapAngle(angle += 2*M_PI);
- }
- +/**
- + * wrapAngle0_2Pi - Приводит значение угла к соответствующему значению из полуинтервала [0, 2*Pi)
- + */
- +inline double wrapAngle0_2Pi(double& angle)
- +{
- + if ((angle >= 0) && (angle < 2*M_PI))
- + return angle;
- +
- + else if (angle > 0)
- + return wrapAngle0_2Pi(angle -= 2*M_PI);
- + else
- + return wrapAngle0_2Pi(angle += 2*M_PI);
- +}
- +
- +}
- +
- #endif
- \ No newline at end of file
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement