diff options
| author | Daniel Schadt <kingdread@gmx.de> | 2026-09-27 23:52:04 +0200 |
|---|---|---|
| committer | Daniel Schadt <kingdread@gmx.de> | 2026-09-27 23:52:04 +0200 |
| commit | 79b5a9a740eeaec74d3bf22f61aa636f84b93c18 (patch) | |
| tree | 1cb8b3c3de0274ad284d302d48975e8fd0d6a756 | |
| parent | 4b5f715a9b0bc85634ea4c3795f2d6262e14124f (diff) | |
| download | fietsboek-79b5a9a740eeaec74d3bf22f61aa636f84b93c18.tar.gz fietsboek-79b5a9a740eeaec74d3bf22f61aa636f84b93c18.tar.bz2 fietsboek-79b5a9a740eeaec74d3bf22f61aa636f84b93c18.zip | |
filter short climbs
| -rw-r--r-- | fietsboek/geo.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/fietsboek/geo.py b/fietsboek/geo.py index 4daef06..ee26424 100644 --- a/fietsboek/geo.py +++ b/fietsboek/geo.py @@ -224,7 +224,13 @@ class Path: :return: An iterator over the climbs, represented by the starting index and ending index of points included in the climb. """ - return self._trimmed_climbs() + # After all the post-processing of climbs, it might happen that we get + # climbs shorter than the minimum amount again. Therefore, we do another + # filtering step here. + for (i, j) in self._trimmed_climbs(): + path = Path(self.points[i:j + 1]) + if path.movement_data().length >= CLIMB_MIN_LENGTH: + yield (i, j) def _trimmed_climbs(self): for i, j in self._merged_climbs(): |
