c3d-parser 1.6.1__tar.gz → 1.6.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {c3d_parser-1.6.1/src/c3d_parser.egg-info → c3d_parser-1.6.2}/PKG-INFO +11 -11
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/README.md +10 -10
- c3d_parser-1.6.2/src/c3d_parser/__init__.py +2 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/core/c3d_parser.py +0 -14
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/view/main_window.py +0 -15
- {c3d_parser-1.6.1 → c3d_parser-1.6.2/src/c3d_parser.egg-info}/PKG-INFO +11 -11
- c3d_parser-1.6.1/src/c3d_parser/__init__.py +0 -2
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/LICENSE +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/pyproject.toml +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/requirements.txt +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/setup.cfg +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/application.py +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/core/c3d_patch.py +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/core/osim.py +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/core/osim_resources/external_loads_template.xml +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/core/osim_resources/ik_task_set.xml +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/core/utils.py +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/settings/general.py +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/settings/logging.py +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/settings/marker_maps/AUC.json +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/settings/marker_maps/FMC.json +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/settings/marker_maps/MH.json +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/settings/marker_maps/QCMAS.json +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/settings/marker_maps/RBWH.json +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/settings/marker_maps/RCH.json +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/settings/marker_maps/Sydney.json +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/splash_rc.py +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/splashscreen.py +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/view/dialogs/about_dialog.py +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/view/dialogs/delete_marker_set_dialog.py +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/view/dialogs/marker_set_dialog.py +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/view/dialogs/marker_set_import_dialog.py +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/view/dialogs/options_dialog.py +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/view/ui/resources_rc.py +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/view/ui/ui_delete_marker_set_dialog.py +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/view/ui/ui_main_window.py +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/view/ui/ui_marker_set_dialog.py +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/view/ui/ui_marker_set_import_dialog.py +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/view/ui/ui_options_dialog.py +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/view/utils.py +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/view/widgets.py +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser.egg-info/SOURCES.txt +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser.egg-info/dependency_links.txt +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser.egg-info/entry_points.txt +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser.egg-info/requires.txt +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser.egg-info/top_level.txt +0 -0
- {c3d_parser-1.6.1 → c3d_parser-1.6.2}/tests/test_parser.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: c3d-parser
|
|
3
|
-
Version: 1.6.
|
|
3
|
+
Version: 1.6.2
|
|
4
4
|
Summary: C3D parser for gait data harmonisation.
|
|
5
5
|
Author-email: Timothy Salemink <tim.nicolas@outlook.com>, Sally Jack <sallyjaack@gmail.com>
|
|
6
6
|
License-Expression: Apache-2.0
|
|
@@ -81,7 +81,7 @@ these classifications by right-clicking on the item in question. You can exclude
|
|
|
81
81
|
from the analysis by using the check-boxes provided.
|
|
82
82
|
|
|
83
83
|
<p align="center">
|
|
84
|
-
<img src="res/images/Inputs.png" alt="Inputs Screenshot"/>
|
|
84
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Inputs.png" alt="Inputs Screenshot"/>
|
|
85
85
|
</p>
|
|
86
86
|
|
|
87
87
|
You can also specify an "Output" directory if you wish. By default, an output structure will be
|
|
@@ -94,7 +94,7 @@ filled using the metadata in your static C3D file. Confirm these values are accu
|
|
|
94
94
|
any gaps.
|
|
95
95
|
|
|
96
96
|
<p align="center">
|
|
97
|
-
<img src="res/images/Anthropometrics.png" alt="Anthropometrics Screenshot"/>
|
|
97
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Anthropometrics.png" alt="Anthropometrics Screenshot"/>
|
|
98
98
|
</p>
|
|
99
99
|
|
|
100
100
|
|
|
@@ -107,7 +107,7 @@ The visualisation tab displays the generated model and the predicted landmark po
|
|
|
107
107
|
these against the (skin-padding adjusted) experimental marker positions.
|
|
108
108
|
|
|
109
109
|
<p align="center">
|
|
110
|
-
<img src="res/images/Visualiser.png" alt="Visualiser Screenshot"/>
|
|
110
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Visualiser.png" alt="Visualiser Screenshot"/>
|
|
111
111
|
</p>
|
|
112
112
|
|
|
113
113
|
|
|
@@ -127,12 +127,12 @@ select "Exclude Selected Cycles". Similarly, it is also possible to exclude/incl
|
|
|
127
127
|
sections of data for specific trials by right-clicking on the trial name in the list of trials.
|
|
128
128
|
|
|
129
129
|
<p align="center">
|
|
130
|
-
<img src="res/images/Exclusion_01.png" alt="Exclusion 01"/>
|
|
131
|
-
<img src="res/images/Exclusion_02.png" alt="Exclusion 02"/>
|
|
130
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Exclusion_01.png" alt="Exclusion 01"/>
|
|
131
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Exclusion_02.png" alt="Exclusion 02"/>
|
|
132
132
|
</p>
|
|
133
133
|
<p align="center">
|
|
134
|
-
<img src="res/images/Exclusion_03.png" alt="Exclusion 03"/>
|
|
135
|
-
<img src="res/images/Exclusion_04.png" alt="Exclusion 04"/>
|
|
134
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Exclusion_03.png" alt="Exclusion 03"/>
|
|
135
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Exclusion_04.png" alt="Exclusion 04"/>
|
|
136
136
|
</p>
|
|
137
137
|
|
|
138
138
|
The "Spatio-temporal" tab supports exclusions in the same manner.
|
|
@@ -146,7 +146,7 @@ User settings are available under _View_ -> _Options_.
|
|
|
146
146
|
All settings are retained after you close the application.
|
|
147
147
|
|
|
148
148
|
<p align="center">
|
|
149
|
-
<img src="res/images/Options.png" alt="Options Screenshot"/>
|
|
149
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Options.png" alt="Options Screenshot"/>
|
|
150
150
|
</p>
|
|
151
151
|
|
|
152
152
|
**File**
|
|
@@ -172,7 +172,7 @@ please deselect these options.
|
|
|
172
172
|
**Inverse Kinematics**
|
|
173
173
|
If you wish to define custom marker weights, you may do so by providing your own IK task set file.
|
|
174
174
|
Please follow the format used in the C3D-Parser
|
|
175
|
-
[default IK task set](src/c3d_parser/core/osim_resources/ik_task_set.xml).
|
|
175
|
+
[default IK task set](https://github.com/musculoskeletal/c3d-parser/blob/main/src/c3d_parser/core/osim_resources/ik_task_set.xml).
|
|
176
176
|
|
|
177
177
|
|
|
178
178
|
## Custom Marker Sets
|
|
@@ -182,7 +182,7 @@ not fit your needs you can adjust one of the existing marker sets or create a ne
|
|
|
182
182
|
using the custom marker set dialog under "Marker" -> "Custom Marker Set".
|
|
183
183
|
|
|
184
184
|
<p align="center">
|
|
185
|
-
<img src="res/images/Custom_Marker_Set.png" alt="Custom Marker Set Screenshot"/>
|
|
185
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Custom_Marker_Set.png" alt="Custom Marker Set Screenshot"/>
|
|
186
186
|
</p>
|
|
187
187
|
|
|
188
188
|
You can import an initial mapping from one of the existing marker sets using the "Import" button.
|
|
@@ -59,7 +59,7 @@ these classifications by right-clicking on the item in question. You can exclude
|
|
|
59
59
|
from the analysis by using the check-boxes provided.
|
|
60
60
|
|
|
61
61
|
<p align="center">
|
|
62
|
-
<img src="res/images/Inputs.png" alt="Inputs Screenshot"/>
|
|
62
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Inputs.png" alt="Inputs Screenshot"/>
|
|
63
63
|
</p>
|
|
64
64
|
|
|
65
65
|
You can also specify an "Output" directory if you wish. By default, an output structure will be
|
|
@@ -72,7 +72,7 @@ filled using the metadata in your static C3D file. Confirm these values are accu
|
|
|
72
72
|
any gaps.
|
|
73
73
|
|
|
74
74
|
<p align="center">
|
|
75
|
-
<img src="res/images/Anthropometrics.png" alt="Anthropometrics Screenshot"/>
|
|
75
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Anthropometrics.png" alt="Anthropometrics Screenshot"/>
|
|
76
76
|
</p>
|
|
77
77
|
|
|
78
78
|
|
|
@@ -85,7 +85,7 @@ The visualisation tab displays the generated model and the predicted landmark po
|
|
|
85
85
|
these against the (skin-padding adjusted) experimental marker positions.
|
|
86
86
|
|
|
87
87
|
<p align="center">
|
|
88
|
-
<img src="res/images/Visualiser.png" alt="Visualiser Screenshot"/>
|
|
88
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Visualiser.png" alt="Visualiser Screenshot"/>
|
|
89
89
|
</p>
|
|
90
90
|
|
|
91
91
|
|
|
@@ -105,12 +105,12 @@ select "Exclude Selected Cycles". Similarly, it is also possible to exclude/incl
|
|
|
105
105
|
sections of data for specific trials by right-clicking on the trial name in the list of trials.
|
|
106
106
|
|
|
107
107
|
<p align="center">
|
|
108
|
-
<img src="res/images/Exclusion_01.png" alt="Exclusion 01"/>
|
|
109
|
-
<img src="res/images/Exclusion_02.png" alt="Exclusion 02"/>
|
|
108
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Exclusion_01.png" alt="Exclusion 01"/>
|
|
109
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Exclusion_02.png" alt="Exclusion 02"/>
|
|
110
110
|
</p>
|
|
111
111
|
<p align="center">
|
|
112
|
-
<img src="res/images/Exclusion_03.png" alt="Exclusion 03"/>
|
|
113
|
-
<img src="res/images/Exclusion_04.png" alt="Exclusion 04"/>
|
|
112
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Exclusion_03.png" alt="Exclusion 03"/>
|
|
113
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Exclusion_04.png" alt="Exclusion 04"/>
|
|
114
114
|
</p>
|
|
115
115
|
|
|
116
116
|
The "Spatio-temporal" tab supports exclusions in the same manner.
|
|
@@ -124,7 +124,7 @@ User settings are available under _View_ -> _Options_.
|
|
|
124
124
|
All settings are retained after you close the application.
|
|
125
125
|
|
|
126
126
|
<p align="center">
|
|
127
|
-
<img src="res/images/Options.png" alt="Options Screenshot"/>
|
|
127
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Options.png" alt="Options Screenshot"/>
|
|
128
128
|
</p>
|
|
129
129
|
|
|
130
130
|
**File**
|
|
@@ -150,7 +150,7 @@ please deselect these options.
|
|
|
150
150
|
**Inverse Kinematics**
|
|
151
151
|
If you wish to define custom marker weights, you may do so by providing your own IK task set file.
|
|
152
152
|
Please follow the format used in the C3D-Parser
|
|
153
|
-
[default IK task set](src/c3d_parser/core/osim_resources/ik_task_set.xml).
|
|
153
|
+
[default IK task set](https://github.com/musculoskeletal/c3d-parser/blob/main/src/c3d_parser/core/osim_resources/ik_task_set.xml).
|
|
154
154
|
|
|
155
155
|
|
|
156
156
|
## Custom Marker Sets
|
|
@@ -160,7 +160,7 @@ not fit your needs you can adjust one of the existing marker sets or create a ne
|
|
|
160
160
|
using the custom marker set dialog under "Marker" -> "Custom Marker Set".
|
|
161
161
|
|
|
162
162
|
<p align="center">
|
|
163
|
-
<img src="res/images/Custom_Marker_Set.png" alt="Custom Marker Set Screenshot"/>
|
|
163
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Custom_Marker_Set.png" alt="Custom Marker Set Screenshot"/>
|
|
164
164
|
</p>
|
|
165
165
|
|
|
166
166
|
You can import an initial mapping from one of the existing marker sets using the "Import" button.
|
|
@@ -550,10 +550,8 @@ def trim_frames(frame_data):
|
|
|
550
550
|
if not drop_frames.empty:
|
|
551
551
|
frame_data.drop(drop_frames, inplace=True)
|
|
552
552
|
|
|
553
|
-
# TODO: If we convert this to a dictionary we can keep the markers that are missing and check if they are required.
|
|
554
553
|
remaining_frames = [frame for frame in incomplete_frames.keys() if trim_start <= frame <= trim_end]
|
|
555
554
|
if remaining_frames:
|
|
556
|
-
# TODO: We should raise a ParserError (skip this trial) if the missing markers are required...?
|
|
557
555
|
logger.warn(f"Frames {remaining_frames} are incomplete.")
|
|
558
556
|
|
|
559
557
|
return trim_start, trim_end
|
|
@@ -1117,8 +1115,6 @@ def scale_grf_data(analog_data):
|
|
|
1117
1115
|
analog_data[columns] = analog_data[columns] / 1000
|
|
1118
1116
|
|
|
1119
1117
|
|
|
1120
|
-
# TODO: This incorrectly classifies Adelaide's static trials as dynamic.
|
|
1121
|
-
# Use `calculate_distance_covered` instead?
|
|
1122
1118
|
def is_dynamic(file_path):
|
|
1123
1119
|
with open(file_path, 'rb') as handle:
|
|
1124
1120
|
try:
|
|
@@ -1294,11 +1290,6 @@ def normalise_kinetics(kinetic_data, events):
|
|
|
1294
1290
|
normalised_data[foot][file_name] = {}
|
|
1295
1291
|
data_segment = data.iloc[start:frame, 1:]
|
|
1296
1292
|
|
|
1297
|
-
# TODO: If the model +tve and -tve are wrong, then we can't just flip these.
|
|
1298
|
-
# Because the non-GRF parts of the moments would also be flipped.
|
|
1299
|
-
# Just visually check the results against some clinical kinetics.
|
|
1300
|
-
# ...
|
|
1301
|
-
# Looks pretty good so far.
|
|
1302
1293
|
# Perform sign transformations.
|
|
1303
1294
|
data_segment[f"hip_flexion_{side}_moment"] = -data_segment[f"hip_flexion_{side}_moment"]
|
|
1304
1295
|
data_segment[f"hip_adduction_{side}_moment"] = -data_segment[f"hip_adduction_{side}_moment"]
|
|
@@ -1391,9 +1382,6 @@ def write_normalised_data(data, column_names, selected_trials, excluded_cycles,
|
|
|
1391
1382
|
file.write('\n')
|
|
1392
1383
|
|
|
1393
1384
|
|
|
1394
|
-
# TODO: Rework this function to be less sequential.
|
|
1395
|
-
# It should be able to calculate metrics for walking and running gait.
|
|
1396
|
-
# Put this at the start of the sequential bit.
|
|
1397
1385
|
def calculate_spatiotemporal_data(frame_data, events, static_data):
|
|
1398
1386
|
stride_lengths = {"Left": {}, "Right": {}}
|
|
1399
1387
|
step_lengths = {"Left": {}, "Right": {}}
|
|
@@ -1416,8 +1404,6 @@ def calculate_spatiotemporal_data(frame_data, events, static_data):
|
|
|
1416
1404
|
for event_time, (event_type, event_plate) in stride_events.items():
|
|
1417
1405
|
time_ordered_events[event_time][foot] = [event_type, stride_number]
|
|
1418
1406
|
|
|
1419
|
-
# TODO: We should be able to use this to calculate ALL measurements non-sequentially.
|
|
1420
|
-
# TODO: Double check that we don't have situations where the events are not ordered in increasing stride number.
|
|
1421
1407
|
# Add terminal foot-strike to events for each cycle.
|
|
1422
1408
|
full_cycle_events = copy.deepcopy(events)
|
|
1423
1409
|
for foot, foot_events in full_cycle_events.items():
|
|
@@ -57,7 +57,6 @@ class ProgressTracker(QObject):
|
|
|
57
57
|
progress = Signal(str, str)
|
|
58
58
|
|
|
59
59
|
|
|
60
|
-
# TODO: CGM2 event detector on GitHub...?
|
|
61
60
|
class MainWindow(QMainWindow):
|
|
62
61
|
|
|
63
62
|
def __init__(self):
|
|
@@ -257,12 +256,6 @@ class MainWindow(QMainWindow):
|
|
|
257
256
|
table.deleteLater()
|
|
258
257
|
self._spatiotemporal_tables = []
|
|
259
258
|
|
|
260
|
-
# TODO: The legend is not correctly displayed if the ST tab is open while processing...
|
|
261
|
-
# Repositioning and updating the legend do nothing.
|
|
262
|
-
|
|
263
|
-
# TODO: The border is still having issues.
|
|
264
|
-
# Seems to be related to the area being scrollable.
|
|
265
|
-
# Only happens on some PCs/monitors...
|
|
266
259
|
def _visualise_spatiotemporal_data(self):
|
|
267
260
|
|
|
268
261
|
# Temporarily disable spatio-temporal visualisation for running gait.
|
|
@@ -898,8 +891,6 @@ class MainWindow(QMainWindow):
|
|
|
898
891
|
if (file_name, f"{foot}_{cycle_number}") not in excluded_cycles:
|
|
899
892
|
counts[foot] += 1
|
|
900
893
|
|
|
901
|
-
# TODO: This is being displayed before processing has finished.
|
|
902
|
-
# Which should not be happening.
|
|
903
894
|
self._ui.labelCount.setText(f"Cycles: L {counts['Left']} / R {counts['Right']}")
|
|
904
895
|
|
|
905
896
|
tab = self._ui.tabWidget.currentWidget()
|
|
@@ -927,7 +918,6 @@ class MainWindow(QMainWindow):
|
|
|
927
918
|
self._update_s_t_colours()
|
|
928
919
|
self._update_legend()
|
|
929
920
|
|
|
930
|
-
# TODO: For some reason the legend doesn't get created at all if we are visualising the ST tab while processing...
|
|
931
921
|
def _update_legend(self):
|
|
932
922
|
if self._boxes:
|
|
933
923
|
for side, boxes in self._boxes.items():
|
|
@@ -1020,8 +1010,6 @@ class MainWindow(QMainWindow):
|
|
|
1020
1010
|
settings.beginGroup('MainWindow')
|
|
1021
1011
|
settings.setValue('size', self.size())
|
|
1022
1012
|
settings.setValue('pos', self.pos())
|
|
1023
|
-
# TODO: The taskbar icon fails if the application opens in full-screen...
|
|
1024
|
-
# DON'T open in full screen...?
|
|
1025
1013
|
settings.setValue('is_maximized', self.isMaximized())
|
|
1026
1014
|
settings.setValue('lab', self._ui.comboBoxLab.currentText())
|
|
1027
1015
|
settings.setValue('marker_diameter', self._ui.doubleSpinBoxMarkerDiameter.value())
|
|
@@ -1226,9 +1214,6 @@ class GaitCurves(defaultdict):
|
|
|
1226
1214
|
line.set_color(colour)
|
|
1227
1215
|
line.set_zorder(z_order)
|
|
1228
1216
|
|
|
1229
|
-
# TODO: Replace all these with `draw_idle`?
|
|
1230
|
-
# Just the ones that handle many curves...?
|
|
1231
|
-
# Probably all...?
|
|
1232
1217
|
self._canvas.draw()
|
|
1233
1218
|
|
|
1234
1219
|
def show_curve_menu(self, event):
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: c3d-parser
|
|
3
|
-
Version: 1.6.
|
|
3
|
+
Version: 1.6.2
|
|
4
4
|
Summary: C3D parser for gait data harmonisation.
|
|
5
5
|
Author-email: Timothy Salemink <tim.nicolas@outlook.com>, Sally Jack <sallyjaack@gmail.com>
|
|
6
6
|
License-Expression: Apache-2.0
|
|
@@ -81,7 +81,7 @@ these classifications by right-clicking on the item in question. You can exclude
|
|
|
81
81
|
from the analysis by using the check-boxes provided.
|
|
82
82
|
|
|
83
83
|
<p align="center">
|
|
84
|
-
<img src="res/images/Inputs.png" alt="Inputs Screenshot"/>
|
|
84
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Inputs.png" alt="Inputs Screenshot"/>
|
|
85
85
|
</p>
|
|
86
86
|
|
|
87
87
|
You can also specify an "Output" directory if you wish. By default, an output structure will be
|
|
@@ -94,7 +94,7 @@ filled using the metadata in your static C3D file. Confirm these values are accu
|
|
|
94
94
|
any gaps.
|
|
95
95
|
|
|
96
96
|
<p align="center">
|
|
97
|
-
<img src="res/images/Anthropometrics.png" alt="Anthropometrics Screenshot"/>
|
|
97
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Anthropometrics.png" alt="Anthropometrics Screenshot"/>
|
|
98
98
|
</p>
|
|
99
99
|
|
|
100
100
|
|
|
@@ -107,7 +107,7 @@ The visualisation tab displays the generated model and the predicted landmark po
|
|
|
107
107
|
these against the (skin-padding adjusted) experimental marker positions.
|
|
108
108
|
|
|
109
109
|
<p align="center">
|
|
110
|
-
<img src="res/images/Visualiser.png" alt="Visualiser Screenshot"/>
|
|
110
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Visualiser.png" alt="Visualiser Screenshot"/>
|
|
111
111
|
</p>
|
|
112
112
|
|
|
113
113
|
|
|
@@ -127,12 +127,12 @@ select "Exclude Selected Cycles". Similarly, it is also possible to exclude/incl
|
|
|
127
127
|
sections of data for specific trials by right-clicking on the trial name in the list of trials.
|
|
128
128
|
|
|
129
129
|
<p align="center">
|
|
130
|
-
<img src="res/images/Exclusion_01.png" alt="Exclusion 01"/>
|
|
131
|
-
<img src="res/images/Exclusion_02.png" alt="Exclusion 02"/>
|
|
130
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Exclusion_01.png" alt="Exclusion 01"/>
|
|
131
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Exclusion_02.png" alt="Exclusion 02"/>
|
|
132
132
|
</p>
|
|
133
133
|
<p align="center">
|
|
134
|
-
<img src="res/images/Exclusion_03.png" alt="Exclusion 03"/>
|
|
135
|
-
<img src="res/images/Exclusion_04.png" alt="Exclusion 04"/>
|
|
134
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Exclusion_03.png" alt="Exclusion 03"/>
|
|
135
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Exclusion_04.png" alt="Exclusion 04"/>
|
|
136
136
|
</p>
|
|
137
137
|
|
|
138
138
|
The "Spatio-temporal" tab supports exclusions in the same manner.
|
|
@@ -146,7 +146,7 @@ User settings are available under _View_ -> _Options_.
|
|
|
146
146
|
All settings are retained after you close the application.
|
|
147
147
|
|
|
148
148
|
<p align="center">
|
|
149
|
-
<img src="res/images/Options.png" alt="Options Screenshot"/>
|
|
149
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Options.png" alt="Options Screenshot"/>
|
|
150
150
|
</p>
|
|
151
151
|
|
|
152
152
|
**File**
|
|
@@ -172,7 +172,7 @@ please deselect these options.
|
|
|
172
172
|
**Inverse Kinematics**
|
|
173
173
|
If you wish to define custom marker weights, you may do so by providing your own IK task set file.
|
|
174
174
|
Please follow the format used in the C3D-Parser
|
|
175
|
-
[default IK task set](src/c3d_parser/core/osim_resources/ik_task_set.xml).
|
|
175
|
+
[default IK task set](https://github.com/musculoskeletal/c3d-parser/blob/main/src/c3d_parser/core/osim_resources/ik_task_set.xml).
|
|
176
176
|
|
|
177
177
|
|
|
178
178
|
## Custom Marker Sets
|
|
@@ -182,7 +182,7 @@ not fit your needs you can adjust one of the existing marker sets or create a ne
|
|
|
182
182
|
using the custom marker set dialog under "Marker" -> "Custom Marker Set".
|
|
183
183
|
|
|
184
184
|
<p align="center">
|
|
185
|
-
<img src="res/images/Custom_Marker_Set.png" alt="Custom Marker Set Screenshot"/>
|
|
185
|
+
<img src="https://raw.githubusercontent.com/musculoskeletal/c3d-parser/main/res/images/Custom_Marker_Set.png" alt="Custom Marker Set Screenshot"/>
|
|
186
186
|
</p>
|
|
187
187
|
|
|
188
188
|
You can import an initial mapping from one of the existing marker sets using the "Import" button.
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/core/osim_resources/external_loads_template.xml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/view/dialogs/delete_marker_set_dialog.py
RENAMED
|
File without changes
|
|
File without changes
|
{c3d_parser-1.6.1 → c3d_parser-1.6.2}/src/c3d_parser/view/dialogs/marker_set_import_dialog.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|