QCPlugInInputImageSource
QCPlugInInputImageSource протокол избавляет от необходимости использовать явные типы изображения для входных портов изображения на Вашем пользовательском патче. Не только делает использование протокола, избегают ограничений определенного типа изображения, но это избегает несоответствий импеданса и обеспечивает лучшую производительность путем задержки пиксельного вычисления, пока это не необходимо. Когда необходимо получить доступ к пикселям в изображении, Вы просто преобразовываете изображение в представление (текстура или буфер) использование одного из методов, определенных QCPlugInInputImageSource протокол. Используйте представление текстуры, когда Вы захотите использовать входные изображения на GPU. Используйте буферное представление, когда Вы захотите использовать входные изображения на CPU.
Входные изображения являются непрозрачными исходными объектами, соответствующими этому протоколу. Для создания входного порта изображения как свойства Objective-C 2.0 объявите его следующим образом:
@property(dynamic) id<QCPlugInInputImageSource> inputImage;
Создать входной порт изображения динамично. используйте тип QCPortTypeImage:
[self addInputPortWithType:QCPortTypeImageforKey:@”inputImage”withAttributes:nil];
Наследование
Не применимый
Соответствует
Не применимый
Оператор импорта
Swift
import Quartz
Objective C
@import Quartz;
Доступность
Доступный в OS X v10.5 и позже.
-
lockTextureRepresentationWithColorSpace (_: forBounds:) - lockTextureRepresentationWithColorSpace:forBounds:ТребуемыйСоздает представление текстуры OpenGL от подобласти источника изображения с помощью предоставленного цветового пространства. (требуемый)
Объявление
Swift
func lockTextureRepresentationWithColorSpace(_colorSpace: CGColorSpace!, forBoundsbounds: NSRect) -> BoolObjective C
- (BOOL)lockTextureRepresentationWithColorSpace:(CGColorSpaceRef)colorSpaceforBounds:(NSRect)boundsПараметры
colorSpaceКварцевое цветовое пространство.
boundsГраницы подобласти, выраженной в пикселях. Они должны быть выровненные к целочисленным границам.
Возвращаемое значение
YEStrueуспешно;NOfalseесли не может быть создана текстура.Обсуждение
Ни содержание текстуры, ни ее состояния (например, режим обертки) не должны быть изменены; можно только нарисовать с ним. Текстура допустима только в сменном контексте.
Оператор импорта
Objective C
@import Quartz;Swift
import QuartzДоступность
Доступный в OS X v10.5 и позже.
См. также
-
Выпускает представление текстуры OpenGL источника изображения. (требуемый)
Объявление
Swift
func unlockTextureRepresentation()Objective C
- (void)unlockTextureRepresentationОператор импорта
Objective C
@import Quartz;Swift
import QuartzДоступность
Доступный в OS X v10.5 и позже.
-
lockBufferRepresentationWithPixelFormat (_: colorSpace:forBounds:) - lockBufferRepresentationWithPixelFormat:colorSpace:forBounds:ТребуемыйСоздает представление буфера памяти от подобласти источника изображения с помощью предоставленного формата пикселя и цветового пространства. (требуемый)
Объявление
Swift
func lockBufferRepresentationWithPixelFormat(_format: String!, colorSpacecolorSpace: CGColorSpace!, forBoundsbounds: NSRect) -> BoolObjective C
- (BOOL)lockBufferRepresentationWithPixelFormat:(NSString *)formatcolorSpace:(CGColorSpaceRef)colorSpaceforBounds:(NSRect)boundsПараметры
formatФормат пикселя, который совместим с цветовым пространством.
colorSpaceКварцевое цветовое пространство, которое совместимо с форматом пикселя.
boundsГраницы подобласти, выраженной как пиксели и выровненной к целочисленным границам.
Возвращаемое значение
YEStrueесли успешный; иначеNOfalse.Обсуждение
Содержание буфера только для чтения. Вы не должны пытаться изменить его.
Оператор импорта
Objective C
@import Quartz;Swift
import QuartzДоступность
Доступный в OS X v10.5 и позже.
См. также
-
bindTextureRepresentationToCGLContext (_: textureUnit:normalizeCoordinates:) - bindTextureRepresentationToCGLContext:textureUnit:normalizeCoordinates:ТребуемыйСвязывает текстуру с данным модулем текстуры и дополнительно масштабирует или зеркально отражает текстуру. (требуемый)
Объявление
Swift
func bindTextureRepresentationToCGLContext(_cgl_ctx: CGLContextObj, textureUnitunit: GLenum, normalizeCoordinatesflag: Bool)Objective C
- (void)bindTextureRepresentationToCGLContext:(CGLContextObj)cgl_ctxtextureUnit:(GLenum)unitnormalizeCoordinates:(BOOL)flagПараметры
cgl_ctxКонтекст CGL для рендеринга к.)
unitМодуль текстуры для привязки с (такой как,
GL_TEXTURE0)flagПрименять матрицу текстуры для масштабирования координат (от
[0, pixels]к[0,1]) и зеркально отразите их вертикально (если необходимый), передатьYEStrue.Обсуждение
Когда Вам больше не будет нужна текстура, вызвать
unbindTextureRepresentationFromCGLContext:textureUnit:.Оператор импорта
Objective C
@import Quartz;Swift
import QuartzДоступность
Доступный в OS X v10.5 и позже.
-
unbindTextureRepresentationFromCGLContext (_: textureUnit:) - unbindTextureRepresentationFromCGLContext:textureUnit:ТребуемыйРазвязывает текстуру от модуля текстуры. (требуемый)
Объявление
Swift
func unbindTextureRepresentationFromCGLContext(_cgl_ctx: CGLContextObj, textureUnitunit: GLenum)Objective C
- (void)unbindTextureRepresentationFromCGLContext:(CGLContextObj)cgl_ctxtextureUnit:(GLenum)unitПараметры
cgl_ctxКонтекст CGL.)
unitМодуль текстуры для развязывания от (такой как,
GL_TEXTURE0)Оператор импорта
Objective C
@import Quartz;Swift
import QuartzДоступность
Доступный в OS X v10.5 и позже.
-
Выпускает представление буфера памяти источника изображения. (требуемый)
Объявление
Swift
func unlockBufferRepresentation()Objective C
- (void)unlockBufferRepresentationОператор импорта
Objective C
@import Quartz;Swift
import QuartzДоступность
Доступный в OS X v10.5 и позже.
-
imageColorSpace () - imageColorSpaceТребуемыйВозвращает цветовое пространство источника изображения. (требуемый)
Объявление
Swift
func imageColorSpace() -> Unmanaged<CGColorSpace>!Objective C
- (CGColorSpaceRef)imageColorSpaceВозвращаемое значение
Цветовое пространство источника изображения, обычно RGB или тип Грэя.
Оператор импорта
Objective C
@import Quartz;Swift
import QuartzДоступность
Доступный в OS X v10.5 и позже.
-
shouldColorMatch () - shouldColorMatchТребуемыйВозвраты, должен ли источник изображения быть соответствующим цветом. (требуемый)
Объявление
Swift
func shouldColorMatch() -> BoolObjective C
- (BOOL)shouldColorMatchВозвращаемое значение
NOfalseесли источник является маской или градиентом;YEStrueиначе.Оператор импорта
Objective C
@import Quartz;Swift
import QuartzДоступность
Доступный в OS X v10.5 и позже.
-
texturePixelsWide () - texturePixelsWideТребуемыйВозвращает ширину представления текстуры. (требуемый)
Возвращаемое значение
Ширина текстуры, выраженной в пикселях.
Оператор импорта
Objective C
@import Quartz;Swift
import QuartzДоступность
Доступный в OS X v10.5 и позже.
См. также
-
texturePixelsHigh () - texturePixelsHighТребуемыйВозвращает высоту представления текстуры. (требуемый)
Возвращаемое значение
Высота текстуры, выраженной в пикселях.
Оператор импорта
Objective C
@import Quartz;Swift
import QuartzДоступность
Доступный в OS X v10.5 и позже.
См. также
-
textureTarget () - textureTargetТребуемыйВозвращает цель текстуры. (требуемый)
Объявление
Swift
func textureTarget() -> GLenumObjective C
- (GLenum)textureTargetВозвращаемое значение
Цель текстуры, также
GL_TEXTURE_2DилиGL_TEXTURE_RECTANGLE_EXT.Оператор импорта
Objective C
@import Quartz;Swift
import QuartzДоступность
Доступный в OS X v10.5 и позже.
-
textureName () - textureNameТребуемыйВозвращает имя текстуры. (требуемый)
Объявление
Swift
func textureName() -> GLuintObjective C
- (GLuint)textureNameВозвращаемое значение
Имя текстуры.
Оператор импорта
Objective C
@import Quartz;Swift
import QuartzДоступность
Доступный в OS X v10.5 и позже.
-
textureColorSpace () - textureColorSpaceТребуемыйВозвращает цветовое пространство представления текстуры. (требуемый)
Объявление
Swift
func textureColorSpace() -> Unmanaged<CGColorSpace>!Objective C
- (CGColorSpaceRef)textureColorSpaceВозвращаемое значение
Цветовое пространство текстуры.
Оператор импорта
Objective C
@import Quartz;Swift
import QuartzДоступность
Доступный в OS X v10.5 и позже.
-
textureFlipped () - textureFlippedТребуемыйВозвраты, зеркально отражается ли содержание текстуры вертикально. (требуемый)
Объявление
Swift
func textureFlipped() -> BoolObjective C
- (BOOL)textureFlippedВозвращаемое значение
YEStrueесли содержание текстуры зеркально отражается (перевернутым);NOfalseиначе.Оператор импорта
Objective C
@import Quartz;Swift
import QuartzДоступность
Доступный в OS X v10.5 и позже.
-
textureMatrix () - textureMatrixТребуемыйВозвращает матрицу текстуры. (требуемый)
Объявление
Swift
func textureMatrix() -> UnsafePointer<GLfloat>Objective C
- (const GLfloat *)textureMatrixВозвращаемое значение
4x4 текстурируют матрицу, создаваемую путем масштабирования (от [
0, пиксели] к [0,1]) и вертикально зеркальное отражение координат текстуры;NULLесли не требуется координатная трансформация.Обсуждение
Этот метод предоставлен как удобство для 2D текстур, чтобы заботиться о двух проблемах:
Координаты для прямоугольных текстур выражены в пикселях, а не нормированных единицах, используемых для текстур power-two. Координаты должны быть нормализованы, прежде чем можно будет обработать текстуру.
Координаты текстуры обычно зеркально отражаются OpenGL для обработки на GPU и должны быть зеркально отражены к исходным координатам.
Можно заботиться об этих двух проблемах просто путем загрузки матрицы, возвращенной этим методом на штабель OpenGL. Если Вы не уверены, что Вашей текстуре нужна любая из этих операций, можно загрузить матрицу на штабеле OpenGL так или иначе, поскольку это действует как единичная матрица, если это не необходимо.
Оператор импорта
Objective C
@import Quartz;Swift
import QuartzДоступность
Доступный в OS X v10.5 и позже.
-
imageBounds () - imageBoundsТребуемыйВозвращает фактические границы источника изображения, выраженного в пикселях и выровненного к целочисленным границам. (требуемый)
Возвращаемое значение
Границы источника изображения.
Оператор импорта
Objective C
@import Quartz;Swift
import QuartzДоступность
Доступный в OS X v10.5 и позже.
-
bufferPixelsWide () - bufferPixelsWideТребуемыйВозвращает ширину буферного представления изображения. (требуемый)
Возвращаемое значение
Ширина, выраженная в пикселях.
Оператор импорта
Objective C
@import Quartz;Swift
import QuartzДоступность
Доступный в OS X v10.5 и позже.
См. также
-
bufferPixelsHigh () - bufferPixelsHighТребуемыйВозвращает высоту буферного представления изображения. (требуемый)
Возвращаемое значение
Высота, выраженная в пикселях.
Оператор импорта
Objective C
@import Quartz;Swift
import QuartzДоступность
Доступный в OS X v10.5 и позже.
См. также
-
bufferPixelFormat () - bufferPixelFormatТребуемыйВозвращает формат пикселя буферного представления изображения. (требуемый)
Возвращаемое значение
Строка, указывающая формат пикселя. Поддерживаемые форматы являются ARGB8 (8-разрядная альфа, красная, зеленая, синяя), BGRA8 (8-разрядный синий, зеленый, красный цвет, и альфа), RGBAf (с плавающей точкой, красный, зеленый, синий, альфа), I8 (8-разрядная интенсивность), и Если (интенсивность с плавающей точкой).
Оператор импорта
Objective C
@import Quartz;Swift
import QuartzДоступность
Доступный в OS X v10.5 и позже.
-
bufferColorSpace () - bufferColorSpaceТребуемыйВозвращает цветовое пространство буферного представления изображения. (требуемый)
Объявление
Swift
func bufferColorSpace() -> Unmanaged<CGColorSpace>!Objective C
- (CGColorSpaceRef)bufferColorSpaceВозвращаемое значение
Цветовое пространство буфера изображения.
Оператор импорта
Objective C
@import Quartz;Swift
import QuartzДоступность
Доступный в OS X v10.5 и позже.
-
bufferBaseAddress () - bufferBaseAddressТребуемыйВозвращает базовый адрес буфера изображения. (требуемый)
Объявление
Swift
func bufferBaseAddress() -> UnsafePointer<Void>Objective C
- (const void *)bufferBaseAddressВозвращаемое значение
Базовый адрес буфера.
Обсуждение
Базовый адрес, как гарантируют, будет выровненный на 16-байтовой границе.
Оператор импорта
Objective C
@import Quartz;Swift
import QuartzДоступность
Доступный в OS X v10.5 и позже.
-
bufferBytesPerRow () - bufferBytesPerRowТребуемыйВозвращает байты на строку буферного представления. (требуемый)
Возвращаемое значение
Число байтов на строку буфера.
Обсуждение
Число байтов на строку, как гарантируют, будет кратным числом 16.
Оператор импорта
Objective C
@import Quartz;Swift
import QuartzДоступность
Доступный в OS X v10.5 и позже.
