summaryrefslogtreecommitdiff
path: root/lib/stitches
diff options
context:
space:
mode:
authorGeorge Steel <george.steel@gmail.com>2022-12-26 20:42:13 -0500
committerGeorge Steel <george.steel@gmail.com>2022-12-26 20:53:30 -0500
commit26c24d98ed37f5fc63436201539ec68023fce154 (patch)
tree223ba1189d8bb0954497850ba4e88f610b4bac30 /lib/stitches
parente28ea888a9604052d6d7b94c8e29e34b74242994 (diff)
python 3.8 fixes
Diffstat (limited to 'lib/stitches')
-rw-r--r--lib/stitches/running_stitch.py7
1 files changed, 4 insertions, 3 deletions
diff --git a/lib/stitches/running_stitch.py b/lib/stitches/running_stitch.py
index fd6d4572..34729109 100644
--- a/lib/stitches/running_stitch.py
+++ b/lib/stitches/running_stitch.py
@@ -4,6 +4,7 @@
# Licensed under the GNU GPL version 3.0 or later. See the file LICENSE for details.
import math
+import typing
from copy import copy
import numpy as np
@@ -13,7 +14,7 @@ from ..utils import prng
""" Utility functions to produce running stitches. """
-def split_segment_even_n(a, b, segments: int, jitter_sigma: float = 0.0, random_seed: str | None = None) -> list[shgeo.Point]:
+def split_segment_even_n(a, b, segments: int, jitter_sigma: float = 0.0, random_seed=None) -> typing.List[shgeo.Point]:
if segments <= 1:
return []
line = shgeo.LineString((a, b))
@@ -27,13 +28,13 @@ def split_segment_even_n(a, b, segments: int, jitter_sigma: float = 0.0, random_
return [line.interpolate(x, normalized=True) for x in sorted(splits)]
-def split_segment_even_dist(a, b, max_length: float, jitter_sigma: float = 0.0, random_seed: str | None = None) -> list[shgeo.Point]:
+def split_segment_even_dist(a, b, max_length: float, jitter_sigma: float = 0.0, random_seed=None) -> typing.List[shgeo.Point]:
distance = shgeo.Point(a).distance(shgeo.Point(b))
segments = math.ceil(distance / max_length)
return split_segment_even_n(a, b, segments, jitter_sigma, random_seed)
-def split_segment_random_phase(a, b, length: float, length_sigma: float, random_seed: str) -> list[shgeo.Point]:
+def split_segment_random_phase(a, b, length: float, length_sigma: float, random_seed: str) -> typing.List[shgeo.Point]:
line = shgeo.LineString([a, b])
progress = length * prng.uniformFloats(random_seed, "phase")[0]
splits = [progress]