[varLib.interpolatable] Micro-optimize by reusing a list
This commit is contained in:
parent
807864872e
commit
b3a45f9f79
@ -241,22 +241,24 @@ def test(glyphsets, glyphs=None, names=None, ignore_missing=False):
|
|||||||
mask = (1 << n) - 1
|
mask = (1 << n) - 1
|
||||||
isomorphisms = []
|
isomorphisms = []
|
||||||
contourIsomorphisms.append(isomorphisms)
|
contourIsomorphisms.append(isomorphisms)
|
||||||
|
complexPoints = [complex(*pt) for pt, bl in points.value]
|
||||||
for i in range(n):
|
for i in range(n):
|
||||||
b = ((bits << i) & mask) | ((bits >> (n - i)))
|
b = ((bits << i) & mask) | ((bits >> (n - i)))
|
||||||
if b == bits:
|
if b == bits:
|
||||||
isomorphisms.append(
|
isomorphisms.append(
|
||||||
_rot_list([complex(*pt) for pt, bl in points.value], i)
|
_rot_list(complexPoints, i)
|
||||||
)
|
)
|
||||||
# Add mirrored rotations
|
# Add mirrored rotations
|
||||||
mirrored = list(reversed(points.value))
|
mirrored = list(reversed(points.value))
|
||||||
reversed_bits = 0
|
reversed_bits = 0
|
||||||
for pt, b in mirrored:
|
for pt, b in mirrored:
|
||||||
reversed_bits = (reversed_bits << 1) | b
|
reversed_bits = (reversed_bits << 1) | b
|
||||||
|
complexPoints = list(reversed(complexPoints))
|
||||||
for i in range(n):
|
for i in range(n):
|
||||||
b = ((reversed_bits << i) & mask) | ((reversed_bits >> (n - i)))
|
b = ((reversed_bits << i) & mask) | ((reversed_bits >> (n - i)))
|
||||||
if b == bits:
|
if b == bits:
|
||||||
isomorphisms.append(
|
isomorphisms.append(
|
||||||
_rot_list([complex(*pt) for pt, bl in mirrored], i)
|
_rot_list(complexPoints, i)
|
||||||
)
|
)
|
||||||
|
|
||||||
# m0idx should be the index of the first non-None item in allNodeTypes,
|
# m0idx should be the index of the first non-None item in allNodeTypes,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user