Skip to content

Commit 4bf210d

Browse files
committed
Add *s* relation.
1 parent 2467907 commit 4bf210d

1 file changed

Lines changed: 6 additions & 2 deletions

File tree

qsr_lib/src/qsrlib_qsrs/qsr_tpcc.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ class QSR_TPCC(QSR_Triadic_1t_Abstractclass):
1313
'clb', 'csb', 'crb', 'cbr', 'csr', 'cfr', 'crf', 'csf',
1414
'sam')
1515
_dtype = "points"
16-
__partition_names = ['bl','lb','lf','fl','fr','rf','rb','br']
16+
__partition_names = ['lb','bl','fl','lf','rf','fr','br','rb']
1717
__partition_size = 2 * math.pi / len(__partition_names)
1818

1919
def __init__(self):
@@ -29,8 +29,12 @@ def _compute_qsr(self, origin, relatum, objct, qsr_params, **kwargs):
2929
relation = "d" if object_distance > base_distance else "c" # is it far or close: first letter
3030

3131
angle = self._relative_angle(origin, relatum, objct)
32-
partition = int(angle / self.__partition_size) #TODO: the "*s*" relations
32+
partition = int(angle / self.__partition_size)
3333
relation += self.__partition_names[partition]
34+
35+
sin_angle = math.fabs(math.sin(angle))
36+
if sin_angle < 0.00001 or sin_angle > 0.99999:
37+
relation = relation[0]+'s'+relation[2]
3438

3539
return relation
3640

0 commit comments

Comments
 (0)