ravens/environment.py
def is_static(self):
        """Checks if env is static, used for checking if action finished.

        However, this won't work in PyBullet (at least v2.8.4) since soft
        bodies cause this code to hang. Therefore, look at the task's
        `def_IDs` list, which by design will have all IDs of soft bodies.
        Furthermore, for the bag tasks, the beads generally move around, so
        for those, just use a hard cutoff limit (outside this method).
        """
        if self.is_softbody_env():
            assert len(self.task.def_IDs) > 0, 'Did we forget to add to def_IDs?'
            v = [np.linalg.norm(p.getBaseVelocity(i)[0]) for i in self.objects
                    if i not in self.task.def_IDs]
        else:
            v = [np.linalg.norm(p.getBaseVelocity(i)[0]) for i in self.objects]
        return all(np.array(v) < 1e-2)
Checks if env is static, used for checking if action finished.

        However, this won't work in PyBullet (at least v2.8.4) since soft
        bodies cause this code to hang. Therefore, look at the task's
        `def_IDs` list, which by design will have all IDs of soft bodies.
        Furthermore, for the bag tasks, the beads generally move around, so
        for those, just use a hard cutoff limit (outside this method).
        
Checks if env is static, used for checking if action finished.
However, this won't work in PyBullet (at least v2.8.4) since soft
bodies cause this code to hang. Therefore, look at the task's
`def_IDs` list, which by design will have all IDs of soft bodies.
Furthermore, for the bag tasks, the beads generally move around, so
for those, just use a hard cutoff limit (outside this method).
Checks if env is static used for checking if action finished . However this won ' t work in PyBullet ( at least v2 . 8 . 4 ) since soft bodies cause this code to hang . Therefore look at the task ' s ` def_IDs ` list which by design will have all IDs of soft bodies . Furthermore for the bag tasks the beads generally move around so for those just use a hard cutoff limit ( outside this method ) .
def is_static(self):
        if self.is_softbody_env():
            assert len(self.task.def_IDs) > 0, 'Did we forget to add to def_IDs?'
            v = [np.linalg.norm(p.getBaseVelocity(i)[0]) for i in self.objects
                    if i not in self.task.def_IDs]
        else:
            v = [np.linalg.norm(p.getBaseVelocity(i)[0]) for i in self.objects]
        return all(np.array(v) < 1e-2)
def is_static ( self ) : if self . is_softbody_env ( ) : assert len ( self . task . def_IDs ) > 0 , 'Did we forget to add to def_IDs?' v = [ np . linalg . norm ( p . getBaseVelocity ( i ) [ 0 ] ) for i in self . objects if i not in self . task . def_IDs ] else : v = [ np . linalg . norm ( p . getBaseVelocity ( i ) [ 0 ] ) for i in self . objects ] return all ( np . array ( v ) < 1e-2 )
Checks if env is static, used for checking if action finished.
Checks if env is static used for checking if action finished .
"""Checks if env is static, used for checking if action finished.

        However, this won't work in PyBullet (at least v2.8.4) since soft
        bodies cause this code to hang. Therefore, look at the task's
        `def_IDs` list, which by design will have all IDs of soft bodies.
        Furthermore, for the bag tasks, the beads generally move around, so
        for those, just use a hard cutoff limit (outside this method).
        """
self