imt-ring 1.6.8__py3-none-any.whl → 1.6.9__py3-none-any.whl
Sign up to get free protection for your applications and to get access to all the features.
@@ -1,6 +1,6 @@
|
|
1
1
|
ring/__init__.py,sha256=k7tL-XgggUwWxHCXyv60rQn-OcXHPg82QcIUkKLEd-c,5057
|
2
2
|
ring/algebra.py,sha256=F0GwbP8LQP5qGVkoMUYJmkp9Hn2nKAVIkCVYDEjNjGU,3128
|
3
|
-
ring/base.py,sha256=
|
3
|
+
ring/base.py,sha256=MkkziQx01sdMOpB8MFUDFgFlZUrXCFjpb8hS9yKHUyM,33751
|
4
4
|
ring/maths.py,sha256=qPHH6TpHCK3TgExI98gNEySoSRKOwteN9McUlyUFipI,12207
|
5
5
|
ring/spatial.py,sha256=nmZ-UhRanhyM34bez8uCS4wMwaKqLkuEbgKGP5XNH60,2351
|
6
6
|
ring/algorithms/__init__.py,sha256=IiK9EN5Xgs3dB075-A-H-Yad0Z7vzvKIJF2g6X_-C_8,1224
|
@@ -83,7 +83,7 @@ ring/utils/randomize_sys.py,sha256=G_vBIo0OwQkXL2u0djwbaoaeb02C4LQCTNNloOYIU2M,3
|
|
83
83
|
ring/utils/utils.py,sha256=oGC7kh19s5zvmnUvWy8B3fBl9loVU58ppz91osk2m3w,6550
|
84
84
|
ring/utils/register_gym_envs/__init__.py,sha256=PtPIRBQJ16339xZ9G9VpvqrvcGbQ_Pk_SUz4tQPa9nQ,94
|
85
85
|
ring/utils/register_gym_envs/saddle.py,sha256=tA5CyW_akSXyDm0xJ83CtOrUMVElH0f9vZtEDDJQalI,4422
|
86
|
-
imt_ring-1.6.
|
87
|
-
imt_ring-1.6.
|
88
|
-
imt_ring-1.6.
|
89
|
-
imt_ring-1.6.
|
86
|
+
imt_ring-1.6.9.dist-info/METADATA,sha256=kFg-Ht8PsdnYA5lvEQ-KgMxlQSqiX_PtP8M8Q0vjVag,3820
|
87
|
+
imt_ring-1.6.9.dist-info/WHEEL,sha256=Mdi9PDNwEZptOjTlUcAth7XJDFtKrHYaQMPulZeBCiQ,91
|
88
|
+
imt_ring-1.6.9.dist-info/top_level.txt,sha256=EiT790-lAyi8iwTzJArH3f2k77rwhDn00q-4PlmvDQo,5
|
89
|
+
imt_ring-1.6.9.dist-info/RECORD,,
|
ring/base.py
CHANGED
@@ -590,12 +590,14 @@ class System(_Base):
|
|
590
590
|
|
591
591
|
return sys
|
592
592
|
|
593
|
-
def findall_imus(self) -> list[str]:
|
594
|
-
|
593
|
+
def findall_imus(self, names: bool = True) -> list[str] | list[int]:
|
594
|
+
bodies = [name for name in self.link_names if name[:3] == "imu"]
|
595
|
+
return bodies if names else [self.name_to_idx(n) for n in bodies]
|
595
596
|
|
596
|
-
def findall_segments(self) -> list[str]:
|
597
|
-
imus = self.findall_imus()
|
598
|
-
|
597
|
+
def findall_segments(self, names: bool = True) -> list[str] | list[int]:
|
598
|
+
imus = self.findall_imus(names=True)
|
599
|
+
bodies = [name for name in self.link_names if name not in imus]
|
600
|
+
return bodies if names else [self.name_to_idx(n) for n in bodies]
|
599
601
|
|
600
602
|
def _bodies_indices_to_bodies_name(self, bodies: list[int]) -> list[str]:
|
601
603
|
return [self.idx_to_name(i) for i in bodies]
|
@@ -615,6 +617,11 @@ class System(_Base):
|
|
615
617
|
bodies = [i for i, _typ in enumerate(self.link_types) if _typ == typ]
|
616
618
|
return self._bodies_indices_to_bodies_name(bodies) if names else bodies
|
617
619
|
|
620
|
+
def children(self, name: str, names: bool = False) -> list[int] | list[str]:
|
621
|
+
p = self.name_to_idx(name)
|
622
|
+
bodies = [i for i in range(self.num_links()) if self.link_parents[i] == p]
|
623
|
+
return bodies if (not names) else [self.idx_to_name(i) for i in bodies]
|
624
|
+
|
618
625
|
def scan(self, f: Callable, in_types: str, *args, reverse: bool = False):
|
619
626
|
"""Scan `f` along each link in system whilst carrying along state.
|
620
627
|
|
File without changes
|