-
Notifications
You must be signed in to change notification settings - Fork 49
New Angle Classes #115
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
New Angle Classes #115
Conversation
BatchelorJ
commented
Sep 24, 2020
- Moved Angle classes and functions into new module geodepy.angles
- Test Coverage of geodepy.angles in geodepy.tests.test_angles
- Added 3 new Angle classes (DECAngle, HPAngle, GONAngle) for class representation and method access for Decimal Degrees, HP format angles and Gradians.
- Added support for Gradians as floats
- Added functionality to read Degrees, Minutes and Seconds space-delimited strings into DMSAngle object
- Added functionality to read Degrees Decimal Minutes space-delimited strings into DDMAngle object
- Added conversion functions and methods between all supported angle types
- Expanded test coverage
- Backwards-compatibility supported through import of classes and functions into geodepy.convert module
…oved more functions over from convert to angles. Added __round__ method to classes.
…) functions, complete test suite
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@BatchelorJ, wow! That's mountain of work. These changes are well thought out, thanks for doing this. My only reservation is allowing HP notation to be stored as a float. Could cause problems?
I certainly agree that it can cause issues! Given that we've already implemented these functions with HP notation stored as floats in GeodePy previously, I didn't want to remove this functionality and break other users code. Also lots of other software stores HP notation as floats and I'm trying not to be too prescriptive, rather giving options for users to store data in a class if they want better type-certainty. It's more efficient but less safe to store HP notation as floats rather than in a class object, so for some applications floats may be preferred. |
|
Point taken. Cheers |