[interpolatable] In diff-contour-order, allow for 5% cost difference
Reduces false-positives, as in this one in NotoSansArabic: Glyph asteriskArt-ar was not compatible: Contour order differs: [0, 1, 2, 3, 4, 5] in NotoSansArabic-CondensedBold, [0, 3, 2, 1, 4, 5] in NotoSansArabic-CondensedLight
This commit is contained in:
parent
3a846a5389
commit
745631d16b
@ -281,7 +281,9 @@ def test(glyphsets, glyphs=None, names=None):
|
|||||||
continue
|
continue
|
||||||
costs = [[_vlen(_vdiff(v0, v1)) for v1 in m1] for v0 in m0]
|
costs = [[_vlen(_vdiff(v0, v1)) for v1 in m1] for v0 in m0]
|
||||||
matching, matching_cost = min_cost_perfect_bipartite_matching(costs)
|
matching, matching_cost = min_cost_perfect_bipartite_matching(costs)
|
||||||
if matching != list(range(len(m0))):
|
identity_matching = list(range(len(m0)))
|
||||||
|
identity_cost = sum(costs[i][i] for i in range(len(m0)))
|
||||||
|
if matching != identity_matching and matching_cost < identity_cost * .95:
|
||||||
add_problem(
|
add_problem(
|
||||||
glyph_name,
|
glyph_name,
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user