Solució del primer lliurament - Grup 10

Organització:

Secció ETSEIB, Departament de Ciències de la Computació, UPC

Data:

10 de març de 2025

Durada:

40 minuts

Copyright:

Reconeixement-CompartirIgual 4.0 No adaptada de Creative Commons

Jocs de proves

>>> from posicions import posicions_fresa
>>> desp1 = [1, 0, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0]
>>> desp1_it = iter(desp1)
>>> p1_it = posicions_fresa((0, 0, 0), desp1_it)
>>> list(p1_it) # doctesttag: +TAG=1_posicions_fresa-no_buida
[(0, 0, 0), (1, 0, 0), (1, 0, -1), (1, 1, -1), (2, 1, -1)]
>>> desp2 = [
...   1, 0, 0,
...   0, 0, -1,
...   0, 1, 0,
...   1, 0, 0,
...   -1, 0, 0,
...   -1, 0, 0,
...   0, -1, 0,
...   0, 0, -1,
... ]
>>> desp2_it = iter(desp2)
>>> p2_it = posicions_fresa((5, -1, 8), desp2_it)
>>> list(p2_it) # doctesttag: +TAG=1_posicions_fresa-no_buida
[(5, -1, 8), (6, -1, 8), (6, -1, 7), (6, 0, 7), (7, 0, 7), (6, 0, 7), (5, 0, 7), (5, -1, 7), (5, -1, 6)]
>>> desp = [0, 0, 1, -1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0]
>>> desp_it = iter(desp)
>>> p_it = posicions_fresa((-5, 1, -8), desp_it)
>>> list(p_it) # doctesttag: +TAG=1_posicions_fresa-no_buida
[(-5, 1, -8), (-5, 1, -7), (-6, 1, -7), (-6, 1, -6), (-5, 1, -6), (-5, 1, -5), (-5, 1, -4), (-5, 0, -4), (-5, -1, -4), (-5, -2, -4), (-5, -3, -4)]
>>> desp = [0, 0, 1, 0, 1, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, -1, 0, 0, -1, 0, -1, 0, 1, 0, 0, 0, -1, 0, 0, 0, 1, 0, -1, 0, -1, 0, 0, -1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, -1, 0, 0, -1, 0, 0, -1]
>>> desp_it = iter(desp)
>>> p_it = posicions_fresa((-3, 5, -4), desp_it)
>>> list(p_it) # doctesttag: +TAG=1_posicions_fresa-no_buida
[(-3, 5, -4), (-3, 5, -3), (-3, 6, -3), (-4, 6, -3), (-4, 6, -2), (-4, 7, -2), (-4, 7, -3), (-4, 7, -4), (-4, 6, -4), (-3, 6, -4), (-3, 5, -4), (-3, 5, -3), (-3, 4, -3), (-4, 4, -3), (-5, 4, -3), (-5, 4, -2), (-5, 4, -1), (-4, 4, -1), (-4, 4, -2), (-4, 4, -3), (-4, 4, -4)]
>>> desp = [0, 0, -1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, -1, 0, 1, 0, 0, 0, 0, -1, 1, 0, 0, 0, -1, 0, -1, 0, 0, -1, 0, 0, 0, -1, 0, 0, 0, -1, 0, 0, -1, 0, -1, 0, -1, 0, 0, 0, 1, 0, 1, 0, 0, -1, 0, 0, 0, 0, 1, 0, -1, 0, 0, 1, 0, -1, 0, 0, 0, -1, 0, 0, 0, 1, 1, 0, 0, -1, 0, 0, 0, 1, 0, 0, -1, 0]
>>> desp_it = iter(desp)
>>> p_it = posicions_fresa((2, -5, 7), desp_it)
>>> list(p_it) # doctesttag: +TAG=1_posicions_fresa-no_buida
[(2, -5, 7), (2, -5, 6), (2, -4, 6), (2, -3, 6), (2, -2, 6), (2, -1, 6), (2, -2, 6), (3, -2, 6), (3, -2, 5), (4, -2, 5), (4, -3, 5), (3, -3, 5), (2, -3, 5), (2, -4, 5), (2, -4, 4), (2, -4, 3), (2, -5, 3), (1, -5, 3), (1, -4, 3), (2, -4, 3), (1, -4, 3), (1, -4, 4), (1, -5, 4), (1, -4, 4), (0, -4, 4), (0, -5, 4), (0, -5, 5), (1, -5, 5), (0, -5, 5), (0, -4, 5), (0, -5, 5)]
>>> desp = []
>>> desp_it = iter(desp)
>>> p_it = posicions_fresa((7, 4, -1), desp_it)
>>> list(p_it) # doctesttag: +TAG=1_posicions_fresa-buida
[(7, 4, -1)]
>>> from trajectories import troba_anomalies
>>> tr1 = [
...   (3, 5, 10),
...   (3, 6, 10),
...   (3, 6, 9),
...   (2, 6, 9),
...   (2, 6, 8),
... ]
>>> it1 = iter(tr1)
>>> an1 = troba_anomalies(it1)
>>> an1 is iter(an1)
True
>>> list(an1) # doctesttag: +TAG=2_trajectories-1_troba_anomalies-sense
[]
>>> tr2 = [
...   (3, 5, 10),
...   (2, 6, 10),  # canvia més d'una coordenada en una unitat
...   (2, 6, 9),
...   (2, 6, 9),   # no canvia cap coordenada
...   (2, 6, 8),
...   (4, 6, 7),   # canvia més d'una coordenada i una d'elles en més d'una unitat
... ]
>>> it2 = iter(tr2)
>>> an2 = troba_anomalies(it2)
>>> an2 is iter(an2)
True
>>> list(an2) # doctesttag: +TAG=2_trajectories-1_troba_anomalies-amb
[((3, 5, 10), (2, 6, 10)), ((2, 6, 9), (2, 6, 9)), ((2, 6, 8), (4, 6, 7))]
>>> tr3 = [
...   (3, 5, 10),
...   (2, 7, 9),
...   (2, 6, 8),
...   (2, 6, 8),
...   (4, 6, 8),
...   (4, 6, 8),
...   (10, 10, 10),
...   (11, 11, 11),
... ]
>>> it3 = iter(tr3)
>>> an3 = troba_anomalies(it3)
>>> an3 is iter(an3)
True
>>> list(an3) # doctesttag: +TAG=2_trajectories-1_troba_anomalies-amb
[((3, 5, 10), (2, 7, 9)), ((2, 7, 9), (2, 6, 8)), ((2, 6, 8), (2, 6, 8)), ((2, 6, 8), (4, 6, 8)), ((4, 6, 8), (4, 6, 8)), ((4, 6, 8), (10, 10, 10)), ((10, 10, 10), (11, 11, 11))]
>>> tr3 = [(-5, 8, -15), (-5, 8, -14), (-5, 8, -6), (-5, 8, -1), (-5, 8, 0), (4, 8, 0), (4, 8, 0), (4, 8, 0), (4, 8, 3), (5, 9, 3), (5, 9, 3), (5, 15, 3), (5, 22, 3), (6, 23, 3), (7, 23, 3), (7, 23, 3), (8, 23, 4), (8, 23, 4), (8, 23, 4), (8, 23, 4)]
>>> it3 = iter(tr3)
>>> an3 = troba_anomalies(it3)
>>> an3 is iter(an3)
True
>>> list(an3) # doctesttag: +TAG=2_trajectories-1_troba_anomalies-amb
[((-5, 8, -14), (-5, 8, -6)), ((-5, 8, -6), (-5, 8, -1)), ((-5, 8, 0), (4, 8, 0)), ((4, 8, 0), (4, 8, 0)), ((4, 8, 0), (4, 8, 0)), ((4, 8, 0), (4, 8, 3)), ((4, 8, 3), (5, 9, 3)), ((5, 9, 3), (5, 9, 3)), ((5, 9, 3), (5, 15, 3)), ((5, 15, 3), (5, 22, 3)), ((5, 22, 3), (6, 23, 3)), ((7, 23, 3), (7, 23, 3)), ((7, 23, 3), (8, 23, 4)), ((8, 23, 4), (8, 23, 4)), ((8, 23, 4), (8, 23, 4)), ((8, 23, 4), (8, 23, 4))]
>>> tr3 = [(37, -5, 10), (42, -5, 10), (44, -5, 10), (44, -5, 10), (44, -4, 11), (44, -4, 13), (44, -4, 22), (44, -4, 22), (44, -2, 22), (44, -2, 28), (44, 7, 28), (44, 7, 28), (44, 7, 28), (44, 7, 28), (44, 8, 29), (44, 8, 29), (44, 9, 30), (45, 10, 30), (45, 10, 38), (46, 10, 38), (46, 10, 45), (46, 10, 45), (47, 11, 45), (47, 11, 45), (47, 12, 45), (47, 19, 45), (56, 19, 45), (56, 19, 45), (57, 19, 45), (57, 23, 45), (57, 23, 45)]
>>> it3 = iter(tr3)
>>> an3 = troba_anomalies(it3)
>>> an3 is iter(an3)
True
>>> list(an3) # doctesttag: +TAG=2_trajectories-1_troba_anomalies-amb
[((37, -5, 10), (42, -5, 10)), ((42, -5, 10), (44, -5, 10)), ((44, -5, 10), (44, -5, 10)), ((44, -5, 10), (44, -4, 11)), ((44, -4, 11), (44, -4, 13)), ((44, -4, 13), (44, -4, 22)), ((44, -4, 22), (44, -4, 22)), ((44, -4, 22), (44, -2, 22)), ((44, -2, 22), (44, -2, 28)), ((44, -2, 28), (44, 7, 28)), ((44, 7, 28), (44, 7, 28)), ((44, 7, 28), (44, 7, 28)), ((44, 7, 28), (44, 7, 28)), ((44, 7, 28), (44, 8, 29)), ((44, 8, 29), (44, 8, 29)), ((44, 8, 29), (44, 9, 30)), ((44, 9, 30), (45, 10, 30)), ((45, 10, 30), (45, 10, 38)), ((46, 10, 38), (46, 10, 45)), ((46, 10, 45), (46, 10, 45)), ((46, 10, 45), (47, 11, 45)), ((47, 11, 45), (47, 11, 45)), ((47, 12, 45), (47, 19, 45)), ((47, 19, 45), (56, 19, 45)), ((56, 19, 45), (56, 19, 45)), ((57, 19, 45), (57, 23, 45)), ((57, 23, 45), (57, 23, 45))]
>>> tr3 = [(58, -12, -43), (58, -12, -43), (65, -12, -43), (65, -11, -42), (66, -10, -42), (66, -9, -42), (66, -9, -42), (67, -9, -41), (67, -9, -38), (67, -5, -38), (67, 4, -38), (74, 4, -38), (74, 8, -38), (74, 8, -31), (74, 8, -31), (75, 8, -31)]
>>> it3 = iter(tr3)
>>> an3 = troba_anomalies(it3)
>>> an3 is iter(an3)
True
>>> list(an3) # doctesttag: +TAG=2_trajectories-1_troba_anomalies-amb
[((58, -12, -43), (58, -12, -43)), ((58, -12, -43), (65, -12, -43)), ((65, -12, -43), (65, -11, -42)), ((65, -11, -42), (66, -10, -42)), ((66, -9, -42), (66, -9, -42)), ((66, -9, -42), (67, -9, -41)), ((67, -9, -41), (67, -9, -38)), ((67, -9, -38), (67, -5, -38)), ((67, -5, -38), (67, 4, -38)), ((67, 4, -38), (74, 4, -38)), ((74, 4, -38), (74, 8, -38)), ((74, 8, -38), (74, 8, -31)), ((74, 8, -31), (74, 8, -31))]
>>> tr3 = [(-5, -52, 4), (2, -52, 4), (2, -52, 4), (2, -52, 4), (3, -51, 4), (4, -50, 4), (4, -49, 5), (4, -49, 5), (4, -49, 9), (5, -48, 9), (5, -48, 10), (10, -48, 10), (10, -40, 10), (10, -39, 11), (11, -39, 11), (12, -38, 11), (12, -38, 11), (12, -38, 11), (12, -38, 11), (12, -38, 20), (12, -38, 20), (12, -37, 21), (12, -36, 21), (12, -36, 22), (12, -28, 22), (12, -27, 23), (19, -27, 23), (19, -27, 27), (19, -20, 27), (19, -20, 27), (19, -20, 27), (19, -16, 27), (19, -9, 27), (19, -8, 27), (19, -7, 28), (20, -7, 28), (21, -7, 29), (21, -7, 29), (27, -7, 29), (27, -6, 29), (27, 1, 29), (28, 1, 30), (28, 1, 30), (29, 1, 30), (30, 2, 30), (30, 2, 34), (30, 2, 34), (30, 2, 34), (30, 3, 35)]
>>> it3 = iter(tr3)
>>> an3 = troba_anomalies(it3)
>>> an3 is iter(an3)
True
>>> list(an3) # doctesttag: +TAG=2_trajectories-1_troba_anomalies-amb
[((-5, -52, 4), (2, -52, 4)), ((2, -52, 4), (2, -52, 4)), ((2, -52, 4), (2, -52, 4)), ((2, -52, 4), (3, -51, 4)), ((3, -51, 4), (4, -50, 4)), ((4, -50, 4), (4, -49, 5)), ((4, -49, 5), (4, -49, 5)), ((4, -49, 5), (4, -49, 9)), ((4, -49, 9), (5, -48, 9)), ((5, -48, 10), (10, -48, 10)), ((10, -48, 10), (10, -40, 10)), ((10, -40, 10), (10, -39, 11)), ((11, -39, 11), (12, -38, 11)), ((12, -38, 11), (12, -38, 11)), ((12, -38, 11), (12, -38, 11)), ((12, -38, 11), (12, -38, 11)), ((12, -38, 11), (12, -38, 20)), ((12, -38, 20), (12, -38, 20)), ((12, -38, 20), (12, -37, 21)), ((12, -36, 22), (12, -28, 22)), ((12, -28, 22), (12, -27, 23)), ((12, -27, 23), (19, -27, 23)), ((19, -27, 23), (19, -27, 27)), ((19, -27, 27), (19, -20, 27)), ((19, -20, 27), (19, -20, 27)), ((19, -20, 27), (19, -20, 27)), ((19, -20, 27), (19, -16, 27)), ((19, -16, 27), (19, -9, 27)), ((19, -8, 27), (19, -7, 28)), ((20, -7, 28), (21, -7, 29)), ((21, -7, 29), (21, -7, 29)), ((21, -7, 29), (27, -7, 29)), ((27, -6, 29), (27, 1, 29)), ((27, 1, 29), (28, 1, 30)), ((28, 1, 30), (28, 1, 30)), ((29, 1, 30), (30, 2, 30)), ((30, 2, 30), (30, 2, 34)), ((30, 2, 34), (30, 2, 34)), ((30, 2, 34), (30, 2, 34)), ((30, 2, 34), (30, 3, 35))]
>>> tr3 = [(51, 102, 85), (52, 103, 85), (52, 103, 89), (53, 104, 89), (53, 104, 89), (60, 104, 89), (60, 104, 97), (60, 104, 97), (60, 104, 97), (60, 105, 98), (61, 105, 99), (61, 105, 105), (61, 105, 106), (62, 105, 107), (69, 105, 107), (69, 105, 107), (69, 105, 107), (69, 105, 107), (69, 110, 107), (69, 113, 107), (69, 113, 107), (70, 114, 107), (70, 123, 107), (70, 131, 107), (70, 132, 107), (70, 132, 107), (70, 132, 107), (71, 132, 108), (72, 133, 108), (72, 133, 108), (72, 133, 116), (73, 133, 116), (73, 133, 116), (76, 133, 116), (76, 133, 123), (76, 133, 123), (81, 133, 123), (82, 133, 124), (82, 133, 124), (91, 133, 124), (91, 141, 124), (91, 141, 124), (91, 141, 124), (92, 141, 125), (93, 142, 125), (93, 144, 125), (93, 145, 126)]
>>> it3 = iter(tr3)
>>> an3 = troba_anomalies(it3)
>>> an3 is iter(an3)
True
>>> list(an3) # doctesttag: +TAG=2_trajectories-1_troba_anomalies-amb
[((51, 102, 85), (52, 103, 85)), ((52, 103, 85), (52, 103, 89)), ((52, 103, 89), (53, 104, 89)), ((53, 104, 89), (53, 104, 89)), ((53, 104, 89), (60, 104, 89)), ((60, 104, 89), (60, 104, 97)), ((60, 104, 97), (60, 104, 97)), ((60, 104, 97), (60, 104, 97)), ((60, 104, 97), (60, 105, 98)), ((60, 105, 98), (61, 105, 99)), ((61, 105, 99), (61, 105, 105)), ((61, 105, 106), (62, 105, 107)), ((62, 105, 107), (69, 105, 107)), ((69, 105, 107), (69, 105, 107)), ((69, 105, 107), (69, 105, 107)), ((69, 105, 107), (69, 105, 107)), ((69, 105, 107), (69, 110, 107)), ((69, 110, 107), (69, 113, 107)), ((69, 113, 107), (69, 113, 107)), ((69, 113, 107), (70, 114, 107)), ((70, 114, 107), (70, 123, 107)), ((70, 123, 107), (70, 131, 107)), ((70, 132, 107), (70, 132, 107)), ((70, 132, 107), (70, 132, 107)), ((70, 132, 107), (71, 132, 108)), ((71, 132, 108), (72, 133, 108)), ((72, 133, 108), (72, 133, 108)), ((72, 133, 108), (72, 133, 116)), ((73, 133, 116), (73, 133, 116)), ((73, 133, 116), (76, 133, 116)), ((76, 133, 116), (76, 133, 123)), ((76, 133, 123), (76, 133, 123)), ((76, 133, 123), (81, 133, 123)), ((81, 133, 123), (82, 133, 124)), ((82, 133, 124), (82, 133, 124)), ((82, 133, 124), (91, 133, 124)), ((91, 133, 124), (91, 141, 124)), ((91, 141, 124), (91, 141, 124)), ((91, 141, 124), (91, 141, 124)), ((91, 141, 124), (92, 141, 125)), ((92, 141, 125), (93, 142, 125)), ((93, 142, 125), (93, 144, 125)), ((93, 144, 125), (93, 145, 126))]
>>> tr3 = [(-3, 2, 7), (-3, 3, 7), (-3, 3, 8), (-3, 3, 8), (-2, 3, 9), (-1, 4, 9), (-1, 4, 9), (8, 4, 9), (9, 4, 9), (17, 4, 9), (19, 4, 9), (19, 4, 10), (20, 5, 10), (21, 6, 10), (24, 6, 10), (32, 6, 10), (32, 6, 10), (32, 6, 10), (32, 11, 10), (32, 13, 10), (32, 13, 10), (33, 13, 11), (34, 14, 11), (34, 19, 11), (35, 19, 12), (36, 19, 12), (42, 19, 12), (42, 19, 12), (42, 20, 13), (42, 21, 14), (42, 22, 15), (42, 22, 15), (43, 22, 15), (43, 23, 16), (43, 24, 17), (44, 25, 17), (44, 25, 17), (45, 26, 17), (45, 26, 18), (45, 30, 18), (45, 30, 18), (45, 30, 18), (46, 30, 19), (46, 30, 20), (46, 30, 27), (51, 30, 27)]
>>> it3 = iter(tr3)
>>> an3 = troba_anomalies(it3)
>>> an3 is iter(an3)
True
>>> list(an3) # doctesttag: +TAG=2_trajectories-1_troba_anomalies-amb
[((-3, 3, 8), (-3, 3, 8)), ((-3, 3, 8), (-2, 3, 9)), ((-2, 3, 9), (-1, 4, 9)), ((-1, 4, 9), (-1, 4, 9)), ((-1, 4, 9), (8, 4, 9)), ((9, 4, 9), (17, 4, 9)), ((17, 4, 9), (19, 4, 9)), ((19, 4, 10), (20, 5, 10)), ((20, 5, 10), (21, 6, 10)), ((21, 6, 10), (24, 6, 10)), ((24, 6, 10), (32, 6, 10)), ((32, 6, 10), (32, 6, 10)), ((32, 6, 10), (32, 6, 10)), ((32, 6, 10), (32, 11, 10)), ((32, 11, 10), (32, 13, 10)), ((32, 13, 10), (32, 13, 10)), ((32, 13, 10), (33, 13, 11)), ((33, 13, 11), (34, 14, 11)), ((34, 14, 11), (34, 19, 11)), ((34, 19, 11), (35, 19, 12)), ((36, 19, 12), (42, 19, 12)), ((42, 19, 12), (42, 19, 12)), ((42, 19, 12), (42, 20, 13)), ((42, 20, 13), (42, 21, 14)), ((42, 21, 14), (42, 22, 15)), ((42, 22, 15), (42, 22, 15)), ((43, 22, 15), (43, 23, 16)), ((43, 23, 16), (43, 24, 17)), ((43, 24, 17), (44, 25, 17)), ((44, 25, 17), (44, 25, 17)), ((44, 25, 17), (45, 26, 17)), ((45, 26, 18), (45, 30, 18)), ((45, 30, 18), (45, 30, 18)), ((45, 30, 18), (45, 30, 18)), ((45, 30, 18), (46, 30, 19)), ((46, 30, 20), (46, 30, 27)), ((46, 30, 27), (51, 30, 27))]
>>> tr3 = [(4, 5, -6), (5, 5, -6), (5, 5, -6), (5, 5, -3), (6, 6, -3), (6, 6, -3), (6, 6, -3), (6, 6, 5), (6, 6, 5), (7, 6, 5), (7, 6, 5), (7, 6, 5), (7, 8, 5), (7, 8, 10), (7, 8, 10), (11, 8, 10), (11, 8, 10), (11, 8, 10), (12, 9, 10), (12, 10, 11), (12, 11, 12), (19, 11, 12), (26, 11, 12), (27, 12, 12), (35, 12, 12), (36, 13, 12), (40, 13, 12), (40, 13, 12), (40, 13, 12), (41, 14, 12), (41, 14, 12), (41, 15, 13), (41, 15, 13), (41, 15, 18), (42, 15, 18), (42, 16, 18), (42, 16, 18), (45, 16, 18), (45, 16, 26), (46, 17, 26), (46, 17, 26), (46, 23, 26), (46, 24, 27), (46, 24, 29), (47, 24, 29), (48, 25, 29), (48, 26, 30), (48, 32, 30), (48, 40, 30), (49, 40, 31)]
>>> it3 = iter(tr3)
>>> an3 = troba_anomalies(it3)
>>> an3 is iter(an3)
True
>>> list(an3) # doctesttag: +TAG=2_trajectories-1_troba_anomalies-amb
[((5, 5, -6), (5, 5, -6)), ((5, 5, -6), (5, 5, -3)), ((5, 5, -3), (6, 6, -3)), ((6, 6, -3), (6, 6, -3)), ((6, 6, -3), (6, 6, -3)), ((6, 6, -3), (6, 6, 5)), ((6, 6, 5), (6, 6, 5)), ((7, 6, 5), (7, 6, 5)), ((7, 6, 5), (7, 6, 5)), ((7, 6, 5), (7, 8, 5)), ((7, 8, 5), (7, 8, 10)), ((7, 8, 10), (7, 8, 10)), ((7, 8, 10), (11, 8, 10)), ((11, 8, 10), (11, 8, 10)), ((11, 8, 10), (11, 8, 10)), ((11, 8, 10), (12, 9, 10)), ((12, 9, 10), (12, 10, 11)), ((12, 10, 11), (12, 11, 12)), ((12, 11, 12), (19, 11, 12)), ((19, 11, 12), (26, 11, 12)), ((26, 11, 12), (27, 12, 12)), ((27, 12, 12), (35, 12, 12)), ((35, 12, 12), (36, 13, 12)), ((36, 13, 12), (40, 13, 12)), ((40, 13, 12), (40, 13, 12)), ((40, 13, 12), (40, 13, 12)), ((40, 13, 12), (41, 14, 12)), ((41, 14, 12), (41, 14, 12)), ((41, 14, 12), (41, 15, 13)), ((41, 15, 13), (41, 15, 13)), ((41, 15, 13), (41, 15, 18)), ((42, 16, 18), (42, 16, 18)), ((42, 16, 18), (45, 16, 18)), ((45, 16, 18), (45, 16, 26)), ((45, 16, 26), (46, 17, 26)), ((46, 17, 26), (46, 17, 26)), ((46, 17, 26), (46, 23, 26)), ((46, 23, 26), (46, 24, 27)), ((46, 24, 27), (46, 24, 29)), ((47, 24, 29), (48, 25, 29)), ((48, 25, 29), (48, 26, 30)), ((48, 26, 30), (48, 32, 30)), ((48, 32, 30), (48, 40, 30)), ((48, 40, 30), (49, 40, 31))]
>>> tr3 = []
>>> it3 = iter(tr3)
>>> an3 = troba_anomalies(it3)
>>> an3 is iter(an3)
True
>>> list(an3) # doctesttag: +TAG=2_trajectories-1_troba_anomalies-sense
[]
>>> from trajectories import classifica_anomalies
>>> an1 = [
...   ((3, 5, 10), (2, 6, 10)), # canvia més d'una coordenada en una unitat
...   ((2, 6, 9), (2, 6, 9)),   # no canvia cap coordenada
...   ((2, 6, 8), (4, 6, 7)),   # canvia més d'una coordenada i una d'elles en més d'una unitat
... ]
>>> it1 = iter(an1)
>>> cl1_1, cl1_2 = classifica_anomalies(it1)
>>> cl1_1 is iter(cl1_1)
True
>>> list(cl1_1) # doctesttag: +TAG=2_trajectories-2_classifica_anomalies-amb
[((2, 6, 9), (2, 6, 9))]
>>> cl1_2 is iter(cl1_2)
True
>>> list(cl1_2) # doctesttag: +TAG=2_trajectories-2_classifica_anomalies-amb
[((3, 5, 10), (2, 6, 10)), ((2, 6, 8), (4, 6, 7))]
>>> an2 = [
...   ((3, 5, 10), (2, 7, 9)),     # canvia més d'una coordenada i en més d'una unitat
...   ((2, 7, 9), (2, 6, 8)),      # canvia més d'una coordenada
...   ((2, 6, 8), (2, 6, 8)),      # no canvia cap coordenada
...   ((2, 6, 8), (4, 6, 8)),      # canvia en més d'una unitat
...   ((4, 6, 8), (4, 6, 8)),      # no canvia cap coordenada
...   ((4, 6, 8), (10, 10, 10)),   # canvia més d'una coordenada i en més d'una unitat
...   ((10, 10, 10), (11, 11, 11)) # canvia més d'una coordenada
... ]
>>> it2 = iter(an2)
>>> cl2_1, cl2_2 = classifica_anomalies(it2)
>>> cl2_1 is iter(cl2_1)
True
>>> list(cl2_1) # doctesttag: +TAG=2_trajectories-2_classifica_anomalies-amb
[((2, 6, 8), (2, 6, 8)), ((4, 6, 8), (4, 6, 8))]
>>> cl2_2 is iter(cl2_2)
True
>>> list(cl2_2) # doctesttag: +TAG=2_trajectories-2_classifica_anomalies-amb
[((3, 5, 10), (2, 7, 9)), ((2, 7, 9), (2, 6, 8)), ((2, 6, 8), (4, 6, 8)), ((4, 6, 8), (10, 10, 10)), ((10, 10, 10), (11, 11, 11))]
>>> an2 = [((3, 5, 10), (2, 7, 9)), ((2, 7, 9), (2, 6, 8)), ((2, 6, 8), (2, 6, 8)), ((2, 6, 8), (4, 6, 8)), ((4, 6, 8), (4, 6, 8)), ((4, 6, 8), (10, 10, 10)), ((10, 10, 10), (11, 11, 11))]
>>> it2 = iter(an2)
>>> cl2_1, cl2_2 = classifica_anomalies(it2)
>>> cl2_1 is iter(cl2_1)
True
>>> list(cl2_1) # doctesttag: +TAG=2_trajectories-2_classifica_anomalies-amb
[((2, 6, 8), (2, 6, 8)), ((4, 6, 8), (4, 6, 8))]
>>> cl2_2 is iter(cl2_2)
True
>>> list(cl2_2) # doctesttag: +TAG=2_trajectories-2_classifica_anomalies-amb
[((3, 5, 10), (2, 7, 9)), ((2, 7, 9), (2, 6, 8)), ((2, 6, 8), (4, 6, 8)), ((4, 6, 8), (10, 10, 10)), ((10, 10, 10), (11, 11, 11))]
>>> an2 = [((-5, 8, -14), (-5, 8, -6)), ((-5, 8, -6), (-5, 8, -1)), ((-5, 8, 0), (4, 8, 0)), ((4, 8, 0), (4, 8, 0)), ((4, 8, 0), (4, 8, 0)), ((4, 8, 0), (4, 8, 3)), ((4, 8, 3), (5, 9, 3)), ((5, 9, 3), (5, 9, 3)), ((5, 9, 3), (5, 15, 3)), ((5, 15, 3), (5, 22, 3)), ((5, 22, 3), (6, 23, 3)), ((7, 23, 3), (7, 23, 3)), ((7, 23, 3), (8, 23, 4)), ((8, 23, 4), (8, 23, 4)), ((8, 23, 4), (8, 23, 4)), ((8, 23, 4), (8, 23, 4))]
>>> it2 = iter(an2)
>>> cl2_1, cl2_2 = classifica_anomalies(it2)
>>> cl2_1 is iter(cl2_1)
True
>>> list(cl2_1) # doctesttag: +TAG=2_trajectories-2_classifica_anomalies-amb
[((4, 8, 0), (4, 8, 0)), ((4, 8, 0), (4, 8, 0)), ((5, 9, 3), (5, 9, 3)), ((7, 23, 3), (7, 23, 3)), ((8, 23, 4), (8, 23, 4)), ((8, 23, 4), (8, 23, 4)), ((8, 23, 4), (8, 23, 4))]
>>> cl2_2 is iter(cl2_2)
True
>>> list(cl2_2) # doctesttag: +TAG=2_trajectories-2_classifica_anomalies-amb
[((-5, 8, -14), (-5, 8, -6)), ((-5, 8, -6), (-5, 8, -1)), ((-5, 8, 0), (4, 8, 0)), ((4, 8, 0), (4, 8, 3)), ((4, 8, 3), (5, 9, 3)), ((5, 9, 3), (5, 15, 3)), ((5, 15, 3), (5, 22, 3)), ((5, 22, 3), (6, 23, 3)), ((7, 23, 3), (8, 23, 4))]
>>> an2 = [((37, -5, 10), (42, -5, 10)), ((42, -5, 10), (44, -5, 10)), ((44, -5, 10), (44, -5, 10)), ((44, -5, 10), (44, -4, 11)), ((44, -4, 11), (44, -4, 13)), ((44, -4, 13), (44, -4, 22)), ((44, -4, 22), (44, -4, 22)), ((44, -4, 22), (44, -2, 22)), ((44, -2, 22), (44, -2, 28)), ((44, -2, 28), (44, 7, 28)), ((44, 7, 28), (44, 7, 28)), ((44, 7, 28), (44, 7, 28)), ((44, 7, 28), (44, 7, 28)), ((44, 7, 28), (44, 8, 29)), ((44, 8, 29), (44, 8, 29)), ((44, 8, 29), (44, 9, 30)), ((44, 9, 30), (45, 10, 30)), ((45, 10, 30), (45, 10, 38)), ((46, 10, 38), (46, 10, 45)), ((46, 10, 45), (46, 10, 45)), ((46, 10, 45), (47, 11, 45)), ((47, 11, 45), (47, 11, 45)), ((47, 12, 45), (47, 19, 45)), ((47, 19, 45), (56, 19, 45)), ((56, 19, 45), (56, 19, 45)), ((57, 19, 45), (57, 23, 45)), ((57, 23, 45), (57, 23, 45))]
>>> it2 = iter(an2)
>>> cl2_1, cl2_2 = classifica_anomalies(it2)
>>> cl2_1 is iter(cl2_1)
True
>>> list(cl2_1) # doctesttag: +TAG=2_trajectories-2_classifica_anomalies-amb
[((44, -5, 10), (44, -5, 10)), ((44, -4, 22), (44, -4, 22)), ((44, 7, 28), (44, 7, 28)), ((44, 7, 28), (44, 7, 28)), ((44, 7, 28), (44, 7, 28)), ((44, 8, 29), (44, 8, 29)), ((46, 10, 45), (46, 10, 45)), ((47, 11, 45), (47, 11, 45)), ((56, 19, 45), (56, 19, 45)), ((57, 23, 45), (57, 23, 45))]
>>> cl2_2 is iter(cl2_2)
True
>>> list(cl2_2) # doctesttag: +TAG=2_trajectories-2_classifica_anomalies-amb
[((37, -5, 10), (42, -5, 10)), ((42, -5, 10), (44, -5, 10)), ((44, -5, 10), (44, -4, 11)), ((44, -4, 11), (44, -4, 13)), ((44, -4, 13), (44, -4, 22)), ((44, -4, 22), (44, -2, 22)), ((44, -2, 22), (44, -2, 28)), ((44, -2, 28), (44, 7, 28)), ((44, 7, 28), (44, 8, 29)), ((44, 8, 29), (44, 9, 30)), ((44, 9, 30), (45, 10, 30)), ((45, 10, 30), (45, 10, 38)), ((46, 10, 38), (46, 10, 45)), ((46, 10, 45), (47, 11, 45)), ((47, 12, 45), (47, 19, 45)), ((47, 19, 45), (56, 19, 45)), ((57, 19, 45), (57, 23, 45))]
>>> an2 = [((58, -12, -43), (58, -12, -43)), ((58, -12, -43), (65, -12, -43)), ((65, -12, -43), (65, -11, -42)), ((65, -11, -42), (66, -10, -42)), ((66, -9, -42), (66, -9, -42)), ((66, -9, -42), (67, -9, -41)), ((67, -9, -41), (67, -9, -38)), ((67, -9, -38), (67, -5, -38)), ((67, -5, -38), (67, 4, -38)), ((67, 4, -38), (74, 4, -38)), ((74, 4, -38), (74, 8, -38)), ((74, 8, -38), (74, 8, -31)), ((74, 8, -31), (74, 8, -31))]
>>> it2 = iter(an2)
>>> cl2_1, cl2_2 = classifica_anomalies(it2)
>>> cl2_1 is iter(cl2_1)
True
>>> list(cl2_1) # doctesttag: +TAG=2_trajectories-2_classifica_anomalies-amb
[((58, -12, -43), (58, -12, -43)), ((66, -9, -42), (66, -9, -42)), ((74, 8, -31), (74, 8, -31))]
>>> cl2_2 is iter(cl2_2)
True
>>> list(cl2_2) # doctesttag: +TAG=2_trajectories-2_classifica_anomalies-amb
[((58, -12, -43), (65, -12, -43)), ((65, -12, -43), (65, -11, -42)), ((65, -11, -42), (66, -10, -42)), ((66, -9, -42), (67, -9, -41)), ((67, -9, -41), (67, -9, -38)), ((67, -9, -38), (67, -5, -38)), ((67, -5, -38), (67, 4, -38)), ((67, 4, -38), (74, 4, -38)), ((74, 4, -38), (74, 8, -38)), ((74, 8, -38), (74, 8, -31))]
>>> an2 = [((-5, -52, 4), (2, -52, 4)), ((2, -52, 4), (2, -52, 4)), ((2, -52, 4), (2, -52, 4)), ((2, -52, 4), (3, -51, 4)), ((3, -51, 4), (4, -50, 4)), ((4, -50, 4), (4, -49, 5)), ((4, -49, 5), (4, -49, 5)), ((4, -49, 5), (4, -49, 9)), ((4, -49, 9), (5, -48, 9)), ((5, -48, 10), (10, -48, 10)), ((10, -48, 10), (10, -40, 10)), ((10, -40, 10), (10, -39, 11)), ((11, -39, 11), (12, -38, 11)), ((12, -38, 11), (12, -38, 11)), ((12, -38, 11), (12, -38, 11)), ((12, -38, 11), (12, -38, 11)), ((12, -38, 11), (12, -38, 20)), ((12, -38, 20), (12, -38, 20)), ((12, -38, 20), (12, -37, 21)), ((12, -36, 22), (12, -28, 22)), ((12, -28, 22), (12, -27, 23)), ((12, -27, 23), (19, -27, 23)), ((19, -27, 23), (19, -27, 27)), ((19, -27, 27), (19, -20, 27)), ((19, -20, 27), (19, -20, 27)), ((19, -20, 27), (19, -20, 27)), ((19, -20, 27), (19, -16, 27)), ((19, -16, 27), (19, -9, 27)), ((19, -8, 27), (19, -7, 28)), ((20, -7, 28), (21, -7, 29)), ((21, -7, 29), (21, -7, 29)), ((21, -7, 29), (27, -7, 29)), ((27, -6, 29), (27, 1, 29)), ((27, 1, 29), (28, 1, 30)), ((28, 1, 30), (28, 1, 30)), ((29, 1, 30), (30, 2, 30)), ((30, 2, 30), (30, 2, 34)), ((30, 2, 34), (30, 2, 34)), ((30, 2, 34), (30, 2, 34)), ((30, 2, 34), (30, 3, 35))]
>>> it2 = iter(an2)
>>> cl2_1, cl2_2 = classifica_anomalies(it2)
>>> cl2_1 is iter(cl2_1)
True
>>> list(cl2_1) # doctesttag: +TAG=2_trajectories-2_classifica_anomalies-amb
[((2, -52, 4), (2, -52, 4)), ((2, -52, 4), (2, -52, 4)), ((4, -49, 5), (4, -49, 5)), ((12, -38, 11), (12, -38, 11)), ((12, -38, 11), (12, -38, 11)), ((12, -38, 11), (12, -38, 11)), ((12, -38, 20), (12, -38, 20)), ((19, -20, 27), (19, -20, 27)), ((19, -20, 27), (19, -20, 27)), ((21, -7, 29), (21, -7, 29)), ((28, 1, 30), (28, 1, 30)), ((30, 2, 34), (30, 2, 34)), ((30, 2, 34), (30, 2, 34))]
>>> cl2_2 is iter(cl2_2)
True
>>> list(cl2_2) # doctesttag: +TAG=2_trajectories-2_classifica_anomalies-amb
[((-5, -52, 4), (2, -52, 4)), ((2, -52, 4), (3, -51, 4)), ((3, -51, 4), (4, -50, 4)), ((4, -50, 4), (4, -49, 5)), ((4, -49, 5), (4, -49, 9)), ((4, -49, 9), (5, -48, 9)), ((5, -48, 10), (10, -48, 10)), ((10, -48, 10), (10, -40, 10)), ((10, -40, 10), (10, -39, 11)), ((11, -39, 11), (12, -38, 11)), ((12, -38, 11), (12, -38, 20)), ((12, -38, 20), (12, -37, 21)), ((12, -36, 22), (12, -28, 22)), ((12, -28, 22), (12, -27, 23)), ((12, -27, 23), (19, -27, 23)), ((19, -27, 23), (19, -27, 27)), ((19, -27, 27), (19, -20, 27)), ((19, -20, 27), (19, -16, 27)), ((19, -16, 27), (19, -9, 27)), ((19, -8, 27), (19, -7, 28)), ((20, -7, 28), (21, -7, 29)), ((21, -7, 29), (27, -7, 29)), ((27, -6, 29), (27, 1, 29)), ((27, 1, 29), (28, 1, 30)), ((29, 1, 30), (30, 2, 30)), ((30, 2, 30), (30, 2, 34)), ((30, 2, 34), (30, 3, 35))]
>>> an2 = [((51, 102, 85), (52, 103, 85)), ((52, 103, 85), (52, 103, 89)), ((52, 103, 89), (53, 104, 89)), ((53, 104, 89), (53, 104, 89)), ((53, 104, 89), (60, 104, 89)), ((60, 104, 89), (60, 104, 97)), ((60, 104, 97), (60, 104, 97)), ((60, 104, 97), (60, 104, 97)), ((60, 104, 97), (60, 105, 98)), ((60, 105, 98), (61, 105, 99)), ((61, 105, 99), (61, 105, 105)), ((61, 105, 106), (62, 105, 107)), ((62, 105, 107), (69, 105, 107)), ((69, 105, 107), (69, 105, 107)), ((69, 105, 107), (69, 105, 107)), ((69, 105, 107), (69, 105, 107)), ((69, 105, 107), (69, 110, 107)), ((69, 110, 107), (69, 113, 107)), ((69, 113, 107), (69, 113, 107)), ((69, 113, 107), (70, 114, 107)), ((70, 114, 107), (70, 123, 107)), ((70, 123, 107), (70, 131, 107)), ((70, 132, 107), (70, 132, 107)), ((70, 132, 107), (70, 132, 107)), ((70, 132, 107), (71, 132, 108)), ((71, 132, 108), (72, 133, 108)), ((72, 133, 108), (72, 133, 108)), ((72, 133, 108), (72, 133, 116)), ((73, 133, 116), (73, 133, 116)), ((73, 133, 116), (76, 133, 116)), ((76, 133, 116), (76, 133, 123)), ((76, 133, 123), (76, 133, 123)), ((76, 133, 123), (81, 133, 123)), ((81, 133, 123), (82, 133, 124)), ((82, 133, 124), (82, 133, 124)), ((82, 133, 124), (91, 133, 124)), ((91, 133, 124), (91, 141, 124)), ((91, 141, 124), (91, 141, 124)), ((91, 141, 124), (91, 141, 124)), ((91, 141, 124), (92, 141, 125)), ((92, 141, 125), (93, 142, 125)), ((93, 142, 125), (93, 144, 125)), ((93, 144, 125), (93, 145, 126))]
>>> it2 = iter(an2)
>>> cl2_1, cl2_2 = classifica_anomalies(it2)
>>> cl2_1 is iter(cl2_1)
True
>>> list(cl2_1) # doctesttag: +TAG=2_trajectories-2_classifica_anomalies-amb
[((53, 104, 89), (53, 104, 89)), ((60, 104, 97), (60, 104, 97)), ((60, 104, 97), (60, 104, 97)), ((69, 105, 107), (69, 105, 107)), ((69, 105, 107), (69, 105, 107)), ((69, 105, 107), (69, 105, 107)), ((69, 113, 107), (69, 113, 107)), ((70, 132, 107), (70, 132, 107)), ((70, 132, 107), (70, 132, 107)), ((72, 133, 108), (72, 133, 108)), ((73, 133, 116), (73, 133, 116)), ((76, 133, 123), (76, 133, 123)), ((82, 133, 124), (82, 133, 124)), ((91, 141, 124), (91, 141, 124)), ((91, 141, 124), (91, 141, 124))]
>>> cl2_2 is iter(cl2_2)
True
>>> list(cl2_2) # doctesttag: +TAG=2_trajectories-2_classifica_anomalies-amb
[((51, 102, 85), (52, 103, 85)), ((52, 103, 85), (52, 103, 89)), ((52, 103, 89), (53, 104, 89)), ((53, 104, 89), (60, 104, 89)), ((60, 104, 89), (60, 104, 97)), ((60, 104, 97), (60, 105, 98)), ((60, 105, 98), (61, 105, 99)), ((61, 105, 99), (61, 105, 105)), ((61, 105, 106), (62, 105, 107)), ((62, 105, 107), (69, 105, 107)), ((69, 105, 107), (69, 110, 107)), ((69, 110, 107), (69, 113, 107)), ((69, 113, 107), (70, 114, 107)), ((70, 114, 107), (70, 123, 107)), ((70, 123, 107), (70, 131, 107)), ((70, 132, 107), (71, 132, 108)), ((71, 132, 108), (72, 133, 108)), ((72, 133, 108), (72, 133, 116)), ((73, 133, 116), (76, 133, 116)), ((76, 133, 116), (76, 133, 123)), ((76, 133, 123), (81, 133, 123)), ((81, 133, 123), (82, 133, 124)), ((82, 133, 124), (91, 133, 124)), ((91, 133, 124), (91, 141, 124)), ((91, 141, 124), (92, 141, 125)), ((92, 141, 125), (93, 142, 125)), ((93, 142, 125), (93, 144, 125)), ((93, 144, 125), (93, 145, 126))]
>>> an2 = [((-3, 3, 8), (-3, 3, 8)), ((-3, 3, 8), (-2, 3, 9)), ((-2, 3, 9), (-1, 4, 9)), ((-1, 4, 9), (-1, 4, 9)), ((-1, 4, 9), (8, 4, 9)), ((9, 4, 9), (17, 4, 9)), ((17, 4, 9), (19, 4, 9)), ((19, 4, 10), (20, 5, 10)), ((20, 5, 10), (21, 6, 10)), ((21, 6, 10), (24, 6, 10)), ((24, 6, 10), (32, 6, 10)), ((32, 6, 10), (32, 6, 10)), ((32, 6, 10), (32, 6, 10)), ((32, 6, 10), (32, 11, 10)), ((32, 11, 10), (32, 13, 10)), ((32, 13, 10), (32, 13, 10)), ((32, 13, 10), (33, 13, 11)), ((33, 13, 11), (34, 14, 11)), ((34, 14, 11), (34, 19, 11)), ((34, 19, 11), (35, 19, 12)), ((36, 19, 12), (42, 19, 12)), ((42, 19, 12), (42, 19, 12)), ((42, 19, 12), (42, 20, 13)), ((42, 20, 13), (42, 21, 14)), ((42, 21, 14), (42, 22, 15)), ((42, 22, 15), (42, 22, 15)), ((43, 22, 15), (43, 23, 16)), ((43, 23, 16), (43, 24, 17)), ((43, 24, 17), (44, 25, 17)), ((44, 25, 17), (44, 25, 17)), ((44, 25, 17), (45, 26, 17)), ((45, 26, 18), (45, 30, 18)), ((45, 30, 18), (45, 30, 18)), ((45, 30, 18), (45, 30, 18)), ((45, 30, 18), (46, 30, 19)), ((46, 30, 20), (46, 30, 27)), ((46, 30, 27), (51, 30, 27))]
>>> it2 = iter(an2)
>>> cl2_1, cl2_2 = classifica_anomalies(it2)
>>> cl2_1 is iter(cl2_1)
True
>>> list(cl2_1) # doctesttag: +TAG=2_trajectories-2_classifica_anomalies-amb
[((-3, 3, 8), (-3, 3, 8)), ((-1, 4, 9), (-1, 4, 9)), ((32, 6, 10), (32, 6, 10)), ((32, 6, 10), (32, 6, 10)), ((32, 13, 10), (32, 13, 10)), ((42, 19, 12), (42, 19, 12)), ((42, 22, 15), (42, 22, 15)), ((44, 25, 17), (44, 25, 17)), ((45, 30, 18), (45, 30, 18)), ((45, 30, 18), (45, 30, 18))]
>>> cl2_2 is iter(cl2_2)
True
>>> list(cl2_2) # doctesttag: +TAG=2_trajectories-2_classifica_anomalies-amb
[((-3, 3, 8), (-2, 3, 9)), ((-2, 3, 9), (-1, 4, 9)), ((-1, 4, 9), (8, 4, 9)), ((9, 4, 9), (17, 4, 9)), ((17, 4, 9), (19, 4, 9)), ((19, 4, 10), (20, 5, 10)), ((20, 5, 10), (21, 6, 10)), ((21, 6, 10), (24, 6, 10)), ((24, 6, 10), (32, 6, 10)), ((32, 6, 10), (32, 11, 10)), ((32, 11, 10), (32, 13, 10)), ((32, 13, 10), (33, 13, 11)), ((33, 13, 11), (34, 14, 11)), ((34, 14, 11), (34, 19, 11)), ((34, 19, 11), (35, 19, 12)), ((36, 19, 12), (42, 19, 12)), ((42, 19, 12), (42, 20, 13)), ((42, 20, 13), (42, 21, 14)), ((42, 21, 14), (42, 22, 15)), ((43, 22, 15), (43, 23, 16)), ((43, 23, 16), (43, 24, 17)), ((43, 24, 17), (44, 25, 17)), ((44, 25, 17), (45, 26, 17)), ((45, 26, 18), (45, 30, 18)), ((45, 30, 18), (46, 30, 19)), ((46, 30, 20), (46, 30, 27)), ((46, 30, 27), (51, 30, 27))]
>>> an2 = [((5, 5, -6), (5, 5, -6)), ((5, 5, -6), (5, 5, -3)), ((5, 5, -3), (6, 6, -3)), ((6, 6, -3), (6, 6, -3)), ((6, 6, -3), (6, 6, -3)), ((6, 6, -3), (6, 6, 5)), ((6, 6, 5), (6, 6, 5)), ((7, 6, 5), (7, 6, 5)), ((7, 6, 5), (7, 6, 5)), ((7, 6, 5), (7, 8, 5)), ((7, 8, 5), (7, 8, 10)), ((7, 8, 10), (7, 8, 10)), ((7, 8, 10), (11, 8, 10)), ((11, 8, 10), (11, 8, 10)), ((11, 8, 10), (11, 8, 10)), ((11, 8, 10), (12, 9, 10)), ((12, 9, 10), (12, 10, 11)), ((12, 10, 11), (12, 11, 12)), ((12, 11, 12), (19, 11, 12)), ((19, 11, 12), (26, 11, 12)), ((26, 11, 12), (27, 12, 12)), ((27, 12, 12), (35, 12, 12)), ((35, 12, 12), (36, 13, 12)), ((36, 13, 12), (40, 13, 12)), ((40, 13, 12), (40, 13, 12)), ((40, 13, 12), (40, 13, 12)), ((40, 13, 12), (41, 14, 12)), ((41, 14, 12), (41, 14, 12)), ((41, 14, 12), (41, 15, 13)), ((41, 15, 13), (41, 15, 13)), ((41, 15, 13), (41, 15, 18)), ((42, 16, 18), (42, 16, 18)), ((42, 16, 18), (45, 16, 18)), ((45, 16, 18), (45, 16, 26)), ((45, 16, 26), (46, 17, 26)), ((46, 17, 26), (46, 17, 26)), ((46, 17, 26), (46, 23, 26)), ((46, 23, 26), (46, 24, 27)), ((46, 24, 27), (46, 24, 29)), ((47, 24, 29), (48, 25, 29)), ((48, 25, 29), (48, 26, 30)), ((48, 26, 30), (48, 32, 30)), ((48, 32, 30), (48, 40, 30)), ((48, 40, 30), (49, 40, 31))]
>>> it2 = iter(an2)
>>> cl2_1, cl2_2 = classifica_anomalies(it2)
>>> cl2_1 is iter(cl2_1)
True
>>> list(cl2_1) # doctesttag: +TAG=2_trajectories-2_classifica_anomalies-amb
[((5, 5, -6), (5, 5, -6)), ((6, 6, -3), (6, 6, -3)), ((6, 6, -3), (6, 6, -3)), ((6, 6, 5), (6, 6, 5)), ((7, 6, 5), (7, 6, 5)), ((7, 6, 5), (7, 6, 5)), ((7, 8, 10), (7, 8, 10)), ((11, 8, 10), (11, 8, 10)), ((11, 8, 10), (11, 8, 10)), ((40, 13, 12), (40, 13, 12)), ((40, 13, 12), (40, 13, 12)), ((41, 14, 12), (41, 14, 12)), ((41, 15, 13), (41, 15, 13)), ((42, 16, 18), (42, 16, 18)), ((46, 17, 26), (46, 17, 26))]
>>> cl2_2 is iter(cl2_2)
True
>>> list(cl2_2) # doctesttag: +TAG=2_trajectories-2_classifica_anomalies-amb
[((5, 5, -6), (5, 5, -3)), ((5, 5, -3), (6, 6, -3)), ((6, 6, -3), (6, 6, 5)), ((7, 6, 5), (7, 8, 5)), ((7, 8, 5), (7, 8, 10)), ((7, 8, 10), (11, 8, 10)), ((11, 8, 10), (12, 9, 10)), ((12, 9, 10), (12, 10, 11)), ((12, 10, 11), (12, 11, 12)), ((12, 11, 12), (19, 11, 12)), ((19, 11, 12), (26, 11, 12)), ((26, 11, 12), (27, 12, 12)), ((27, 12, 12), (35, 12, 12)), ((35, 12, 12), (36, 13, 12)), ((36, 13, 12), (40, 13, 12)), ((40, 13, 12), (41, 14, 12)), ((41, 14, 12), (41, 15, 13)), ((41, 15, 13), (41, 15, 18)), ((42, 16, 18), (45, 16, 18)), ((45, 16, 18), (45, 16, 26)), ((45, 16, 26), (46, 17, 26)), ((46, 17, 26), (46, 23, 26)), ((46, 23, 26), (46, 24, 27)), ((46, 24, 27), (46, 24, 29)), ((47, 24, 29), (48, 25, 29)), ((48, 25, 29), (48, 26, 30)), ((48, 26, 30), (48, 32, 30)), ((48, 32, 30), (48, 40, 30)), ((48, 40, 30), (49, 40, 31))]
>>> an2 = []
>>> it2 = iter(an2)
>>> cl2_1, cl2_2 = classifica_anomalies(it2)
>>> cl2_1 is iter(cl2_1)
True
>>> list(cl2_1) # doctesttag: +TAG=2_trajectories-2_classifica_anomalies-sense
[]
>>> cl2_2 is iter(cl2_2)
True
>>> list(cl2_2) # doctesttag: +TAG=2_trajectories-2_classifica_anomalies-sense
[]