Начало работы с рисунком какао - PullRequest
2 голосов
/ 16 декабря 2009

Я хочу сделать несколько пользовательских чертежей в подклассе NSView, с чего мне начать?

Ответы [ 3 ]

4 голосов
/ 16 декабря 2009

Apple's Введение в руководство по рисованию какао - лучшее место для начала. Там много примеров.

4 голосов
/ 16 декабря 2009

Как отметил Джаррет, Apple Docs - отличное место для начала. Тем не менее, некоторые вещи, которые следует иметь в виду:

Системой координат по умолчанию, используемой с видами, является Декартовая система координат , где начало координат находится в нижнем левом углу вида. Чаще всего вы хотите, чтобы источник находился в верхнем левом углу представления, поэтому здесь вы переопределяете метод isFlipped: (реализация по умолчанию, которая возвращает NO), возвращая YES:

- (BOOL)isFlipped
{
    return YES;
}

Это «переворачивает» систему координат так, что начало координат переходит в верхний левый угол после вертикального переворота. Это может упростить некоторые вычисления положения чертежа.

Основными вещами, с которыми вы, вероятно, захотите начать, являются такие вещи, как:

  • Заполнение основных прямоугольников (используя метод класса NSBezierPath fillRect: вместе с классом NSColor для настройки и использования цветов).
  • Работа с изображениями (с использованием класса NSImage и методов рисования, которые он предоставляет).
  • Пути, где вы можете рисовать линии и другие фигуры (с классом NSBezierPath).

Вы также захотите взглянуть на Графические контексты в какой-то момент и работать с настройками атрибутов (таких как текущий цвет, тень и т. Д.) Для них, используемых для последующих операций рисования.

Вероятно, это не имеет непосредственного значения, но лишь примечание, что в какой-то момент вам следует взглянуть на Оптимизирующий чертеж вида раздела View Programming Guide для Cocoa . Операции рисования должны быть быстрыми, и меня иногда удивляет, как мало внимания люди уделяют аспектам производительности рисования, когда есть некоторые основные вещи, которые вы можете сделать, чтобы сделать ваш рисунок - и, следовательно, приложение - более эффективным, например, только перерисовывать части мнение, которое на самом деле изменилось, а не все это.

0 голосов
/ 16 декабря 2009

Вы должны начать с начала .

...