iOS OpenGL или CoreGraphics сглаживают рисование прямоугольника - PullRequest
0 голосов
/ 10 июня 2011

Я пытаюсь нарисовать заполненный прямоугольник в drawRect и повернуть его на 5 градусов. Проблема в том, что когда я поворачиваю этот прямоугольник, края выглядят очень неровными. У меня такое ощущение, что для этого нужно какое-то сглаживание (или что-то подобное), но я не могу найти хороших источников дополнительной информации.

У кого-нибудь есть хороший совет?

1 Ответ

1 голос
/ 30 декабря 2011

Невозможно получить красивую естественную кривую на компьютере, потому что если вы присмотритесь, вы всегда увидите, что это действительно не кривая, а зубчатая линия квадратов.

Больше отвечая на ваш вопрос, если вы хотите, чтобы ваша строка была более мягкой, вы можете размыть ее с помощью фильтра CIFilter. Помните, что когда вы поворачиваете что-либо на что-либо, кроме 90, 180, 270 или 360 градусов, вы теряете качество. Ваш прямоугольник не нуждается в сглаживании, пока он не повернут, и я уверен, что Apple написала прекрасный сложный способ смешать / сгладить ваш контекст.

Вероятно, самый простой способ сделать это - нарисовать отдельные линии в вашем прямоугольнике под уклоном вместо поворота прямоугольника после того, как вы нарисовали его.

...