Переглянути джерело

feat: [Interval] add overlaps() method

Found to be useful when writing tests
main
Rob Hallam 1 місяць тому
джерело
коміт
4a05a94784
1 змінених файлів з 12 додано та 0 видалено
  1. +12
    -0
      pipeline/utils.py

+ 12
- 0
pipeline/utils.py Переглянути файл

@@ -217,6 +217,18 @@ class Interval():
self.duration = new_duration
self.end = self.start + self.duration

def overlaps(self, other):
"""Check if this interval overlaps (or touches) with another interval

This is the case if:
- this.start <= other.end <= this.end
- this.start <= other.start <= this.end
- other.start <= this.end <= other.end
- other.start <= this.start <= other.end
"""
return (self.start <= other.end <= self.end) or (self.start <= other.start <= self.end) or \
(other.start <= self.end <= other.end) or (other.start <= self.start <= other.end)

class Feature():
"""A feature extracted from a media file ("has a" Interval)



Завантаження…
Відмінити
Зберегти