Notation used in Ruby API documentation
Module: lay
Description: A simplistic pixel buffer representing an image of ARGB32 or RGB32 values
This object is mainly provided for offline rendering of layouts in Qt-less environments. It supports a rectangular pixel space with color values encoded in 32bit integers. It supports transparency through an optional alpha channel. The color format for a pixel is "0xAARRGGBB" where 'AA' is the alpha value which is ignored in non-transparent mode.
This class supports basic operations such as initialization, single-pixel access and I/O to PNG.
This class has been introduced in version 0.28.
new PixelBuffer ptr | new | (unsigned int width, unsigned int height) | Creates a pixel buffer object |
[const] | bool | != | (const PixelBuffer other) | Returns a value indicating whether self is not identical to the other image |
[const] | bool | == | (const PixelBuffer other) | Returns a value indicating whether self is identical to the other image |
[const] | PixelBuffer ptr | _const_cast | Returns a non-const reference to self. | |
void | _create | Ensures the C++ object is created | ||
void | _destroy | Explicitly destroys the object | ||
[const] | bool | _destroyed? | Returns a value indicating whether the object was already destroyed | |
[const] | bool | _is_const_object? | Returns a value indicating whether the reference is a const reference | |
void | _manage | Marks the object as managed by the script side. | ||
void | _unmanage | Marks the object as no longer owned by the script side. | ||
void | assign | (const PixelBuffer other) | Assigns another object to self | |
[const] | PixelBuffer | diff | (const PixelBuffer other) | Creates a difference image |
[const] | new PixelBuffer ptr | dup | Creates a copy of self | |
void | fill | (unsigned int color) | Fills the pixel buffer with the given pixel value | |
void | fill | (QColor color) | Fills the pixel buffer with the given QColor | |
[const] | unsigned int | height | Gets the height of the pixel buffer in pixels | |
void | patch | (const PixelBuffer other) | Patches another pixel buffer into this one | |
[const] | unsigned int | pixel | (unsigned int x, unsigned int y) | Gets the value of the pixel at position x, y |
void | set_pixel | (unsigned int x, unsigned int y, unsigned int c) | Sets the value of the pixel at position x, y | |
void | swap | (PixelBuffer other) | Swaps data with another PixelBuffer object | |
[const] | bytes | to_png_data | Converts the pixel buffer to a PNG byte stream | |
[const] | QImage | to_qimage | Converts the pixel buffer to a QImage object | |
[const] | bool | transparent | Gets a flag indicating whether the pixel buffer supports an alpha channel | |
void | transparent= | (bool t) | Sets a flag indicating whether the pixel buffer supports an alpha channel | |
[const] | unsigned int | width | Gets the width of the pixel buffer in pixels | |
[const] | void | write_png | (string file) | Writes the pixel buffer to a PNG file |
PixelBuffer | from_png_data | (bytes data) | Reads the pixel buffer from a PNG byte stream | |
PixelBuffer | from_qimage | (const QImage qimage) | Creates a pixel buffer object from a QImage object | |
PixelBuffer | read_png | (string file) | Reads the pixel buffer from a PNG file |
void | create | Use of this method is deprecated. Use _create instead | ||
void | destroy | Use of this method is deprecated. Use _destroy instead | ||
[const] | bool | destroyed? | Use of this method is deprecated. Use _destroyed? instead | |
[const] | bool | is_const_object? | Use of this method is deprecated. Use _is_const_object? instead |
!= | Signature: [const] bool != (const PixelBuffer other) Description: Returns a value indicating whether self is not identical to the other image | ||||
== | Signature: [const] bool == (const PixelBuffer other) Description: Returns a value indicating whether self is identical to the other image | ||||
_const_cast | Signature: [const] PixelBuffer ptr _const_cast Description: Returns a non-const reference to self. Basically, this method allows turning a const object reference to a non-const one. This method is provided as last resort to remove the constness from an object. Usually there is a good reason for a const object reference, so using this method may have undesired side effects. This method has been introduced in version 0.29.6. | ||||
_create | Signature: void _create Description: Ensures the C++ object is created Use this method to ensure the C++ object is created, for example to ensure that resources are allocated. Usually C++ objects are created on demand and not necessarily when the script object is created. | ||||
_destroy | Signature: void _destroy Description: Explicitly destroys the object Explicitly destroys the object on C++ side if it was owned by the script interpreter. Subsequent access to this object will throw an exception. If the object is not owned by the script, this method will do nothing. | ||||
_destroyed? | Signature: [const] bool _destroyed? Description: Returns a value indicating whether the object was already destroyed This method returns true, if the object was destroyed, either explicitly or by the C++ side. The latter may happen, if the object is owned by a C++ object which got destroyed itself. | ||||
_is_const_object? | Signature: [const] bool _is_const_object? Description: Returns a value indicating whether the reference is a const reference This method returns true, if self is a const reference. In that case, only const methods may be called on self. | ||||
_manage | Signature: void _manage Description: Marks the object as managed by the script side. After calling this method on an object, the script side will be responsible for the management of the object. This method may be called if an object is returned from a C++ function and the object is known not to be owned by any C++ instance. If necessary, the script side may delete the object if the script's reference is no longer required. Usually it's not required to call this method. It has been introduced in version 0.24. | ||||
_unmanage | Signature: void _unmanage Description: Marks the object as no longer owned by the script side. Calling this method will make this object no longer owned by the script's memory management. Instead, the object must be managed in some other way. Usually this method may be called if it is known that some C++ object holds and manages this object. Technically speaking, this method will turn the script's reference into a weak reference. After the script engine decides to delete the reference, the object itself will still exist. If the object is not managed otherwise, memory leaks will occur. Usually it's not required to call this method. It has been introduced in version 0.24. | ||||
assign | Signature: void assign (const PixelBuffer other) Description: Assigns another object to self | ||||
create | Signature: void create Description: Ensures the C++ object is created Use of this method is deprecated. Use _create instead Use this method to ensure the C++ object is created, for example to ensure that resources are allocated. Usually C++ objects are created on demand and not necessarily when the script object is created. | ||||
destroy | Signature: void destroy Description: Explicitly destroys the object Use of this method is deprecated. Use _destroy instead Explicitly destroys the object on C++ side if it was owned by the script interpreter. Subsequent access to this object will throw an exception. If the object is not owned by the script, this method will do nothing. | ||||
destroyed? | Signature: [const] bool destroyed? Description: Returns a value indicating whether the object was already destroyed Use of this method is deprecated. Use _destroyed? instead This method returns true, if the object was destroyed, either explicitly or by the C++ side. The latter may happen, if the object is owned by a C++ object which got destroyed itself. | ||||
diff | Signature: [const] PixelBuffer diff (const PixelBuffer other) Description: Creates a difference image This method is provided to support transfer of image differences - i.e. small updates instead of full images. It works for non-transparent images only and generates an image with transpareny enabled and with the new pixel values for pixels that have changed. The alpha value will be 0 for identical images and 255 for pixels with different values. This way, the difference image can be painted over the original image to generate the new image. | ||||
dup | Signature: [const] new PixelBuffer ptr dup Description: Creates a copy of self Python specific notes: | ||||
fill | (1) Signature: void fill (unsigned int color) Description: Fills the pixel buffer with the given pixel value | ||||
(2) Signature: void fill (QColor color) Description: Fills the pixel buffer with the given QColor | |||||
from_png_data | Signature: [static] PixelBuffer from_png_data (bytes data) Description: Reads the pixel buffer from a PNG byte stream This method may not be available if PNG support is not compiled into KLayout. | ||||
from_qimage | Signature: [static] PixelBuffer from_qimage (const QImage qimage) Description: Creates a pixel buffer object from a QImage object | ||||
height | Signature: [const] unsigned int height Description: Gets the height of the pixel buffer in pixels | ||||
is_const_object? | Signature: [const] bool is_const_object? Description: Returns a value indicating whether the reference is a const reference Use of this method is deprecated. Use _is_const_object? instead This method returns true, if self is a const reference. In that case, only const methods may be called on self. | ||||
new | Signature: [static] new PixelBuffer ptr new (unsigned int width, unsigned int height) Description: Creates a pixel buffer object
The pixels are basically uninitialized. You will need to use fill to initialize them to a certain value. Python specific notes: | ||||
patch | Signature: void patch (const PixelBuffer other) Description: Patches another pixel buffer into this one This method is the inverse of diff - it will patch the difference image created by diff into this pixel buffer. Note that this method will not do true alpha blending and requires the other pixel buffer to have the same format than self. Self will be modified by this operation. | ||||
pixel | Signature: [const] unsigned int pixel (unsigned int x, unsigned int y) Description: Gets the value of the pixel at position x, y | ||||
read_png | Signature: [static] PixelBuffer read_png (string file) Description: Reads the pixel buffer from a PNG file This method may not be available if PNG support is not compiled into KLayout. | ||||
set_pixel | Signature: void set_pixel (unsigned int x, unsigned int y, unsigned int c) Description: Sets the value of the pixel at position x, y | ||||
swap | Signature: void swap (PixelBuffer other) Description: Swaps data with another PixelBuffer object | ||||
to_png_data | Signature: [const] bytes to_png_data Description: Converts the pixel buffer to a PNG byte stream This method may not be available if PNG support is not compiled into KLayout. | ||||
to_qimage | Signature: [const] QImage to_qimage Description: Converts the pixel buffer to a QImage object | ||||
transparent | Signature: [const] bool transparent Description: Gets a flag indicating whether the pixel buffer supports an alpha channel Python specific notes: | ||||
transparent= | Signature: void transparent= (bool t) Description: Sets a flag indicating whether the pixel buffer supports an alpha channel By default, the pixel buffer does not support an alpha channel. Python specific notes: | ||||
width | Signature: [const] unsigned int width Description: Gets the width of the pixel buffer in pixels | ||||
write_png | Signature: [const] void write_png (string file) Description: Writes the pixel buffer to a PNG file This method may not be available if PNG support is not compiled into KLayout. |