Platforms to show: All Mac Windows Linux Cross-Platform
CGLayerMBS class
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
class | CoreGraphics | MBS MacCG Plugin | 12.2 | ✅ Yes | ❌ No | ❌ No | ✅ Yes | All |
CGLayer objects are useful for offscreen drawing and can be used in much the same way that a bitmap context can be used. In fact, a CGLayer object is a much better representation than a bitmap context.
Using CGLayer objects can improve performance, particularly when you need to capture a piece of drawing that you stamp repeatedly (using the same scale factor and orientation). Quartz can cache CGLayer objects to the video card, making drawing a CGLayer to a destination much faster than rendering the equivalent image constructed from a bitmap context.
A CGLayer object is created relative to a graphics context. Although layer uses this graphics context as a reference for initialization, you are not restricted to drawing the layer to this graphics context. You can draw the layer to other graphics contexts, although any limitations of the original context are imposed. For example, if you create a CGLayer object using a bitmap context, the layer is rendered as a bitmap when drawn to any other graphics context.
You can use a CGLayer when you want to apply a shadow to a group of objects (such as a group of circles) rather than to individual objects.
Use these layers in your code whenever you can, especially when:
- You need to reuse a filled or stroked shape.
- You are building a scene and at least some of it can be reused. Put the reusable drawing in its own CGLayer.
see also
https://developer.apple.com/library/mac/#documentation/graphicsimaging/conceptual/drawingwithquartz2d/dq_layers/dq_layers.html
- property Handle as Integer
- 4 methods
- method Constructor(context as CGContextMBS, size as CGSizeMBS, auxiliaryInfo as dictionary = nil)
- method Constructor(context as CGContextMBS, width as Double, height as Double, auxiliaryInfo as dictionary = nil)
- method Context as CGContextMBS
- method Size as CGSizeMBS
This class has no sub classes.
Some methods using this class:
- CGContextMBS.DrawLayerAtPoint(Point as CGPointMBS, layer as CGLayerMBS)
- CGContextMBS.DrawLayerInRect(rect as CGRectMBS, layer as CGLayerMBS)
- CIContextMBS.createCGLayer(size as CGSizeMBS, info as dictionary = nil) as CGLayerMBS
- CIImageMBS.Constructor(CGLayer as CGLayerMBS, options as Dictionary = nil)
Blog Entries
The items on this page are in the following plugins: MBS MacCG Plugin.
CGImageSourceMBS - CGMutableImageMetadataMBS