Corner Wrong result after transformed

I want to transform the shape with four rounded _corners, but we will get the wrong result after transformed.
These corners should also be rounded after transformed, but not keep the original rounded shape.
Could you help.

layer =  Glyphs.font.glyphs["space"].layers[0]
layer.applyTransform([1, 0, 0, 0.5 , 0, 0])

cornertest.glyphs (8.0 KB)

You transform everything and that applies to the corners, too. To prevent that, you only should transform the shapes.

understood. :grinning:

Is there a way to check if a corner has been transformed?

The corner object as a scale property. If it not (1, 1), it is scaled.

In the UI, you can see and edit the horizontal ↔︎ and vertical :arrow_up_down: scaling in the Info box (View → Show Info, ⇧⌘I):

Could this be included in the Smart Filter list? Something along the lines of “Has Transformed Corner Component” or maybe a more general “Is Transformed” so it can be applied to any type of component.

For that smart filters, this is perhaps a bit too specific. What would be your use case?

A script could filter all glyphs with a transformed corner component on any layer and add a tag to those glyphs (so that you can filter for them with a smart filter) or write the affected glyph names to the Macro console so that you can do something else with this list of glyphs.

Having a smart filter option for transformed components can be useful for

  1. those that use transformations on components as part of their workflow to easily access those glyphs and also
  2. for those that use filters as part of a checklist to see if some component has been accidentally transformed…similar to the filters that check for Master Compatability and Metric Keys out of Sync.

I think that is indeed too specific as smart filters. And also might be a performance problem as it would take a while to go through each component and corner and check the scaling.

Ah okay. In that case, I’ll figure out a script solution based on Florian’s suggestion.