Skip to content

Commit 144e84f

Browse files
committed
Add function for optimized None+transform
1 parent de62411 commit 144e84f

File tree

1 file changed

+11
-8
lines changed

1 file changed

+11
-8
lines changed

lib/matplotlib/markers.py

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -154,6 +154,14 @@
154154
_empty_path = Path(np.empty((0, 2)))
155155

156156

157+
def _fast_transform_combine(t1, t2):
158+
"""Combine two transformations where the second one can be None."""
159+
if t2 is None:
160+
return t1.frozen()
161+
else:
162+
return (t1 + t2).frozen()
163+
164+
157165
class MarkerStyle:
158166
"""
159167
A class representing marker types.
@@ -394,10 +402,7 @@ def get_transform(self):
394402
Return the transform to be applied to the `.Path` from
395403
`MarkerStyle.get_path()`.
396404
"""
397-
if self._user_transform is not None:
398-
return (self._transform + self._user_transform).frozen()
399-
else:
400-
return self._transform.frozen()
405+
return _fast_transform_combine(self._transform, self._user_transform)
401406

402407
def get_alt_path(self):
403408
"""
@@ -413,10 +418,8 @@ def get_alt_transform(self):
413418
Return the transform to be applied to the `.Path` from
414419
`MarkerStyle.get_alt_path()`.
415420
"""
416-
if self._user_transform is not None:
417-
return (self._alt_transform + self._user_transform).frozen()
418-
else:
419-
return self._alt_transform.frozen()
421+
return _fast_transform_combine(self._alt_transform,
422+
self._user_transform)
420423

421424
def get_snap_threshold(self):
422425
return self._snap_threshold

0 commit comments

Comments
 (0)