Skip to content

Commit df559ec

Browse files
committed
Add a matmul overload
1 parent 5701db7 commit df559ec

3 files changed

Lines changed: 7 additions & 0 deletions

File tree

diffdrr/_modidx.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,7 @@
8787
'diffdrr.pose.RigidTransform.__getitem__': ('api/pose.html#rigidtransform.__getitem__', 'diffdrr/pose.py'),
8888
'diffdrr.pose.RigidTransform.__init__': ('api/pose.html#rigidtransform.__init__', 'diffdrr/pose.py'),
8989
'diffdrr.pose.RigidTransform.__len__': ('api/pose.html#rigidtransform.__len__', 'diffdrr/pose.py'),
90+
'diffdrr.pose.RigidTransform.__matmul__': ('api/pose.html#rigidtransform.__matmul__', 'diffdrr/pose.py'),
9091
'diffdrr.pose.RigidTransform.__new__': ('api/pose.html#rigidtransform.__new__', 'diffdrr/pose.py'),
9192
'diffdrr.pose.RigidTransform.compose': ('api/pose.html#rigidtransform.compose', 'diffdrr/pose.py'),
9293
'diffdrr.pose.RigidTransform.convert': ('api/pose.html#rigidtransform.convert', 'diffdrr/pose.py'),

diffdrr/pose.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,9 @@ def __len__(self):
3939
def __getitem__(self, idx):
4040
return type(self)(self.matrix[idx])
4141

42+
def __matmul__(self, T):
43+
return T.compose(self)
44+
4245
def forward(self, x):
4346
"""Apply (a batch) of rigid transforms to a pointcloud."""
4447
x_pad = torch.nn.functional.pad(x, (0, 1), value=1.0)

notebooks/api/06_pose.ipynb

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,9 @@
123123
" def __getitem__(self, idx):\n",
124124
" return type(self)(self.matrix[idx])\n",
125125
"\n",
126+
" def __matmul__(self, T):\n",
127+
" return T.compose(self)\n",
128+
"\n",
126129
" def forward(self, x):\n",
127130
" \"\"\"Apply (a batch) of rigid transforms to a pointcloud.\"\"\"\n",
128131
" x_pad = torch.nn.functional.pad(x, (0, 1), value=1.0)\n",

0 commit comments

Comments
 (0)