bindings_data.py
Go to the documentation of this file.
1 import unittest
2 import pinocchio as pin
3 
4 from test_case import PinocchioTestCase as TestCase
5 
6 
7 class TestData(TestCase):
8  def setUp(self):
9  self.model = pin.buildSampleModelHumanoidRandom()
10  self.data = self.model.createData()
11 
12  def test_copy(self):
13  data2 = self.data.copy()
14  q = pin.neutral(self.model)
15  pin.forwardKinematics(self.model, data2, q)
16  jointId = self.model.njoints - 1
17  self.assertNotEqual(self.data.oMi[jointId], data2.oMi[jointId])
18 
19  data3 = data2.copy()
20  self.assertEqual(data2.oMi[jointId], data3.oMi[jointId])
21 
23  model = self.model
24  data = self.data
25 
26  q = pin.neutral(model)
27  pin.centerOfMass(model, data, q)
28 
29  com_list = data.com.tolist()
30  com = data.com[0]
31  with self.assertRaises(Exception) as context:
32  com = data.com[len(data.com) + 10]
33  print("com: ", com)
34 
35  self.assertTrue("Index out of range" in str(context.exception))
36 
37  with self.assertRaises(Exception) as context:
38  com = data.com["1"]
39  print("com: ", com)
40 
41  self.assertTrue("Invalid index type" in str(context.exception))
42 
43  def test_pickle(self):
44  import pickle
45 
46  data = self.data
47  filename = "data.pickle"
48  with open(filename, "wb") as f:
49  pickle.dump(data, f)
50 
51  with open(filename, "rb") as f:
52  data_copy = pickle.load(f)
53 
54  self.assertTrue(data == data_copy)
55 
56 
57 if __name__ == "__main__":
58  unittest.main()
bindings_data.TestData.data
data
Definition: bindings_data.py:10
bindings_data.TestData.test_pickle
def test_pickle(self)
Definition: bindings_data.py:43
bindings_data.TestData.setUp
def setUp(self)
Definition: bindings_data.py:8
pinocchio::createData
ConstraintDataTpl< Scalar, Options, ConstraintCollectionTpl > createData(const ConstraintModelTpl< Scalar, Options, ConstraintCollectionTpl > &cmodel)
Definition: constraint-model-visitor.hpp:248
bindings_data.TestData.test_std_vector_field
def test_std_vector_field(self)
Definition: bindings_data.py:22
append-urdf-model-with-another-model.open
open
Definition: append-urdf-model-with-another-model.py:78
pinocchio::copy
void copy(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, const DataTpl< Scalar, Options, JointCollectionTpl > &origin, DataTpl< Scalar, Options, JointCollectionTpl > &dest, KinematicLevel kinematic_level)
Copy part of the data from origin to dest. Template parameter can be used to select at which differen...
Definition: copy.hpp:42
bindings_data.TestData.test_copy
def test_copy(self)
Definition: bindings_data.py:12
bindings_data.TestData
Definition: bindings_data.py:7
bindings_data.TestData.model
model
Definition: bindings_data.py:9


pinocchio
Author(s):
autogenerated on Sun Jun 16 2024 02:43:06