Próba zbudowania funkcji, która zwróci całkowitą nakładającą się odległość między 2 segmentami linii, oznaczonymi przez początkowe i końcowe numery int.Obliczanie odległości nakładania się dwóch segmentów linii 1D
Obecnie mam to: To ja wysiadłem z internetu gdzieś
def overlap(min1, max1, min2, max2):
"""returns the overlap between two lines that are 1D"""
result = None
if min1 >= max2 or min2 >= max1: result = 0
elif min1 <= min2:
result = max1 - min2
else: result = max2 - min1
return result
Działa to jednak w przypadku, 0 100 0,20 zwraca 100. I to wyraźnie źle. Czy istnieje prosty sposób obliczenia tego, który zwróci poprawne wartości?
Lubię taką prostą odpowiedź. –