Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека разработчика Mac

Разработчик

Кварцевая ссылка платформы ссылка класса QCView

Опции
Развертывание Target:

На этой странице
Язык:

QCView

QCView класс является пользовательским NSView класс, загружающийся, играет и управляет Кварцевыми составами Композитора. Это - автономное представление, управляющееся внутренним таймером, работающим на основном потоке.

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

Когда Вы архивируете a QCView объект, это сохраняет состав, это загружается в то время, когда представление архивируется.

Если Вы хотите выполнить пользовательские операции, в то время как состав представляет, такие как установка входных параметров или рисование содержания OpenGL, необходимо разделить на подклассы QCView и реализация renderAtTime:arguments: метод.

Наследование


Оператор импорта


Swift

import Quartz

Objective C

@import Quartz;

Доступность


Доступный в OS X v10.4 и позже.
  • Переопределения для выполнения пользовательских операций до или после рендеринга кадра состава.

    Объявление

    Swift

    func renderAtTime(_ time: NSTimeInterval, arguments arguments: [NSObject : AnyObject]!) -> Bool

    Objective C

    - (BOOL)renderAtTime:(NSTimeInterval)time arguments:(NSDictionary *)arguments

    Параметры

    time

    Время рендеринга, в секундах, кадра состава.

    arguments

    Дополнительный словарь, который может содержать QCRendererEventKey или QCRendererMouseLocationKey и присваиваемые значения. (См. Ссылку класса QCRenderer или больше информации.)

    Возвращаемое значение

    NOfalse если Ваш пользовательский рендеринг перестал работать, иначе, YEStrue.

    Обсуждение

    Не вызывайте этот метод непосредственно. Вы переопределяете этот метод только для подклассов QCView класс и только если Вы хотите выполнить пользовательские операции или OpenGL, представляющий прежде и/или после Кварцевого Композитора, представляет кадр состава.

    Наиболее распространенные причины переопределить этот метод к:

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

    • лежал в основе или наложите пользовательский рендеринг OpenGL.

    Для синхронизации коммуникации между составом и другой частью приложения реализация выглядит подобной следующему:

    • - (BOOL) renderAtTime:(NSTimeInterval)time
    • arguments:(NSDictionary*)arguments
    • {
    • // Your code to computer the value of myParameterValue
    • [self setValue:myParameterValue forInputKey:@”myInput];
    • BOOL success = [super renderAtTime:time arguments:arguments];
    • id result = [self valueForOutputKey:@”myOutput];
    • //Your code to perform some operation on the result
    • return success;
    • }

    Выполнять получение OpenGL в a QCView возразите, следуйте этим инструкциям:

    • Используйте контекст OpenGL QCView объект сделать получение. Можно получить контекст OpenGL путем вызова [self openGLContext]. Обратите внимание на то, что этот контекст будет не обязательно установлен как текущий контекст OpenGL.

    • Используйте макросы CGL вместо того, чтобы управлять текущим контекстом OpenGL сами.

      OpenGL выполняет глобальный контекст и поиск средства рендеринга для каждой команды, которую это выполняет, чтобы гарантировать, что все команды OpenGL даются к корректному контексту рендеринга и средству рендеринга. Существует значительный служебный связанный с этими поисками, которые могут в известной мере влиять на производительность. Макросы CGL позволили Вам обеспечить локальную переменную контекста и кэшировать текущее средство рендеринга в той переменной. Они просты использовать, проводя только несколько строк кода для установки.

    • Сохраните и восстановите все изменения состояния кроме тех, которые являются частью GL_CURRENT_BIT (Цвет RGBA, индекс цвета, вектор нормали, координаты текстуры, и т.д).

    • Проверьте на ошибки OpenGL с glGetError.

    Вот реализация в качестве примера этого метода с помощью OpenGL для рисования наложения:

    • #import <OpenGL/CGLMacro.h> // Set up using macros
    • - (BOOL) renderAtTime:(NSTimeInterval)time
    • arguments:(NSDictionary*)arguments
    • {
    • BOOL success = [super renderAtTime:time arguments:arguments];
    • // Use the OpenGL context of the view for drawing.
    • CGLContextObj cgl_ctx = [[self openGLContext] CGLContextObj];
    • // Save and set OpenGL states appropriately.
    • glGetIntegerv(GL_MATRIX_MODE, &saveMode);
    • glMatrixMode(GL_MODELVIEW);
    • glPushMatrix();
    • glRotatef(45.0, 0.0, 0.0, 1.0);
    • // The code that performs OpenGL drawing goes here.
    • //After drawing, restore original OpenGL states.
    • glPopMatrix();
    • glMatrixMode(saveMode);
    • // Check for errors.
    • glGetError();
    • return success;
    • }

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

  • Загружает файл состава, расположенный в указанном пути.

    Объявление

    Swift

    func loadCompositionFromFile(_ path: String!) -> Bool

    Objective C

    - (BOOL)loadCompositionFromFile:(NSString *)path

    Параметры

    path

    Строка, указывающая расположение Кварцевого файла состава Композитора.

    Возвращаемое значение

    Если неуспешный, возвраты NOfalse; любой состав это уже загружается в представлении, остается загруженным.

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.4 и позже.

  • Загрузки a QCComposition объект в представление.

    Объявление

    Swift

    func loadComposition(_ composition: QCComposition!) -> Bool

    Objective C

    - (BOOL)loadComposition:(QCComposition *)composition

    Параметры

    composition

    QCComposition возразите для загрузки.

    Возвращаемое значение

    YEStrue если успешный; иначе NOfalse. Если неуспешный, любой состав, это уже загружается в представлении, остается загруженным.

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

  • Возвращает состав, загруженный в представлении.

    Объявление

    Swift

    func loadedComposition() -> QCComposition!

    Objective C

    - (QCComposition *)loadedComposition

    Возвращаемое значение

    Состав загрузился в представлении; иначе nil.

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

  • Разгружает состав от представления.

    Объявление

    Swift

    func unloadComposition()

    Objective C

    - (void)unloadComposition

    Обсуждение

    Если необходимо, это вызовы метода stopRendering до разгрузки состава.

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

  • Очищает представление с помощью текущего цвета стирания.

    Объявление

    Swift

    func erase()

    Objective C

    - (void)erase

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.4 и позже.

    См. также

    – eraseColor

  • Получает текущий цвет, используемый для стирания представления.

    Объявление

    Swift

    func eraseColor() -> NSColor!

    Objective C

    - (NSColor *)eraseColor

    Возвращаемое значение

    Цветовой объект ранее набор с помощью setEraseColor: метод.

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.4 и позже.

    См. также

    – стирание

  • Выбирает цвет, используемый для стирания представления.

    Объявление

    Swift

    func setEraseColor(_ color: NSColor!)

    Objective C

    - (void)setEraseColor:(NSColor *)color

    Параметры

    color

    Цветовой объект.

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.4 и позже.

  • Получает маску, используемую для фильтрации, какие типы событий передаются от представления до состава во время рендеринга.

    Объявление

    Swift

    func eventForwardingMask() -> Int

    Objective C

    - (NSUInteger)eventForwardingMask

    Возвращаемое значение

    Маска фильтрации событий.

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.4 и позже.

    См. также

    – setEventForwardingMask:

  • Устанавливает маску, используемую для фильтрации, какие типы событий передаются от представления до состава во время рендеринга.

    Объявление

    Swift

    func setEventForwardingMask(_ mask: Int)

    Objective C

    - (void)setEventForwardingMask:(NSUInteger)mask

    Параметры

    mask

    Маска фильтрации событий. Маска может быть комбинацией любой из констант маски, перечисленных в Таблице 1 или константе NSAnyEventMask.

    Таблица 1Events, которая может быть передана составу

    Событие

    Описание

    NSLeftMouseDownMask

    Пользователь нажал левую кнопку.

    NSLeftMouseDraggedMask

    Пользователь переместил мышь со сниженной кнопкой.

    NSLeftMouseUpMask

    Пользователь отпустил левую кнопку.

    NSRightMouseDownMask

    Пользователь нажал правильную кнопку.

    NSRightMouseDraggedMask

    Пользователь переместил мышь с правильной кнопкой вниз.

    NSRightMouseUpMask

    Пользователь отпустил правую кнопку.

    NSOtherMouseDownMask

    Пользователь нажал среднюю кнопку или некоторую кнопку кроме левой или правой кнопки.

    NSOtherMouseDraggedMask

    Пользователь переместил мышь со средней кнопкой вниз или некоторой кнопкой кроме левой или правой кнопки.

    NSOtherMouseUpMask

    Пользователь отпустил среднюю кнопку или некоторую кнопку кроме левой или правой кнопки.

    NSMouseMovedMask

    Пользователь переместил мышь без удержания кнопки мыши.

    NSScrollWheelMask

    Пользователь переместил колесико прокрутки мыши.

    NSKeyDownMask

    Пользователь генерировал символ или символы путем нажатия клавиши.

    NSKeyUpMask

    Пользователь отпустил клавишу.

    NSFlagsChangedMask

    Пользователь нажал или выпустил модифицирующую клавишу или переключил клавишу Caps Lock.

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.4 и позже.

    См. также

    – eventForwardingMask

  • Возвращает максимальную частоту кадров для рендеринга.

    Объявление

    Swift

    func maxRenderingFrameRate() -> Float

    Objective C

    - (float)maxRenderingFrameRate

    Возвращаемое значение

    Максимальная частота кадров для рендеринга. Значение 0.0 указывает, что нет никакого предела.

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.4 и позже.

  • Устанавливает максимальную частоту кадров рендеринга.

    Объявление

    Swift

    func setMaxRenderingFrameRate(_ maxFPS: Float)

    Objective C

    - (void)setMaxRenderingFrameRate:(float)maxFPS

    Параметры

    maxFPS

    Частота кадров для установки. Передача 0.0 указать, что нет никакого предела.

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.4 и позже.

    См. также

    – maxRenderingFrameRate

  • Начинает представлять состав, который находится в представлении.

    Объявление

    Swift

    func startRendering() -> Bool

    Objective C

    - (BOOL)startRendering

    Возвращаемое значение

    Возвраты NOfalse если составу не удается начать представлять; YEStrue иначе.

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.4 и позже.

    См. также

    – stopRendering

  • Проверки, представляет ли состав в представлении.

    Объявление

    Swift

    func isRendering() -> Bool

    Objective C

    - (BOOL)isRendering

    Возвращаемое значение

    Возвраты YEStrue если состав представляет в представлении; NOfalse иначе.

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.4 и позже.

  • Проверки, установлено ли представление начать представлять автоматически.

    Объявление

    Swift

    func autostartsRendering() -> Bool

    Objective C

    - (BOOL)autostartsRendering

    Возвращаемое значение

    Возвраты YEStrue когда представление помещается на экран, если представление установлено начать представлять автоматически.

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.4 и позже.

    См. также

    – setAutostartsRendering:

  • Наборы, начинает ли состав, который находится в представлении, представлять автоматически, когда представление помещается на экран.

    Объявление

    Swift

    func setAutostartsRendering(_ flag: Bool)

    Objective C

    - (void)setAutostartsRendering:(BOOL)flag

    Параметры

    flag

    Передача YEStrue включить режим автоматического запуска; NOfalse иначе.

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.4 и позже.

    См. также

    – autostartsRendering

  • Остановки, представляющие состав, который находится в представлении.

    Объявление

    Swift

    func stopRendering()

    Objective C

    - (void)stopRendering

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.4 и позже.

    См. также

    – startRendering

  • Рендеринг пауз в представлении.

    Объявление

    Swift

    func pauseRendering()

    Objective C

    - (void)pauseRendering

    Обсуждение

    Можно вложить вызовы к этому методу.

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

  • Возвраты, приостанавливается ли рендеринг в представлении.

    Объявление

    Swift

    func isPausedRendering() -> Bool

    Objective C

    - (BOOL)isPausedRendering

    Возвращаемое значение

    YEStrue если приостанавливается рендеринг; иначе NOfalse.

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

  • Резюме, представляющие приостановленный состав.

    Объявление

    Swift

    func resumeRendering()

    Objective C

    - (void)resumeRendering

    Обсуждение

    Можно вложить вызовы к этому методу.

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

  • Игры или паузы состав в представлении.

    Объявление

    Swift

    @IBAction func play(_ sender: AnyObject!)

    Objective C

    - (IBAction)play:(id)sender

    Параметры

    sender

    Объект (такой как кнопка или пункт меню) отправка сообщения для игры состава. Необходимо соединить объект в интерфейсе к действию.

    Возвращаемое значение

    Сообщение отправило к цели.

    Обсуждение

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

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

    См. также

    – остановка:

  • Начинает представлять состав в представлении.

    Объявление

    Swift

    @IBAction func start(_ sender: AnyObject!)

    Objective C

    - (IBAction)start:(id)sender

    Параметры

    sender

    Объект (такой как кнопка или пункт меню) отправка сообщения, чтобы начать представлять. Необходимо соединить объект в интерфейсе к действию.

    Возвращаемое значение

    Сообщение отправило к цели.

    Обсуждение

    Когда пользователь нажимает кнопку или дает команду от некоторого другого элемента пользовательского интерфейса, такого как меню, метод вызывается. Это эквивалентно startRendering метод.

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.4 и позже.

    См. также

    – остановка:

  • Остановки, представляющие состав в представлении.

    Объявление

    Swift

    @IBAction func stop(_ sender: AnyObject!)

    Objective C

    - (IBAction)stop:(id)sender

    Параметры

    sender

    Объект (такой как кнопка или пункт меню) отправка сообщения, чтобы прекратить представлять. Необходимо соединить объект в интерфейсе к действию.

    Возвращаемое значение

    Сообщение отправило к цели.

    Обсуждение

    Когда пользователь нажимает кнопку или дает команду от некоторого другого элемента пользовательского интерфейса, такого как меню, метод вызывается. Это эквивалентно stopRendering метод.

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.4 и позже.

    См. также

    – запустите:

  • Возвраты NSImage объект текущего изображения в представлении.

    Объявление

    Swift

    func snapshotImage() -> NSImage!

    Objective C

    - (NSImage *)snapshotImage

    Возвращаемое значение

    Изображение снимка.

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

  • Возвращает текущее изображение в представлении как объект изображения предоставленного типа изображения.

    Объявление

    Swift

    func createSnapshotImageOfType(_ type: String!) -> AnyObject!

    Objective C

    - (id)createSnapshotImageOfType:(NSString *)type

    Параметры

    type

    Строка, указывающая любой из следующих типов изображения: NSBitmapImageRep, NSImage, CIImage, CGImage, CVOpenGLBuffer, CVPixelBuffer.

    Возвращаемое значение

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

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

    См. также

    – snapshotImage

  • Возвращает контекст OpenGL, используемый представлением.

    Объявление

    Swift

    func openGLContext() -> NSOpenGLContext!

    Objective C

    - (NSOpenGLContext *)openGLContext

    Возвращаемое значение

    NSOpenGLContext объект.

    Обсуждение

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

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

    См. также

    renderAtTime:arguments:

  • Возвращает формат пикселя OpenGL, используемый представлением.

    Объявление

    Swift

    func openGLPixelFormat() -> NSOpenGLPixelFormat!

    Objective C

    - (NSOpenGLPixelFormat *)openGLPixelFormat

    Возвращаемое значение

    NSOpenGLPixelFormat объект.

    Обсуждение

    Этот формат пикселя как объект только для чтения. Не пытайтесь изменить любую из его настроек.

    Оператор импорта

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.