UIBezierPath arêtes rondes?

Je dessine quelques lignes et je remarque que lorsque les arêtes atteignent un certain angle, elles génèrent une arête vive comme celle-ci: bord pointu

Ce que je veux qu'il dessine: bord rond

Comment puis-je faire cela? J'ai regardé à travers les documentations, mais je n'ai pas l'air de find quelque chose que je cherche. Ou y a-t-il un moyen de désactiver cette génération automatique?

UIBezierPath a une propriété appelée lineJoinStyle . Réglez-le sur kCGLineJoinRound et il dessine comme vous le voulez.

 UIBezierPath *myPath = ... myPath.lineJoinStyle = kCGLineJoinRound; 

Utilisez CGContextSetLineJoin pour définir le paramètre de kCGLineJoinRound votre context de dessin sur kCGLineJoinRound , avant d' kCGLineJoinRound le path. Ceci est documenté dans le Guide de programmation Quartz 2D .

Si vous dessinez un UIBezierPath, vous pouvez également définir le lineJoinStyle du lineJoinStyle , ce qui peut être plus simple.

La propriété kCGLineJoinRound sur un UIBezierPath peut être appelée dans Swift par:

 myPath.lineJoinStyle = .round