trajectopy 4.2.2__tar.gz → 4.2.3__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.
- {trajectopy-4.2.2 → trajectopy-4.2.3}/PKG-INFO +3 -4
- {trajectopy-4.2.2 → trajectopy-4.2.3}/pyproject.toml +1 -4
- {trajectopy-4.2.2 → trajectopy-4.2.3}/requirements.txt +4 -126
- trajectopy-4.2.3/trajectopy/__version__.py +1 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/themes.py +8 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/views/main_window.py +11 -2
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy.spec +1 -1
- {trajectopy-4.2.2 → trajectopy-4.2.3}/uv.lock +2819 -2821
- trajectopy-4.2.2/trajectopy/__version__.py +0 -1
- {trajectopy-4.2.2 → trajectopy-4.2.3}/.gitattributes +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/.gitignore +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/.pre-commit-config.yaml +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/.pylintrc +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/CITATION.cff +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/LICENSE +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/README.md +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/example_data/KITTI_ORB.traj +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/example_data/KITTI_SPTAM.traj +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/example_data/KITTI_gt.traj +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/example_data/default.mplstyle +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/example_data/matplotlib_settings.json +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/example_data/report_settings.json +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/example_scripts/align.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/example_scripts/alignment.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/example_scripts/ate.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/example_scripts/mpl_plot.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/example_scripts/multi_report.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/example_scripts/rpe.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/example_scripts/single_report.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/example_scripts/trajectory_plot.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/__init__.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/data/abs_dev.result +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/data/align_entry.result +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/data/generated_trajectory.traj +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/data/noisy_trajectory.traj +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/data/open_loop_trajectory.traj +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/data/rel_dev_meter.result +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/data/rel_dev_second.result +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/test_alignment.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/test_approximation.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/test_comparison.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/test_io.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/test_matching.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/test_merging.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/test_pipeline.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/test_positions_rotations.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/test_processing_edge_cases.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/test_processing_errors.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/test_readers_edge_cases.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/test_readers_errors.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/test_settings.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/test_settings_edge_cases.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/test_settings_validation.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/test_sorting.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/test_trajectory.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/test_trajectory_validation.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/testdata.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/test/util.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/LICENSE +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/__init__.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/__main__.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/cli/__init__.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/cli/main.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/core/__init__.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/core/positions.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/core/rotations.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/core/settings.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/core/trajectory.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/exceptions.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/__init__.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/app.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/managers/__init__.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/managers/file_manager.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/managers/plot_manager.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/managers/requests.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/managers/session_manager.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/managers/trajectory_manager.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/managers/ui_manager.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/models/__init__.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/models/entries.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/models/property_model.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/models/result_model.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/models/selection.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/models/table_model.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/models/trajectory_model.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/resources/full-icon-poppins.png +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/resources/icon-bg.ico +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/resources/icon-bg.png +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/resources/icon.png +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/utils.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/views/__init__.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/views/about_window.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/views/alignment_edit_window.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/views/dof_organizer.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/views/json_settings_view.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/views/mpl_plot_tabs.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/views/playback_window.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/views/progress_window.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/views/properties_window.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/views/result_context_menu.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/views/result_selection_window.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/views/result_table_view.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/views/timeline_widget.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/views/trajectory_context_menu.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/gui/views/trajectory_table_view.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/processing/__init__.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/processing/alignment.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/processing/approximation.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/processing/evaluation.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/processing/interpolation.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/processing/lib/__init__.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/processing/lib/alignment/__init__.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/processing/lib/alignment/data.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/processing/lib/alignment/direct.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/processing/lib/alignment/egrad_interface.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/processing/lib/alignment/equations.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/processing/lib/alignment/estimation.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/processing/lib/alignment/parameters.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/processing/lib/approximation/__init__.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/processing/lib/approximation/cubic_approximation.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/processing/lib/approximation/line_approximation.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/processing/lib/approximation/voxelizer.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/processing/matching.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/processing/merging.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/processing/sorting.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/py.typed +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/readers/__init__.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/readers/ascii.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/readers/rosbag.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/readers/rosmsg.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/readers/utils.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/results/__init__.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/results/alignment_result.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/results/ate_result.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/results/rpe_result.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/utils/__init__.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/utils/common.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/utils/definitions.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/visualization/__init__.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/visualization/assets/icon.png +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/visualization/assets/style.css +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/visualization/default.mplstyle +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/visualization/mpl_plots.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/visualization/plotly_plots.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/visualization/plotly_reports.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/visualization/report_data.py +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/visualization/templates/generic.html +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/visualization/templates/multi_template.html +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy/visualization/templates/single_template.html +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/docs/api/core/positions.md +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/docs/api/core/rotations.md +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/docs/api/core/settings.md +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/docs/api/core/trajectory.md +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/docs/api/index.md +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/docs/api/processing/alignment.md +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/docs/api/processing/approximation.md +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/docs/api/processing/evaluation.md +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/docs/api/processing/interpolation.md +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/docs/api/processing/matching.md +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/docs/api/processing/merging.md +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/docs/api/processing/parameters.md +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/docs/api/processing/sorting.md +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/docs/api/results/alignment_result.md +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/docs/api/results/ate_result.md +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/docs/api/results/rpe_result.md +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/docs/api/visualization/mpl_plots.md +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/docs/api/visualization/plotly_plots.md +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/docs/api/visualization/plotly_reports.md +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/docs/assets/icon.png +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/docs/file_formats.md +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/docs/index.md +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/docs/javascripts/mathjax.js +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/docs/settings.md +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/docs/stylesheets/extra.css +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/docs/user_guide.md +0 -0
- {trajectopy-4.2.2 → trajectopy-4.2.3}/trajectopy-docs/mkdocs.yml +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: trajectopy
|
|
3
|
-
Version: 4.2.
|
|
3
|
+
Version: 4.2.3
|
|
4
4
|
Summary: Trajectory Evaluation in Python
|
|
5
5
|
Project-URL: Homepage, https://gereon-t.github.io/trajectopy/
|
|
6
6
|
Project-URL: Documentation, https://gereon-t.github.io/trajectopy/
|
|
@@ -28,14 +28,13 @@ Requires-Dist: numpy>=2.0.2
|
|
|
28
28
|
Requires-Dist: pandas>=2.2.3
|
|
29
29
|
Requires-Dist: plotly>=6.1.0
|
|
30
30
|
Requires-Dist: pyproj>=3.6.1
|
|
31
|
-
Requires-Dist: pyside6>=6.11.0
|
|
32
|
-
Requires-Dist: pyvista>=0.47.2
|
|
33
|
-
Requires-Dist: pyvistaqt>=0.11.4
|
|
34
31
|
Requires-Dist: rich>=14.0.0
|
|
35
32
|
Requires-Dist: rosbags>=0.9.23
|
|
36
33
|
Requires-Dist: scipy>=1.13.1
|
|
37
34
|
Provides-Extra: gui
|
|
38
35
|
Requires-Dist: pyside6; extra == 'gui'
|
|
36
|
+
Requires-Dist: pyvista; extra == 'gui'
|
|
37
|
+
Requires-Dist: pyvistaqt; extra == 'gui'
|
|
39
38
|
Description-Content-Type: text/markdown
|
|
40
39
|
|
|
41
40
|
<div align="center">
|
|
@@ -53,9 +53,6 @@ dependencies = [
|
|
|
53
53
|
"pandas>=2.2.3",
|
|
54
54
|
"plotly>=6.1.0",
|
|
55
55
|
"pyproj>=3.6.1",
|
|
56
|
-
"pyside6>=6.11.0",
|
|
57
|
-
"pyvista>=0.47.2",
|
|
58
|
-
"pyvistaqt>=0.11.4",
|
|
59
56
|
"rich>=14.0.0",
|
|
60
57
|
"rosbags>=0.9.23",
|
|
61
58
|
"scipy>=1.13.1",
|
|
@@ -63,7 +60,7 @@ dependencies = [
|
|
|
63
60
|
|
|
64
61
|
|
|
65
62
|
[project.optional-dependencies]
|
|
66
|
-
gui = ["PySide6"]
|
|
63
|
+
gui = ["PySide6", "pyvista", "pyvistaqt"]
|
|
67
64
|
|
|
68
65
|
[project.urls]
|
|
69
66
|
Homepage = "https://gereon-t.github.io/trajectopy/"
|
|
@@ -7,10 +7,6 @@ altgraph==0.17.5 \
|
|
|
7
7
|
# via
|
|
8
8
|
# macholib
|
|
9
9
|
# pyinstaller
|
|
10
|
-
attrs==26.1.0 \
|
|
11
|
-
--hash=sha256:c647aa4a12dfbad9333ca4e71fe62ddc36f4e63b2d260a37a8b83d2f043ac309 \
|
|
12
|
-
--hash=sha256:d03ceb89cb322a8fd706d4fb91940737b6642aa36998fe130a9bc96c985eff32
|
|
13
|
-
# via cyclopts
|
|
14
10
|
autograd==1.8.0 \
|
|
15
11
|
--hash=sha256:107374ded5b09fc8643ac925348c0369e7b0e73bbed9565ffd61b8fd04425683 \
|
|
16
12
|
--hash=sha256:4ab9084294f814cf56c280adbe19612546a35574d67c574b04933c7d2ecb7d78
|
|
@@ -425,22 +421,10 @@ cycler==0.12.1 \
|
|
|
425
421
|
--hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 \
|
|
426
422
|
--hash=sha256:88bb128f02ba341da8ef447245a9e138fae777f6a23943da4540077d3601eb1c
|
|
427
423
|
# via matplotlib
|
|
428
|
-
cyclopts==4.10.2 \
|
|
429
|
-
--hash=sha256:a1f2d6f8f7afac9456b48f75a40b36658778ddc9c6d406b520d017ae32c990fe \
|
|
430
|
-
--hash=sha256:d7b950457ef2563596d56331f80cbbbf86a2772535fb8b315c4f03bc7e6127f1
|
|
431
|
-
# via pyvista
|
|
432
424
|
distlib==0.4.0 \
|
|
433
425
|
--hash=sha256:9659f7d87e46584a30b5780e43ac7a2143098441670ff0a49d5f9034c54a6c16 \
|
|
434
426
|
--hash=sha256:feec40075be03a04501a973d81f633735b4b69f98b05450592310c0f401a4e0d
|
|
435
427
|
# via virtualenv
|
|
436
|
-
docstring-parser==0.17.0 \
|
|
437
|
-
--hash=sha256:583de4a309722b3315439bb31d64ba3eebada841f2e2cee23b99df001434c912 \
|
|
438
|
-
--hash=sha256:cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708
|
|
439
|
-
# via cyclopts
|
|
440
|
-
docutils==0.22.4 \
|
|
441
|
-
--hash=sha256:4db53b1fde9abecbb74d91230d32ab626d94f6badfc575d6db9194a49df29968 \
|
|
442
|
-
--hash=sha256:d0013f540772d1420576855455d050a2180186c91c15779301ac2ccb3eeb68de
|
|
443
|
-
# via rich-rst
|
|
444
428
|
exceptiongroup==1.3.1 ; python_full_version < '3.11' \
|
|
445
429
|
--hash=sha256:8b412432c6055b0b7d14c310000ae93352ed6754f70fa8f7c34141f91c4e3219 \
|
|
446
430
|
--hash=sha256:a7a39a3bd276781e98394987d3a5701d0c4edffb633bb7a5144577f82c773598
|
|
@@ -858,10 +842,7 @@ matplotlib==3.10.8 \
|
|
|
858
842
|
--hash=sha256:f97aeb209c3d2511443f8797e3e5a569aebb040d4f8bc79aa3ee78a8fb9e3dd8 \
|
|
859
843
|
--hash=sha256:f9b587c9c7274c1613a30afabf65a272114cd6cdbe67b3406f818c79d7ab2e2a \
|
|
860
844
|
--hash=sha256:fb061f596dad3a0f52b60dc6a5dec4a0c300dec41e058a7efe09256188d170b7
|
|
861
|
-
# via
|
|
862
|
-
# pyvista
|
|
863
|
-
# trajectopy
|
|
864
|
-
# vtk
|
|
845
|
+
# via trajectopy
|
|
865
846
|
mdurl==0.1.2 \
|
|
866
847
|
--hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 \
|
|
867
848
|
--hash=sha256:bb413d29f5eea38f31dd4754dd7377d4465116fb207585f97bf925588687c1ba
|
|
@@ -977,7 +958,6 @@ numpy==2.2.6 ; python_full_version < '3.11' \
|
|
|
977
958
|
# contourpy
|
|
978
959
|
# matplotlib
|
|
979
960
|
# pandas
|
|
980
|
-
# pyvista
|
|
981
961
|
# rosbags
|
|
982
962
|
# scipy
|
|
983
963
|
# trajectopy
|
|
@@ -1059,7 +1039,6 @@ numpy==2.4.4 ; python_full_version >= '3.11' \
|
|
|
1059
1039
|
# contourpy
|
|
1060
1040
|
# matplotlib
|
|
1061
1041
|
# pandas
|
|
1062
|
-
# pyvista
|
|
1063
1042
|
# rosbags
|
|
1064
1043
|
# scipy
|
|
1065
1044
|
# trajectopy
|
|
@@ -1071,11 +1050,9 @@ packaging==26.0 \
|
|
|
1071
1050
|
# matplotlib
|
|
1072
1051
|
# mkdocs
|
|
1073
1052
|
# plotly
|
|
1074
|
-
# pooch
|
|
1075
1053
|
# pyinstaller
|
|
1076
1054
|
# pyinstaller-hooks-contrib
|
|
1077
1055
|
# pytest
|
|
1078
|
-
# qtpy
|
|
1079
1056
|
paginate==0.5.7 \
|
|
1080
1057
|
--hash=sha256:22bd083ab41e1a8b4f3690544afb2c60c25e5c9a63a30fa2f483f6c60c8e5945 \
|
|
1081
1058
|
--hash=sha256:b885e2af73abcf01d9559fd5216b57ef722f8c42affbb63942377668e35c7591
|
|
@@ -1282,16 +1259,13 @@ pillow==12.2.0 \
|
|
|
1282
1259
|
--hash=sha256:f490f9368b6fc026f021db16d7ec2fbf7d89e2edb42e8ec09d2c60505f5729c7 \
|
|
1283
1260
|
--hash=sha256:fb043ee2f06b41473269765c2feae53fc2e2fbf96e5e22ca94fb5ad677856f06 \
|
|
1284
1261
|
--hash=sha256:fc3d34d4a8fbec3e88a79b92e5465e0f9b842b628675850d860b8bd300b159f5
|
|
1285
|
-
# via
|
|
1286
|
-
# matplotlib
|
|
1287
|
-
# pyvista
|
|
1262
|
+
# via matplotlib
|
|
1288
1263
|
platformdirs==4.9.6 \
|
|
1289
1264
|
--hash=sha256:3bfa75b0ad0db84096ae777218481852c0ebc6c727b3168c1b9e0118e458cf0a \
|
|
1290
1265
|
--hash=sha256:e61adb1d5e5cb3441b4b7710bea7e4c12250ca49439228cc1021c00dcfac0917
|
|
1291
1266
|
# via
|
|
1292
1267
|
# black
|
|
1293
1268
|
# mkdocs-get-deps
|
|
1294
|
-
# pooch
|
|
1295
1269
|
# python-discovery
|
|
1296
1270
|
# virtualenv
|
|
1297
1271
|
plotly==6.7.0 \
|
|
@@ -1304,10 +1278,6 @@ pluggy==1.6.0 \
|
|
|
1304
1278
|
# via
|
|
1305
1279
|
# pytest
|
|
1306
1280
|
# pytest-cov
|
|
1307
|
-
pooch==1.9.0 \
|
|
1308
|
-
--hash=sha256:de46729579b9857ffd3e741987a2f6d5e0e03219892c167c6578c0091fb511ed \
|
|
1309
|
-
--hash=sha256:f265597baa9f760d25ceb29d0beb8186c243d6607b0f60b83ecf14078dbc703b
|
|
1310
|
-
# via pyvista
|
|
1311
1281
|
pre-commit==4.5.1 \
|
|
1312
1282
|
--hash=sha256:3b3afd891e97337708c1674210f8eba659b52a38ea5f822ff142d10786221f77 \
|
|
1313
1283
|
--hash=sha256:eb545fcff725875197837263e977ea257a402056661f09dae08e4b149b030a61
|
|
@@ -1437,29 +1407,6 @@ pyproj==3.7.2 ; python_full_version >= '3.11' \
|
|
|
1437
1407
|
--hash=sha256:f9428b318530625cb389b9ddc9c51251e172808a4af79b82809376daaeabe5e9 \
|
|
1438
1408
|
--hash=sha256:fc52ba896cfc3214dc9f9ca3c0677a623e8fdd096b257c14a31e719d21ff3fdd
|
|
1439
1409
|
# via trajectopy
|
|
1440
|
-
pyside6==6.11.0 \
|
|
1441
|
-
--hash=sha256:1f2735dc4f2bd4ec452ae50502c8a22128bba0aced35358a2bbc58384b820c6f \
|
|
1442
|
-
--hash=sha256:267b344c73580ac938ca63c611881fb42a3922ebfe043e271005f4f06c372c4e \
|
|
1443
|
-
--hash=sha256:9092cb002ca43c64006afb2e0d0f6f51aef17aa737c33a45e502326a081ddcbc \
|
|
1444
|
-
--hash=sha256:b15f39acc2b8f46251a630acad0d97f9a0a0461f2baffcd66d7adfada8eb641e \
|
|
1445
|
-
--hash=sha256:c642e2d25704ca746fd37f56feacf25c5aecc4cd40bef23d18eec81f87d9dc00
|
|
1446
|
-
# via trajectopy
|
|
1447
|
-
pyside6-addons==6.11.0 \
|
|
1448
|
-
--hash=sha256:413e6121c24f5ffdce376298059eddecff74aa6d638e94e0f6015b33d29b889e \
|
|
1449
|
-
--hash=sha256:8ffb40222456078930816ebcac2f2511716d2acbc11716dd5acc5c365179a753 \
|
|
1450
|
-
--hash=sha256:aaaee83385977a0fe134b2f4fbfb92b45a880d5b656e4d90a708eef10b1b6de8 \
|
|
1451
|
-
--hash=sha256:ac6fe3d4ef4497dde3efc5e896b0acd53ff6c93be4bf485f045690f919419f35 \
|
|
1452
|
-
--hash=sha256:d5eaa4643302e3a0fa94c5766234bee4073d7d5ab9c2b7fd222692a176faf182
|
|
1453
|
-
# via pyside6
|
|
1454
|
-
pyside6-essentials==6.11.0 \
|
|
1455
|
-
--hash=sha256:3b3362882ad9389357a80504e600180006a957731fec05786fced7b038461fdf \
|
|
1456
|
-
--hash=sha256:4854cb0a1b061e7a576d8fb7bb7cf9f49540d558b1acb7df0742a7afefe61e4e \
|
|
1457
|
-
--hash=sha256:81ca603dbf21bc39f89bb42db215c25ebe0c879a1a4c387625c321d2730ec187 \
|
|
1458
|
-
--hash=sha256:85d6ca87ef35fa6565d385ede72ae48420dd3f63113929d10fc800f6b0360e01 \
|
|
1459
|
-
--hash=sha256:dc20e7afd5fc6fe51297db91cef997ce60844be578f7a49fc61b7ab9657a8849
|
|
1460
|
-
# via
|
|
1461
|
-
# pyside6
|
|
1462
|
-
# pyside6-addons
|
|
1463
1410
|
pytest==9.0.3 \
|
|
1464
1411
|
--hash=sha256:2c5efc453d45394fdd706ade797c0a81091eccd1d6e4bccfcd476e2b8e0ab5d9 \
|
|
1465
1412
|
--hash=sha256:b86ada508af81d19edeb213c681b1d48246c1a91d304c6c81a427674c17eb91c
|
|
@@ -1516,16 +1463,6 @@ pytz==2026.1.post1 ; python_full_version < '3.11' \
|
|
|
1516
1463
|
--hash=sha256:3378dde6a0c3d26719182142c56e60c7f9af7e968076f31aae569d72a0358ee1 \
|
|
1517
1464
|
--hash=sha256:f2fd16142fda348286a75e1a524be810bb05d444e5a081f37f7affc635035f7a
|
|
1518
1465
|
# via pandas
|
|
1519
|
-
pyvista==0.47.2 \
|
|
1520
|
-
--hash=sha256:24e84687b2028a28717108cfc5b808d5903dc865593389090c016c197f4310ce \
|
|
1521
|
-
--hash=sha256:dbcec458d5ac37439e86c14794eb922c9fe127c084b07181c1111a1413ec0568
|
|
1522
|
-
# via
|
|
1523
|
-
# pyvistaqt
|
|
1524
|
-
# trajectopy
|
|
1525
|
-
pyvistaqt==0.11.4 \
|
|
1526
|
-
--hash=sha256:b2bc92ac34e2bbd729c55fb27719684d4b518a593fce9c877621020d050b4bd5 \
|
|
1527
|
-
--hash=sha256:f24b166c6835ef3100c1562b6bba411e2a79715cda7fa9f7da999169d2a125de
|
|
1528
|
-
# via trajectopy
|
|
1529
1466
|
pywin32-ctypes==0.2.3 ; sys_platform == 'win32' \
|
|
1530
1467
|
--hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 \
|
|
1531
1468
|
--hash=sha256:d162dc04946d704503b2edc4d55f3dba5c1d539ead017afa00142c38b9885755
|
|
@@ -1598,27 +1535,14 @@ pyyaml-env-tag==1.1 \
|
|
|
1598
1535
|
--hash=sha256:17109e1a528561e32f026364712fee1264bc2ea6715120891174ed1b980d2e04 \
|
|
1599
1536
|
--hash=sha256:2eb38b75a2d21ee0475d6d97ec19c63287a7e140231e4214969d0eac923cd7ff
|
|
1600
1537
|
# via mkdocs
|
|
1601
|
-
qtpy==2.4.3 \
|
|
1602
|
-
--hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 \
|
|
1603
|
-
--hash=sha256:db744f7832e6d3da90568ba6ccbca3ee2b3b4a890c3d6fbbc63142f6e4cdf5bb
|
|
1604
|
-
# via pyvistaqt
|
|
1605
1538
|
requests==2.33.1 \
|
|
1606
1539
|
--hash=sha256:18817f8c57c6263968bc123d237e3b8b08ac046f5456bd1e307ee8f4250d3517 \
|
|
1607
1540
|
--hash=sha256:4e6d1ef462f3626a1f0a0a9c42dd93c63bad33f9f1c1937509b8c5c8718ab56a
|
|
1608
|
-
# via
|
|
1609
|
-
# mkdocs-material
|
|
1610
|
-
# pooch
|
|
1541
|
+
# via mkdocs-material
|
|
1611
1542
|
rich==14.3.3 \
|
|
1612
1543
|
--hash=sha256:793431c1f8619afa7d3b52b2cdec859562b950ea0d4b6b505397612db8d5362d \
|
|
1613
1544
|
--hash=sha256:b8daa0b9e4eef54dd8cf7c86c03713f53241884e814f4e2f5fb342fe520f639b
|
|
1614
|
-
# via
|
|
1615
|
-
# cyclopts
|
|
1616
|
-
# rich-rst
|
|
1617
|
-
# trajectopy
|
|
1618
|
-
rich-rst==1.3.2 \
|
|
1619
|
-
--hash=sha256:a1196fdddf1e364b02ec68a05e8ff8f6914fee10fbca2e6b6735f166bb0da8d4 \
|
|
1620
|
-
--hash=sha256:a99b4907cbe118cf9d18b0b44de272efa61f15117c61e39ebdc431baf5df722a
|
|
1621
|
-
# via cyclopts
|
|
1545
|
+
# via trajectopy
|
|
1622
1546
|
rosbags==0.11.0 \
|
|
1623
1547
|
--hash=sha256:2ce27d8dc37f554f10bf5962f665331ce16f43aba304c6c233eb15fab05b61ab \
|
|
1624
1548
|
--hash=sha256:e73bbe79a15d7f539653375278ffca6c48e56b5c2ada4a4531de0b17737cbc46
|
|
@@ -1768,26 +1692,12 @@ scipy==1.17.1 ; python_full_version >= '3.11' \
|
|
|
1768
1692
|
--hash=sha256:f8885db0bc2bffa59d5c1b72fad7a6a92d3e80e7257f967dd81abb553a90d293 \
|
|
1769
1693
|
--hash=sha256:fcb310ddb270a06114bb64bbe53c94926b943f5b7f0842194d585c65eb4edd76
|
|
1770
1694
|
# via trajectopy
|
|
1771
|
-
scooby==0.11.0 \
|
|
1772
|
-
--hash=sha256:3dfacc6becf2d6558efa4b625bae3b844ced5d256f3143ebf774e005367e712a \
|
|
1773
|
-
--hash=sha256:a79663d1a7711eb104e4b2935988ea1ed5f7be6b7288fad23b4fba7462832f9d
|
|
1774
|
-
# via pyvista
|
|
1775
1695
|
setuptools==82.0.1 \
|
|
1776
1696
|
--hash=sha256:7d872682c5d01cfde07da7bccc7b65469d3dca203318515ada1de5eda35efbf9 \
|
|
1777
1697
|
--hash=sha256:a59e362652f08dcd477c78bb6e7bd9d80a7995bc73ce773050228a348ce2e5bb
|
|
1778
1698
|
# via
|
|
1779
1699
|
# pyinstaller
|
|
1780
1700
|
# pyinstaller-hooks-contrib
|
|
1781
|
-
shiboken6==6.11.0 \
|
|
1782
|
-
--hash=sha256:3bd76cf56105ab2d62ecaff630366f11264f69b88d488f10f048da9a065781f4 \
|
|
1783
|
-
--hash=sha256:483ff78a73c7b3189ca924abc694318084f078bcfeaffa68e32024ff2d025ee1 \
|
|
1784
|
-
--hash=sha256:a10dc7718104ea2dc15d5b0b96909b77162ce1c76fcc6968e6df692b947a00e9 \
|
|
1785
|
-
--hash=sha256:ad54e64f8192ddbdff0c54ac82b89edcd62ed623f502ea21c960541d19514053 \
|
|
1786
|
-
--hash=sha256:d88e8a1eb705f2b9ad21db08a61ae1dc0c773e5cd86a069de0754c4cf1f9b43b
|
|
1787
|
-
# via
|
|
1788
|
-
# pyside6
|
|
1789
|
-
# pyside6-addons
|
|
1790
|
-
# pyside6-essentials
|
|
1791
1701
|
six==1.17.0 \
|
|
1792
1702
|
--hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 \
|
|
1793
1703
|
--hash=sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81
|
|
@@ -1843,17 +1753,14 @@ tomli==2.4.1 ; python_full_version <= '3.11' \
|
|
|
1843
1753
|
# via
|
|
1844
1754
|
# black
|
|
1845
1755
|
# coverage
|
|
1846
|
-
# cyclopts
|
|
1847
1756
|
# pytest
|
|
1848
1757
|
typing-extensions==4.15.0 \
|
|
1849
1758
|
--hash=sha256:0cea48d173cc12fa28ecabc3b837ea3cf6f38c6d1136f85cbaaf598984861466 \
|
|
1850
1759
|
--hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548
|
|
1851
1760
|
# via
|
|
1852
1761
|
# black
|
|
1853
|
-
# cyclopts
|
|
1854
1762
|
# exceptiongroup
|
|
1855
1763
|
# mkdocstrings-python
|
|
1856
|
-
# pyvista
|
|
1857
1764
|
# rosbags
|
|
1858
1765
|
# virtualenv
|
|
1859
1766
|
tzdata==2026.1 ; python_full_version < '3.11' or sys_platform == 'emscripten' or sys_platform == 'win32' \
|
|
@@ -1868,35 +1775,6 @@ virtualenv==21.2.1 \
|
|
|
1868
1775
|
--hash=sha256:b66ffe81301766c0d5e2208fc3576652c59d44e7b731fc5f5ed701c9b537fa78 \
|
|
1869
1776
|
--hash=sha256:bd16b49c53562b28cf1a3ad2f36edb805ad71301dee70ddc449e5c88a9f919a2
|
|
1870
1777
|
# via pre-commit
|
|
1871
|
-
vtk==9.6.0 \
|
|
1872
|
-
--hash=sha256:04a37b251d8a2baba85848f43ae15a40140a7fd25de5e0034e17b15a6e179b66 \
|
|
1873
|
-
--hash=sha256:09ceedfb4e49db477aa40ae83d7578c1007387205463504e63b560e7c56219f3 \
|
|
1874
|
-
--hash=sha256:14ef4d2bb32ee4322145d07d76ac587d6030cff03765fb15c0209b7aabdef7ff \
|
|
1875
|
-
--hash=sha256:1598a524f2b8355be2e369f43343adecbea8ade826f5ba63c29421570b7a8cd3 \
|
|
1876
|
-
--hash=sha256:16075dab279cf079e7d1a52d27219eee0a89f0d7f13a5c1130fa2c0acba100fc \
|
|
1877
|
-
--hash=sha256:1a67c3b1cf1d89e83e6d4cd6e6b070ea5e979477bbc881daf19729b8a8e2cfd7 \
|
|
1878
|
-
--hash=sha256:1af7f194e5b5c665343a41280834aab5d6ba803594032d837ab0710e974339bf \
|
|
1879
|
-
--hash=sha256:1b1f0537c7886d671bd3cb3c09409e2a6565444ccee96dc5a12d19252a1755bf \
|
|
1880
|
-
--hash=sha256:1e59c5badb1c3b86f784db761a86ddc0bcb4a15640a17b64ec5fd0710ed5edf3 \
|
|
1881
|
-
--hash=sha256:351f023eadcd095838e4e3a7bc12b1b80abe3d7a77b9473ddeeefe065ec42cbe \
|
|
1882
|
-
--hash=sha256:3cdc37959e9195c02452cbd6ddee8cb463931fe3a6fcd698ec5cd25c1f15aaba \
|
|
1883
|
-
--hash=sha256:4ea035a360ab3ff3fcc6e9e34e2b7c5d8440d442b4d2f2ec68834dd241d1e45b \
|
|
1884
|
-
--hash=sha256:5b1262a67e358b59c5ae82f136a6515980fbb1a3cf8329dd36b07dcb31c81227 \
|
|
1885
|
-
--hash=sha256:82936685bc64ba4b206e60d67355c75ff6eb80f9e0154a931b4f4a2989bc103f \
|
|
1886
|
-
--hash=sha256:8613b91c9e7d3de3905a9801be646863c93df797facd22b5070c95de6a1d77a4 \
|
|
1887
|
-
--hash=sha256:8df76d131c284e99aac2e76055e5f0a8c94d54197089f8bd2f67213f51de6333 \
|
|
1888
|
-
--hash=sha256:93bd59d309e9ec7a9b6c64142a3e227bc487c065be1bdc45c7c725099c9234e3 \
|
|
1889
|
-
--hash=sha256:951837676f5ce294651f1e051a0581db2d6b0e519d0ce0ebc77ff2f446028a64 \
|
|
1890
|
-
--hash=sha256:a82d59c4119aadd2885e4174432ff87f94320ba38aaeb7e2282ba0e6e3d09e0e \
|
|
1891
|
-
--hash=sha256:aeb84471ef22fffb9120284af2cb0bda6af0b4ca421b9b8cb0741f1ca52930a2 \
|
|
1892
|
-
--hash=sha256:b0b5a3480769439ed9ea393bf7cb474a974550565a39ce9e9586438a24b46b1d \
|
|
1893
|
-
--hash=sha256:ca02262e60d2891d83f64e979a66e303809b182b47fc1c21ca6bbc4041b12419 \
|
|
1894
|
-
--hash=sha256:d06fe9b5a9786165a59f494f801f35ad37018e45cfa91060ff025719a2f1e387 \
|
|
1895
|
-
--hash=sha256:e3368371403d57108471431811851a82ad73524f31b684491eee2c9aef122632 \
|
|
1896
|
-
--hash=sha256:e404d66c11476cfac2781025c29e9518ffbfa9a760ced419e5b34640d437f4dc \
|
|
1897
|
-
--hash=sha256:ebea2a1d6ec6e04822e805acfd3119437ce9728b6807fa707c3ba0dc0de6c90a \
|
|
1898
|
-
--hash=sha256:fcbfa103fb817a7c7564d32b0572c11d301542e860a9bf0592f5f9dd25cdff55
|
|
1899
|
-
# via pyvista
|
|
1900
1778
|
watchdog==6.0.0 \
|
|
1901
1779
|
--hash=sha256:07df1fdd701c5d4c8e55ef6cf55b8f0120fe1aef7ef39a1c6fc6bc2e606d517a \
|
|
1902
1780
|
--hash=sha256:20ffe5b202af80ab4266dcd3e91aae72bf2da48c0d33bdb15c66658e685e94e2 \
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "4.2.3"
|
|
@@ -234,6 +234,10 @@ DARK_STYLESHEET = """
|
|
|
234
234
|
selection-color: #ffffff;
|
|
235
235
|
outline: none;
|
|
236
236
|
}
|
|
237
|
+
QTableView::item:selected {
|
|
238
|
+
background-color: #094771;
|
|
239
|
+
color: #ffffff;
|
|
240
|
+
}
|
|
237
241
|
QTextEdit, QPlainTextEdit {
|
|
238
242
|
background-color: #1e1e1e;
|
|
239
243
|
color: #cccccc;
|
|
@@ -342,6 +346,10 @@ LIGHT_STYLESHEET = """
|
|
|
342
346
|
selection-color: #ffffff;
|
|
343
347
|
outline: none;
|
|
344
348
|
}
|
|
349
|
+
QTableView::item:selected {
|
|
350
|
+
background-color: #0078d4;
|
|
351
|
+
color: #ffffff;
|
|
352
|
+
}
|
|
345
353
|
QTextEdit, QPlainTextEdit {
|
|
346
354
|
background-color: #ffffff;
|
|
347
355
|
color: #333333;
|
|
@@ -77,6 +77,7 @@ class TrajectopyGUI(QtWidgets.QMainWindow):
|
|
|
77
77
|
self.trajectory_table_model = TrajectoryTableModel()
|
|
78
78
|
self.result_table_model = ResultTableModel()
|
|
79
79
|
self.setupUi()
|
|
80
|
+
self._update_preview_colors()
|
|
80
81
|
self.computation_thread: QtCore.QThread | None = None
|
|
81
82
|
|
|
82
83
|
self.trajectory_manager = TrajectoryManager()
|
|
@@ -446,8 +447,13 @@ class TrajectopyGUI(QtWidgets.QMainWindow):
|
|
|
446
447
|
# Draw 2D XY preview
|
|
447
448
|
self._preview_ax.set_visible(True)
|
|
448
449
|
_MAX_PREVIEW_POINTS = 2000
|
|
450
|
+
local_transformer = None
|
|
449
451
|
for entry in entries:
|
|
450
452
|
t = entry.trajectory
|
|
453
|
+
|
|
454
|
+
if local_transformer is None and t.positions.local_transformer is not None:
|
|
455
|
+
local_transformer = t.positions.local_transformer
|
|
456
|
+
|
|
451
457
|
try:
|
|
452
458
|
n = len(t.positions.xyz)
|
|
453
459
|
if n > _MAX_PREVIEW_POINTS:
|
|
@@ -455,7 +461,9 @@ class TrajectopyGUI(QtWidgets.QMainWindow):
|
|
|
455
461
|
pos_subset = t.positions.copy()
|
|
456
462
|
pos_subset.xyz = t.positions.xyz[idx]
|
|
457
463
|
else:
|
|
458
|
-
pos_subset = t.positions
|
|
464
|
+
pos_subset = t.positions.copy()
|
|
465
|
+
|
|
466
|
+
pos_subset.local_transformer = local_transformer
|
|
459
467
|
local_xyz = pos_subset.to_local(inplace=False).xyz
|
|
460
468
|
self._preview_ax.plot(local_xyz[:, 0], local_xyz[:, 1], linewidth=1.0, label=t.name)
|
|
461
469
|
except Exception:
|
|
@@ -653,7 +661,8 @@ class TrajectopyGUI(QtWidgets.QMainWindow):
|
|
|
653
661
|
details_v_splitter.addWidget(self.details_text)
|
|
654
662
|
|
|
655
663
|
# Matplotlib 2D preview canvas
|
|
656
|
-
|
|
664
|
+
preview_colors = MPL_COLORS["dark" if self._dark_theme else "light"]
|
|
665
|
+
self._preview_fig = Figure(figsize=(4, 3), tight_layout=True, facecolor=preview_colors["bg"])
|
|
657
666
|
self._preview_ax = self._preview_fig.add_subplot(111)
|
|
658
667
|
self._preview_ax.set_visible(False)
|
|
659
668
|
self._preview_canvas = FigureCanvas(self._preview_fig)
|