Skip to content
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

Added docstrings to Pipelines.py, clusterCalc.py, pycgmCalc.py, pycgmIO.py, and pycgmKinetics.py #15

Merged
merged 38 commits into from
Oct 28, 2020

Conversation

niravkin
Copy link
Contributor

No description provided.

Copy link
Owner

@cadop cadop left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall pretty good, just check the Returns


Returns
-------
r : list of list
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Double check this, I'm not sure Returns can be formatted like this (and I don't think its true). Return can be one value, but that value can be a list or tuple, so thats how it should be shown


Returns
-------
tuple
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please format as,

angles, jcs : tuple
    Description

@niravkin niravkin changed the title Added docstrings to pycgmCalc.py Added docstrings to several files Sep 29, 2020
in the case of a missing marker.

It is used in:
pycgmStatic.py - lines 105-115
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be a bit more descriptive. Originally it was as a note, but with other files being changed with docstrings these values are likely to change, so at least include function names


Returns
-------
r : array
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same issue raised in the other docstrings

List of dict. Indices of `motiondata` correspond to frames
in the trial. Keys in the dictionary are marker names and
values are xyz coordinates of the corresponding marker.
Example for two frames of trial:
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not 100% sure, but I don't think this is correct formatting. Generally it is also alot to put in a return description, try to put some of this in the main description of what the function does as well.


Returns
-------
dict
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

missing :

{marker1_name : [x1, y1, z1], marker2_name: [x2, y2, z2], ...}]

"""
motiondata = []
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please fix this commit change. It should just be addition of the docstring, not the removal and replacement of the code so its easier to track modifications.

@niravkin niravkin marked this pull request as draft September 30, 2020 13:27
@niravkin niravkin changed the base branch from master to dev October 5, 2020 13:49
@niravkin niravkin marked this pull request as ready for review October 13, 2020 04:16
>>> vsk = {'MeanLegLength':940.0, 'LeftKneeWidth':105.0, 'RightAnkleWidth':70.0}
>>> labels, data = splitVskDataDict(vsk)

>>> py2labels = ['RightAnkleWidth', 'LeftKneeWidth', 'MeanLegLength']
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is the data from py2 and py3 actually different? I think this should be the same, and the only difference here is which python version its using to complete the same task. Preferably this is hidden from the user, so the docstring should not be showing it (also the docstring can't force the python version so it won't test it anyway).

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I changed the doctest to use a loop to verify that the values in labels and the corresponding values in data match.

array([-1010.098999, 3.508968, 1336.794434])

#There is no unlabeled data in frame 0
>>> unlabeledMotionData[0]
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we find a frame where there is unlabeled data so it shows what will happen as well?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

From our sample files, this is the only CSV file I could find to use for testing loadCSV(), and it has no frames with unlabeled data. I could edit the existing CSV file, or create a new one, to show what unlabeled data looks like. I added further testing in loadC3D to show unlabeled data in 59993_Frame_Static.c3d.

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you try and use the pycgm functions to: 1) load 599...c3d file 2) create some unlabeled data 3) save a csv 4) use that csv in this example. If you do this, please make a new pull for adding the additional sample data.

Otherwise, I think this is clearer with the explanation that there is no unlabeled data.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I created a CSV version of Sample_Static.c3d and verified that it produces the same output using both loadC3D and loadCSV, but loadC3D had a small bug that I've created an issue for that needs fixing first before I can commit the new version of this doctest that uses Sample_Static.csv: #35 .

keys : array
List of segment labels.

"""
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The other function like this outputs what labels there are. I think this one should stay consistent then.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I added doctests to this function and functions similar to it.


See Also
--------
pycgmKinetics.getKinetics : equivalent function; see for details.
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does this hyperlink correctly in the built html docs?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I changed it to pyCGM_Single.pycgmKinetics.getKinetics to get a proper hyperlink.

>>> start = 0
>>> end = 3
>>> angles, jcs = Calc(start, end, data, vsk)

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think this space is needed

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I removed the space here and other places I had unnecessary spaces.

Copy link
Owner

@cadop cadop left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall it is good, thank you. There are just a few tweaks left to resolve.

>>> cutoff = 20
>>> Fs = 120
>>> butterFilter(data, cutoff, Fs)
array([-1003.58359202, -1003.50390817, -1003.42363665, -1003.34252947,
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not sure about this example, it seems like nothing changes. It may be better to use numpy to create a function, add noise to is, and show that it filters that noise

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I changed the doctest to create a sin wave, add noise to it, and then filter it.

pyCGM_Single/Pipelines.py Show resolved Hide resolved
array([-1010.098999, 3.508968, 1336.794434])

#There is no unlabeled data in frame 0
>>> unlabeledMotionData[0]
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you try and use the pycgm functions to: 1) load 599...c3d file 2) create some unlabeled data 3) save a csv 4) use that csv in this example. If you do this, please make a new pull for adding the additional sample data.

Otherwise, I think this is clearer with the explanation that there is no unlabeled data.

@niravkin niravkin changed the title Added docstrings to several files Added docstrings to Pipelines.py, clusterCalc.py, pycgmCalc.py, pycgmIO.py, and pycgmKinetics.py Oct 28, 2020
>>> from .pycgmIO import loadC3D, loadVSK
>>> from .pycgmStatic import getStatic
>>> from .pyCGM_Helpers import getfilenames
>>> filenames = getfilenames(x=2)
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just add a comment on this line that says # x=2 loads the ROM sample data

Copy link
Owner

@cadop cadop left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Only one comment to fix, then we merge, Thank you

@cadop cadop merged commit 4cb5945 into cadop:dev Oct 28, 2020
niravkin pushed a commit to niravkin/pyCGM that referenced this pull request Dec 4, 2020
Adding code, docstrings, and doctests to StaticCGM
cadop added a commit that referenced this pull request May 19, 2021
* Update .gitignore

* Add sphinx build files

* Update .gitignore

* Create python-package.yml

* Update python-package.yml

* Update python-package.yml

Try to get triggers for dev as well

* Update python-package.yml

Don't need to test so many python versions for now. Just 2 and 3

* Update python-package.yml

Add excludes for flake8 on multi/hpc folders since they will be integrated later anyway

* Add some flake8 ignores

Some issues with python 2 syntax and the clusters file that is under progress.  Besides these, flake8 issues shouldn't be ignored

* Update python-package.yml

Missed one of the flake8 lines for ignoring multi/hpc

* Update python-package.yml

add pytest for doctest, ignoring hpc and multi folders

* Update python-package.yml

Split pytest runs

* Update python-package.yml

Try to split

* Fixed improper indentation in dataAsDict in pycgmIO.py

* Add temporary fixes for relative imports or python 2 imports

* Update setup.py

Add scipy to install

* Add autosummary and toc

* Delete settings.json

* change to beta versioning and lowercase cgm

* Fixing imports and directory path strings in pycgm_embed.py (#32)

* Resolved imports and directory path strings in pycgm_embed.py

* Changed the except case in pycgm_embed.py

* Reformatting and Creating Docstrings for pyCGM.py, pycgmStatic.py, pycgmKinetics.py, pyCGM_Helpers.py and Pipelines.py (#8)

* Several Docstrings Reformatted

* Reformatted: pelvisJointCenter,  hipJointCenter, hipAxisCenter with doctests

* Reformatted and doctested: kneeJointCenter and ankleJointCenter

* Reformatted and doctested: footJointCenter, headJC, and thoraxJC

* Reformatted and doctested: findwandmarker and findshoulderJC

* pyCGM_Single/pyCGM.py Reformatted and Doctested: shoulderAxisCalc

Updated several previous parameters in other functions, including wand and thorax.

* Update c3dez.py

Remove the check for main module.

* Revised pelvisJointCenter

* Reformatted: hipJointCenter, hipAxisCenter, kneeJointCenter

* Reformatted: Several docstrings in pyCGM.py
Specifically ankleJointCenter, footJointCenter, headJC, thoraxJC.

* Reformatted several docstrings in pyCGM_Single/pyCGM.py
Specifically: findwandmarker, findshoulderJC, elbowJointCenter

* Reformatted several docstrings in pyCGM_Single/pyCGM.py
Specifically: wristJointCenter, handJointCenter, findJointC

* Reformatted several docstrings in pyCGM_Single/pyCGM.py
Specifically:  getangle_sho, getangle_spi, getangle

* Created several docstrings: pyCGM_Single/pyCGM.py
Specifically for: cross, getPelangle, getHeadangle

* Created several docstrings: pyCGM_Single/pyCGM.py
Specifically created docstrings for norm2d, norm3d, and normDiv
Additionally fixed minor mistakes on other docstrings and added "from
math import *" to all doctests.

* Resolved Several Changes in Docstrings in pyCGM_Single/pyCGM.py
In addition, added a docstring to JointAngleCalc and made several minor
adjustments to docstrings.

* Fixed a doctest, verified all doctests work in pyCGM_Single/pyCGM.py
Doctests: 26 docstrings tested with 170 executed lines
that passed assertion.

* Revised doctest relative imports

* Created several docstrings: pyCGM_Single/pycgmStatic.py
Specifically for the functions:  rotmat, getDist, getStatic

* Created several docstrings: pyCGM_Single/pycgmStatic.py
Specifically for the functions: average, IADcalculation,staticCalculationHead

* Created several docstrings: pyCGM_Single/pycgmStatic.py
Specifically for the functions:   headoffCalc, staticCalculation, pelvisJointCenter,hipJointCenter,hipAxisCenter, kneeJointCenter, ankleJointCenter

* Created several docstrings: pyCGM_Single/pycgmStatic.py
Specifically for the functions:   footJointCenter, headJC, uncorrect_footaxis, rotaxis_footflat

* Created several docstrings: pyCGM_Single/pycgmStatic.py
Specifically for the functions: rotaxis_nonfootflat, getankleangle, findJointC, norm2d, norm3d, normDiv, matrixmult, cross

* Created several docstrings: pyCGM_Single/pycgmKinetics.py
Specifically for the functions: f, dot, length, vector, unit, distance, scale

* Created several docstrings: pyCGM_Single/pycgmKinetics.py
Specifically for the functions: add, pnt2line, findL5_Pelvis, findL5_Thorax

* Created several docstrings: pyCGM_Single/Pipelines.py
Specifically for the function: clearMarker

* Created Doctest for JointAngleCalc in pyCGM.py

* Created several docstrings: pyCGM_Single/Pipelines.py

* Created docstring for getfilenames in pyCGM_Helpers.py

* Minor docstring adjustments to several files.

* Added doctests to JointAngleCalc and getStatic

* Fixed various parameters and doctests

* Improved numerous doctest import statements

* Fixed minor docstring errors

* Adjusted the style for several docstrings

* Added math import to footJointCenter in pycgmStatic.py
In addition, fixed the precision of doctests floats in pycgmStatic.py

* Fixed precision for doctests in pycgmKinetics.py

* Fixed precision for doctests in pyCGM.py

* Fixed minor errors in doctests.

* Fixed import statements for doctests in several files

* Fixed getangle doctest in pyCGM.py

* Removed unnecessary normalize_whitespace doctest flags

* Filled in the doctest for filtering in Pipelines.py

* Fixed docstring examples, fixed return descriptions

* Fixed return descriptions for several docstrings in pyCGM.py

* Fixed several docstring descriptions in pyCGM.py

* Fixed descriptions and doctests in several files for Sphinx

* Added skips to c3d.py doctests

Co-authored-by: cadop <cadop@users.noreply.github.com>

* Creating Sample_Static.csv (#34)

* Fixed mydictunlabeled not being reset in loadC3D (#36)

* Added docstrings to Pipelines.py, clusterCalc.py, pycgmCalc.py, pycgmIO.py, and pycgmKinetics.py (#15)

* Added docstrings to pycgmCalc.py

* Reformatted return values for Calc and calcFrames

* Revised docstrings

* Added docstrings in clusterCalc and pycgmIO

* Fixed tuple formatting in pycgmIO

* Added docstrings for loadCSV and loadC3D

* Reverted indentation changes for git change clarity

* Fixed indentation of docstring and doctest for createVskDataDict

* Added several doctests and changed docstrings in pycgmIO.py

* Changed and added docstrings and doctests in pycgmIO.py

* Added more docstrings and doctests in pycgmIO

* Added more docstrings and doctests and removed print statements used for testing in loadCSV

* Changed docstrings and added doctests in pycgmCalc

* Added docstrings and doctests in clusterCalc, small changes in pycgmIO

* Changed doctests in pycgmCalc.py to use helper functions from pyCGM_Helpers.py

* Small changes in docstrings, added doctest to writeResult

* Changed doctests in clusterCalc and pycgmCalc to use numpy.around

* Added doctests to writeKinetics and make_sure_path_exists in pycgmIO

* Added docstring to printMat in clusterCalc.py

* Fixed imports in doctests in pycgmIO.py

* Cleanup merge errors

* Changed incorrect heading Arguments to Parameters in clusterCalc.py and pycgmIO.py

* Added docstrings and doctests to functions in Pipelines.py

* Added docstrings and doctests to several functions

* Changed docstrings and doctests for sphinx

* Changed docstrings and doctests for sphinx in pycgmIO

* Added doctest to getKinetics in pycgmKinetics.py

* Changed doctests for butterFilter and rigid_fill in Pipelines.py

* Changed doctests in pycgmIO to show values of cleared markers

* Revert "Changed doctests in pycgmIO to show values of cleared markers"

This reverts commit 475ec13.

* Changed doctests in Pipelines.py to show values of cleared markers

* Changed doctest in loadCSV to use new file Sample_Static.csv

* Updated doctest in loadC3D to work with fixed version

* Added comment to pycgmCalc.Calc to specify which files are loaded

* Fix spelling of Multiprocessing folder to fix #22 (#40)

* Added segments.csv to pyCGM_Single site-packages (#41)

* Update python-package.yml

Update exclude for multiprocessing

* Update python-package.yml

Update Multiprocessing excludes

* Creating test_pycgmKinetics.py (#33)

* Added unitests for functions in pycgmKinetics.py

* Added more unittests to test_pycgmKinetics.py

* Added more unittests to test_pycgmKinetics.py

* Added more unittests to test_pycgmKinetics.py

* Added more unittests for functions in pycgmKinetics.py

* Added a unittest for getKinetics in pycgmKinetics.py

* Added comments to the unittests

* Added a better description to test_f

* Added a better description to test_f

* Added better comments to all functions in the test file

* Changed unittest class name to Test_pycgmKinetics

* Creating test_clusterCalc.py (#47)

* Created test_clusterCalc.py

* Fixed wrong directory

* Added unittest for the functions in clusterCalc.py

* Removed incorrect file in __pycache__

* Creating test_pycgmIO.py (#51)

* Creating test_pycgmIO.py

* Creating test_pycgmIO.py

* Changed pytest unit tests to be in a class and use pytest.mark.parametrize

* Added unit tests for the remaining functions in pycgmIO.py

* Changed parentheses for readability and edited assert statements for consistency

* Python 2 Workflow Compatibility  (#45)

* Add branch to workflow, update Muliprocessing typo in python-package.yml

* Add Python 2 compatibility to open file and setuptools in setup.py

* Fix division by 0 issue in Pipelines.butterFilter

* Fix dictionary discrepancy in different versions in Pipelines.clearMarker

* Add temporary directory support for Python 2 in pycgmIO.py

* Create test_placeholder.py

* Fix missing blank lines in pycgmIO.writeResult doctest

* Remove test_placeholder.py, revert accidental change in Pipelines.butterFilter doctest, revert removal of spaces in pycgmIO.writeResult doctest

* Revert removal of space in pycgmIO.writeResult doctest, revert removal of spaces in python-package.yml, rename vers to pyver in setup.py for consistency with other files

* Update python_requires to more explicit version, remove assignment of version to a variable since it would only be used once

* Test downgrading python3 version to see if workflows still pass

* Add py2-compatibility to workflow branches

* Test version 3.1

* Test version 3.1.4

* Test version 3.1.x

* Revert python version to 3.8, maintain that python_requires cannot take >=3.0, <=3.5

* Remove py2-compatibility from workflow branches

* Switch doctests with temporary directories to use same strategy for both python 2 and 3

* Add io.open to allow use of encoding keyword argument in python 2

* Simplify python_requires

* Test using == in python_requires

* Test using 2.7.x instead of 2.7 in python_requires

* Revert python_requires to more verbose version that works

* Fixing int division by 2 (#53)

Changing some division by 2 errors in pyCGM.py and pycgmStatic.py. These were causing errors in 2.7 unit tests when the input was an int and they were, wrongly, doing int division. Changing them to a float fixes the issue

* More int division by 2 (#55)

Changing a couple more division by 2 errors in pyCGM.py. These were causing errors in 2.7 unit tests when the input was an int and they were, wrongly, doing int division. Changing them to a float fixes the issue

* Adding new test files to SampleData (#54)

* Adding new test files to SampleData

* Renamed test files folder

* Creating test_csvOutput.py to test CSV outputs from pyCGM (#39)

* Creating test_csvOutput.py to test CSV outputs from pyCGM

* Fixed directory errors

* Changed unit test to use a compare_csv function and the pytest format

* Fixed accidental change

* Added functions to load vicon and mokka csv files and test center of mass

* Changed CSV comparison to be column by column using indirect parametrization and fixtures

* Creating test_pycgmCalc.py to test the function in pycgmCalc (#52)

* Creating test_pycgm_utils.py (#30)

* Creating test_pycgm_utils.py

* Update test_pycgm_utils.py

* Update test_pycgm_utils.py

* Update test_pycgm_utils.py

* Update test_pycgm_utils.py

* Update test_pycgm_utils.py

* Update test_pycgm_utils.py

* Update test_pycgm_utils.py

* Update test_pycgm_utils.py

* Update test_pycgm_utils.py

* Update test_pycgm_utils.py

* Update test_pycgm_utils.py

* Update test_pycgm_utils.py

* Update test_pycgm_utils.py

* Creating test_pycgmStatic_axis.py (#50)

* Create test_pycgmStatic_axis.py

* Update test_pycgmStatic_axis.py

* Update test_pycgmStatic_axis.py

* Update test_pycgmStatic_axis.py

* Adding comments

* Update python-package.yml

* Update test_pycgmStatic_axis.py

* Update test_pycgmStatic_axis.py

* Update test_pycgmStatic_axis.py

* Update test_pycgmStatic_axis.py

* Updated several comments and fixed the function names for the unittests (#2)

Co-authored-by: thepeytongreen <71730256+thepeytongreen@users.noreply.github.com>

* Update test_pycgmStatic_axis.py

Co-authored-by: Gabriel Veras <56079261+GVeras@users.noreply.github.com>

* Creating test_Pipelines.py (#37)

* Added unittests for functions in Pipelines.py

* Changed class name to TestPipelines

* Added unit tests for transform_from_static and transform_from_mov

* Added unittests to segmentFinder and rigid_fill

* Added comments to unittests in test_Pipelines.py

* Restructured and added comments to several tests

* Restructured more tests and added more comments for clarity

* Changed unit tests for functions in Pipelines.py to use pytest.mark.parametrize

* Changed pytest unit tests to be in a class and used pep8 names

* Changed parameters in test_clearMarker for readability

* Split into two classes, added comments explaining functions

* Added mock import to python-package.yml

* Changed spacing in parametrize tuples for readability

* Changed wording of comments for clarity

* Creating test_pycgmStatic_utils.py (#49)

* Create test_pycgmStatic_utils.py

* Update test_pycgmStatic_utils.py

* Update test_pycgmStatic_utils.py

* Update test_pycgmStatic_utils.py

* Update test_pycgmStatic_utils.py

* Update test_pycgmStatic_utils.py

* Update test_pycgmStatic_utils.py

* Update test_pycgmStatic_utils.py

* Update pycgmStatic.py

* Update test_pycgmStatic_utils.py

* Update test_pycgmStatic_utils.py

* Update test_pycgmStatic_utils.py

* Creating test_pycgm_axis.py (#20)

* Creating some joint angle tests

Adding some more unit tests. I had to use different types of asserts for each test due to the different combinations of multi-dimensional lists and numpy arrays

* Create test_pycgm_axis.py

* Fixed a couple things

* Update test_pycgm_axis.py

* Update test_pycgm_axis.py

* Update test_pycgm_axis.py

* Update test_pycgm_axis.py

* Update test_pycgm_axis.py

* Update test_pycgm_axis.py

* Creating some joint angle tests

Adding some more unit tests. I had to use different types of asserts for each test due to the different combinations of multi-dimensional lists and numpy arrays

* Create test_pycgm_axis.py

* Fixed a couple things

* Update test_pycgm_axis.py

* Update test_pycgm_axis.py

* Update test_pycgm_axis.py

* Update test_pycgm_axis.py

* Update test_pycgm_axis.py

* Update test_pycgm_axis.py

* Update test_pycgm_axis.py

* Update test_pycgm_axis.py

* Update test_pycgm_axis.py

* Update test_pycgm_axis.py

* Update test_pycgm_axis.py

* Update test_pycgm_axis.py

* Update test_pycgm_axis.py

* Update python-package.yml

* Update test_pycgm_axis.py

* Added more commets to pycgm_axis and fixed function handlers (#1)

Co-authored-by: Gabriel Veras <56079261+GVeras@users.noreply.github.com>

* Creating test_pycgm_angle.py (#13)

* Creating test_angle_calculations.py

Creating 3 unit tests for getangle_sho, getangle_spi, and getangle

* Update test_angle_calculations.py

* Revert "Update test_angle_calculations.py"

This reverts commit 907a693.

* Update test_angle_calculations.py

* Update test_angle_calculations.py

* Update test_angle_calculations.py

* Update test_angle_calculations.py

Added more test cases for each getangle function

* Update test_pycgm_angle.py

* Update test_pycgm_angle.py

Added variables for test cases

* Update test_pycgm_angle.py

* Update test_pycgm_angle.py

Changed some comments and added tests for np.array inputs

* Update test_pycgm_angle.py

* Update test_pycgm_angle.py

* Update test_pycgm_angle.py

* Update test_pycgm_angle.py

* Update test_pycgm_angle.py

* Create workspace.xml

* Fix lint

* Delete workspace.xml

* Revert "Delete workspace.xml"

This reverts commit 2eab811.

* Revert "Fix lint"

This reverts commit 89a3f7e.

* Fix lint

* Revert "Fix lint"

This reverts commit 269ccef.

* Fix lint

* Fix lint

* Update test_pycgm_angle.py

* Update test_pycgm_angle.py

* Update test_pycgm_angle.py

* Adding comments

* Update test_pycgm_angle.py

* Update test_pycgm_angle.py

* Creating test_angle_calculations.py

Creating 3 unit tests for getangle_sho, getangle_spi, and getangle

* Update test_angle_calculations.py

* Revert "Update test_angle_calculations.py"

This reverts commit 907a693.

* Update test_angle_calculations.py

* Update test_angle_calculations.py

* Update test_angle_calculations.py

* Update test_angle_calculations.py

Added more test cases for each getangle function

* Update test_pycgm_angle.py

* Update test_pycgm_angle.py

Added variables for test cases

* Update test_pycgm_angle.py

* Update test_pycgm_angle.py

Changed some comments and added tests for np.array inputs

* Update test_pycgm_angle.py

* Update test_pycgm_angle.py

* Update test_pycgm_angle.py

* Update test_pycgm_angle.py

* Update test_pycgm_angle.py

* Create workspace.xml

* Fix lint

* Delete workspace.xml

* Revert "Delete workspace.xml"

This reverts commit 2eab811.

* Revert "Fix lint"

This reverts commit 89a3f7e.

* Fix lint

* Revert "Fix lint"

This reverts commit 269ccef.

* Fix lint

* Update test_pycgm_angle.py

* Update test_pycgm_angle.py

* Update test_pycgm_angle.py

* Adding comments

* Update test_pycgm_angle.py

* Update test_pycgm_angle.py

* Update python-package.yml

* Update python-package.yml

* Added comments explaining angle calculation functions

* Update test_pycgm_angle.py

Co-authored-by: niravkin <niravkseeds@gmail.com>

* Remove extra whitespace in pyCGM.py (#59)

* Add build files to gitignore

* Remove extra whitespace

* Remove trailing whitespace from pycgmIO docstrings (#65)

* remove whitespace, add space between function parameters

* undo non-whitespace changes

* undo comment spacing changes

* Remove extra whitespace in Pipelines, runpyCGM, pycgm_embed, clusterCalc (#63)

* whitespace changes to Pipelines

* whitespace changes to runpyCGM

* whitespace changes to pycgm_embed

* whitespace changes to clusterCalc

* non-whitespace changes removed

* fixed more whitespace errors

* Remove Whitespace for pyCGM_Helpers.py, pycgmCalc.py, pycgmClusters.py, pycgmKinetics.py (#64)

* Remove Whitespace

* Fix non-whitespace changes

* Fix more non-whitespace changes

* Final fixing non-whitespace changes

* Actual final fixing non-whitespace changes

* Docstring changes to Pipelines, clusterCalc, runpyCGM, and pycgm_embed (#67)

* whitespace changes to Pipelines

* whitespace changes to runpyCGM

* whitespace changes to pycgm_embed

* whitespace changes to clusterCalc

* non-whitespace changes removed

* fixed more whitespace errors

* minor docstring edits to pipelines, clustercalc, pycgm_embed, runpycgm

* restructuring doc html layout

* adding GettingStarted.rst

* fixing vocabulary of return statements

* Fixed Whitespace on pycgmStatic (#71)

* Rounding of millimeter values in Pipelines docstrings (#70)

* whitespace changes to Pipelines

* whitespace changes to runpyCGM

* whitespace changes to pycgm_embed

* whitespace changes to clusterCalc

* non-whitespace changes removed

* fixed more whitespace errors

* minor docstring edits to pipelines, clustercalc, pycgm_embed, runpycgm

* restructuring doc html layout

* adding GettingStarted.rst

* fixing vocabulary of return statements

* rounding of mm values in docstrings

* Docstring changes to pycgmIO (#69)

* remove whitespace, add space between function parameters

* remove unnecessary precision of example values

* remove space

* standardize comments

* add back precision to doctests with floats

* doctest fixes, all passing

* finalize docstrings

* properly round some doctest values, undo changes outside of docstrings

* undo rounding of writeResult doctest

* change dict description wording

* minor doctest changes

* round docstrings to 2 decimal places

* add 2 decimal places to frequency in loadCSV doctest

* Fix docstrings for pyCGM_Helper.py, pycgmCalc.py, pycgmClusters.py, pycgmKinetics.py (#68)

* Remove Whitespace

* Fix non-whitespace changes

* Fix more non-whitespace changes

* Final fixing non-whitespace changes

* Actual final fixing non-whitespace changes

* Fix docstrings

Fixed for pyCGM_Helper.py, pycgmCalc.py, pycgmClusters.py, pycgmKinetics.py

* Fix formatting of docstrings

* Fix more docstring formatting

* More format fixing

* Final docstring formatting fixing

* Final fix

* Fix decimal places

* Fix more decimal places

* Run and fix doctests

* Fix decimals

* Fix formatting

* Fix formatting

* Fix formatting

* Fix PR comments

* Fix docstring standards

* Fix c3d on python 3.9 (#76)

* Fix c3d on Python 3.9

* Make github actions test python 3.9

* Fix setup.py not installing the package correctly (#77)

* Fix github action to properly install the package

This should fail the tests. The fix will be included in the next commit

* Include all files in setup.py package data

Add .csv files and include all sample data directories instead of just including ROM directory

* Docstring Changes (#74)

* Fixed Whitespace on pycgmStatic

* Docstring Changes

* Fixed Docstring Tests

* Made changes as requested in review

* Rounded output to two decimal places in docstrings.

Changed doctests accordingly.

* Changes to doctests.

* Fixed EOF error in test.

* Fixed doctest rounding errors.

* Fixed rounding and typing errors.

* Fixed rounding in pelvisJointCenter, hipJointCenter and norm3d docstrings.

Also undid rounding in unittests (got a little carried away there, 
sorry).

* Update test_pycgmStatic_axis.py

* Docstring fixes for main pyCGM calculation methods (#66)

* Update docstrings

* Remove extra newline in doctest

* Make frame not optional

* Revert rounding change

* Remove the mention of vsk files for the subject measurements

* More docstrings

* Fix more stuff

* More hip axis center docstrings

* Fix hip axis center docstring

* docstring

* Fix pelvisJointCenter return dimensions

* Round numbers in pyCGM.py doctests (#78)

* Update docstrings

* Remove extra newline in doctest

* Make frame not optional

* Revert rounding change

* Remove the mention of vsk files for the subject measurements

* More docstrings

* Fix more stuff

* More hip axis center docstrings

* Fix hip axis center docstring

* docstring

* Fix pelvisJointCenter return dimensions

* Round doctests to 2 decimal places

* Add file descriptions and fix imports (#79)

* Remove Whitespace

* Fix non-whitespace changes

* Fix more non-whitespace changes

* Final fixing non-whitespace changes

* Actual final fixing non-whitespace changes

* Fix docstrings

Fixed for pyCGM_Helper.py, pycgmCalc.py, pycgmClusters.py, pycgmKinetics.py

* Fix formatting of docstrings

* Fix more docstring formatting

* More format fixing

* Final docstring formatting fixing

* Final fix

* Fix decimal places

* Fix more decimal places

* Run and fix doctests

* Fix decimals

* Fix formatting

* Fix formatting

* Fix formatting

* Fix PR comments

* Fix docstring standards

* Add descriptions to files

* Fix pycgmCalc import

* Fix pycgmCalc import bug

* Fix pycgmCalc

* Fix imports

* Fix test error

* Fix python 2.7 error

* Fix file descriptions

* Add UML to documentation

* Remove UML

* Add comment into docstring

* Add UML to documentation (#80)

* Remove Whitespace

* Fix non-whitespace changes

* Fix more non-whitespace changes

* Final fixing non-whitespace changes

* Actual final fixing non-whitespace changes

* Fix docstrings

Fixed for pyCGM_Helper.py, pycgmCalc.py, pycgmClusters.py, pycgmKinetics.py

* Fix formatting of docstrings

* Fix more docstring formatting

* More format fixing

* Final docstring formatting fixing

* Final fix

* Fix decimal places

* Fix more decimal places

* Fix formatting

* Fix formatting

* Fix formatting

* Add descriptions to files

* Fix imports

* Fix test error

* Fix python 2.7 error

* Add UML to documentation

* Remove UML

* Add UML to documentation

* Fix docstring

* Add docstring build test (#107)

* Fix Sphinx warnings (#108)

* Add standards

* Add to documentation

* Fix section name warnings

* Fix Latex

* Fix _static warning

* Remove standards

* Fix newline

* Fix Pipelines

* Fix checks

* Fix warnings

* Add scipy comment

Co-authored-by: niravkin <niravkseeds@gmail.com>
Co-authored-by: Gabriel Veras <56079261+GVeras@users.noreply.github.com>
Co-authored-by: kazoni <russell.linderer@gmail.com>
Co-authored-by: moppr <mantony42@gmail.com>
Co-authored-by: thepeytongreen <71730256+thepeytongreen@users.noreply.github.com>
Co-authored-by: David Kim <33339104+dvkm@users.noreply.github.com>
Co-authored-by: MattGonz <50923525+MattGonz@users.noreply.github.com>
Co-authored-by: AmeerYHassan <57303145+AmeerYHassan@users.noreply.github.com>
Co-authored-by: khgaw <61212705+khgaw@users.noreply.github.com>
Co-authored-by: jm786 <44728979+jm786@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants