Создание NSView от CGPath
Вопрос
У меня есть CGPath, и я хочу нарисовать его один раз в NsView. Кажется относительно простым, но я не нашел путь в Appkit (без iPhone).
Решение
Внутри -drawRect:
, Ты используешь Cgcontextadddpath. Чтобы добавить его в контекст и использовать CGContext(Draw|Fill|Stroke)Path
нарисовать. Т.е. вы подкласс nsview, и переопределить
- (void)drawRect:(NSRect)needsDisplayInRect
{
CGContextRef cgcontext = [[NSGraphicsContext currentContext] graphicsPort];
CGContextAddPath(cgcontext,path); // assumes you have CGPathRef*path;
CGContextStrokePath(cgcontext);
}
потом -drawRect:
будет вызван всякий раз, когда это необходимо. Вы можете заставить представление обновления, позвонив [view displayIfNeeded]
.
Не связан с StackOverflow